← Back to Skills Marketplace
arn0ld87

Dify Workflow DSL Expert

by Alexander Schneider · GitHub ↗ · v1.3.0 · MIT-0
cross-platform ⚠ suspicious
135
Downloads
0
Stars
1
Active Installs
1
Versions
Install in OpenClaw
/install dify-workflow
Description
Use when creating, editing, debugging, or validating Dify workflow DSL for self-hosted Dify. Start from an exported workflow of the target instance, edit min...
README (SKILL.md)

Dify Workflow DSL (Self-Hosted)

Ein konsolidierter Skill fuer Dify-Workflow-DSL: Authoring, Editing, Debugging, Referenzen, Templates und lokale Validierung in einem Paket.

Arbeitsbereich: Workflow-DSL, Import-/Export-nahe Aenderungen und YAML-Validierung Nicht zustaendig: App-, Prompt-, Dataset- oder Knowledge-Base-Orchestrierung. Dafuer den Skill ../dify/SKILL.md verwenden.

Trigger Conditions

Use when:

  • Creating a new Dify workflow
  • Editing or debugging an existing workflow DSL file
  • Adding or removing nodes, edges, or branches
  • Migrating workflows between Dify instances
  • Validating import errors or suspicious DSL behavior

Scope Boundaries

Nutze diesen Skill fuer:

  • Workflow-DSL schreiben oder editieren
  • Node-/Edge-Strukturen aendern
  • Import-/Export-basierte Workflow-Migration
  • YAML-Validierung fuer Workflow-Dateien
  • Fehlersuche bei Import- oder Schema-Problemen

Nutze dify fuer:

  • App-Orchestrierung
  • Prompt- und Dataset-Operationen
  • Knowledge-Base-Management
  • Management-API und Console-API Ablaufe
  • Betriebsnahe Health-Checks

Expert Domains

Dieser Skill soll langfristig ein echter self-hosted-Dify-Workflow-Experte fuer diese Bereiche werden:

  • Node-Typen, Handles und Variablen-Syntax
  • Import-, Re-Import- und Schema-Fallen
  • Minimaledits auf Basis realer Exporte
  • versions- und plugin-sensitive Workflow-Aussagen
  • sichere Draft-/Backup-/Rollback-Pfade vor riskanten Ueberschreibungen

Rapid Triage

Bleibe in dify-workflow, wenn der User eines davon liefert oder verlangt:

  • exportierte Workflow-DSL
  • neue oder geaenderte Nodes, Edges oder Branches
  • Importfehler oder Schemafehler
  • Variablen-Syntax, Handles, Outputs oder Node-Abhaengigkeiten
  • konkrete Minimaledits fuer Re-Import oder erfolgreichen Re-Import auf derselben Zielinstanz

Bleibe nicht hier, wenn das Problem per App-, Prompt- oder Dataset-Operation loesbar ist. Dann an dify zurueckgeben.

App-, Prompt- oder Dataset-Aufgaben sind in der Regel Management-Operationen und gehoeren deshalb zu dify, nicht zu dify-workflow.

Operating Principles

  1. Export first: Ein Export der Zielinstanz ist immer die Quelle der Wahrheit.
  2. Minimal edits: Nur gezielte Aenderungen, keine Voll-Neuschreibung ohne Not.
  3. Version aware: Versions- und Plugin-Unterschiede explizit pruefen.
  4. Secrets stay out of content: Keine API-Keys in YAML, Prompts oder Beispielen.
  5. Validate before import: Lokal pruefen, dann auf derselben Zielinstanz importieren.

Recommended Workflow

  1. Exportiere einen bekannten, funktionierenden Workflow aus der Zielinstanz.
  2. Leite Struktur, Version und Feldnamen aus diesem Export ab.
  3. Nutze Templates und Referenzen aus diesem Skill nur als Hilfestellung, nicht als starre Wahrheit.
  4. Bearbeite die DSL minimal statt sie komplett neu zu erfinden.
  5. Validiere lokal und pruefe danach den Import in derselben Zielinstanz.

Wenn kein Export vorliegt:

  1. klar sagen: kein Export vorhanden,
  2. nicht so tun, als sei ein Template schon produktionsreif,
  3. die Antwort explizit als unverified draft markieren,
  4. klar sagen, dass der Workflow ohne Export nicht direkt importierbar ist,
  5. vor jeder riskanten Ueberschreibung einen bestehenden Export oder ein anderes belastbares Backup fuer Rollback verlangen,
  6. auf Export der Zielinstanz bestehen, sobald echte Importfaehigkeit gefordert ist.

Critical Rules

Rule 1: Export First

  • Always export a workflow from the target instance first.
  • Never assume DSL version, node schema, dependency format, or feature flags.
  • Keep edits minimal and aligned to the exported shape.

Rule 2: Variable Syntax Must Be Exact

{{#NODE_ID.VARIABLE_NAME#}}

Wrong examples:

  • {{NODE_ID.VARIABLE_NAME}}
  • {{#NODE_ID.VARIABLE_NAME}}
  • {{{#NODE_ID.VARIABLE_NAME#}}}

Rule 3: Code Node Outputs Must Match

Wenn ein Code-Node {"result": ...} oder andere Felder zurueckgibt, muessen diese Felder im outputs-Schema deklariert sein.

Rule 4: Secrets Stay Outside the DSL

  • Never embed API keys in node code, prompts, or exported YAML.
  • Nutze Dify-Environment-Variablen oder die Server-/Instanzkonfiguration.

Rule 5: Validate Changed Paths, Not Just Theory

Nach jeder relevanten Aenderung:

  1. lokale YAML-Pruefung ausfuehren,
  2. betroffene Outputs und Variablen-Verweise gegen die geaenderte Struktur lesen,
  3. Re-Import in derselben Zielinstanz empfehlen oder durchfuehren, wenn moeglich.

Package Contents

  • references/: DSL-Struktur, Node-Typen, Edge-Regeln und haeufige Fehler
  • templates/: kompakte Ausgangspunkte fuer neue Workflows
  • assets/: umfassendere Beispiel-Workflows fuer wiederkehrende Muster
  • scripts/: lokale Hilfsmittel fuer IDs und Validierung

Available References

Das uebergeordnete Themen- und Quellen-Backlog liegt unter ../../../research/.

Templates And Assets

Local Scripts

Beispiele:

# Node-IDs erzeugen
python3 scripts/generate_id.py 5

# Workflow lokal validieren
python3 scripts/validate_workflow.py /absolute/path/to/workflow.yaml

Safety Notes

  • Nicht blind auf Templates vertrauen, wenn ein realer Export verfuegbar ist.
  • Provider-, Plugin- und Feldnamen immer gegen die Zielinstanz verifizieren.
  • Bei Importfehlern zuerst Syntax und Abhaengigkeiten pruefen, nicht sofort die gesamte DSL umbauen.
  • Keine Workflow-Aenderungen als bestaetigt betrachten, bevor der Import auf der Zielinstanz erfolgreich war.
  • Ohne Export: unverified draft statt direkt importierbar, bis die Zielinstanz einen passenden Export geliefert hat.

Practical Editing Checklist

  1. Start-/End-Nodes vorhanden?
  2. Sind alle Node-IDs eindeutig?
  3. Referenzieren alle Edges existierende Nodes?
  4. Stimmen sourceHandle und targetHandle zum Node-Typ?
  5. Ist die Variablen-Syntax exakt?
  6. Stimmen Code-Outputs mit outputs ueberein?
  7. Sind Provider-/Plugin-Abhaengigkeiten und Versionen zur Zielinstanz passend?
  8. Wurde der Import in der Zielinstanz getestet?
  9. Ist ohne Export klar markiert, dass es nur ein Draft ist?
  10. Gibt es vor riskanten Ersetzungen einen belastbaren Backup- oder Rollback-Pfad?

Import Error Triage

Wenn ein Re-Import scheitert, in dieser Reihenfolge pruefen:

  1. validate_workflow.py zuerst laufen lassen.
  2. Node-IDs und Edge-Referenzen pruefen.
  3. sourceHandle und targetHandle gegen den betroffenen Node-Typ pruefen.
  4. outputs von Code-Nodes gegen ihre Rueckgabefelder pruefen.
  5. Variable-Syntax und abgeleitete Verweise erneut lesen.
  6. Minimalen Fix statt Full Rewrite vorbereiten.
  7. Erst danach groessere Strukturfehler oder Versionsunterschiede vermuten.

Recommended Response Pattern

Wenn ein User eine Workflow-Aenderung will:

  1. Frage nach Export oder bestehender DSL-Datei.
  2. Klaere Zielinstanz und Dify-Version, falls unklar.
  3. Schlage minimale Aenderungen statt Full Rewrite vor.
  4. Verweise fuer Details gezielt auf Templates, Referenzen oder Validator.
  5. Schliesse mit Re-Import-/Smoke-Check-Schritten auf derselben Zielinstanz ab.

Praktische Rueckgabe an dify, falls die Anfrage falsch gelandet ist:

Das ist wahrscheinlich keine DSL-Aenderung, sondern eine Management-Operation an App, Prompt oder Dataset. Ich wechsle dafuer auf `dify`, damit die Management-Operation ohne unnötige Workflow-Komplexitaet umgesetzt wird.

Useful References

  • Dify Docs: https://docs.dify.ai/
  • GitHub Repository: https://github.com/langgenius/dify
  • Releases: https://github.com/langgenius/dify/releases
Usage Guidance
This package is largely consistent with its stated goal of helping edit and validate Dify workflow DSL. Before using it: 1) Review scripts/validate_workflow.py and scripts/generate_id.py to confirm they only perform static checks and do not execute arbitrary user-provided code, spawn subprocesses, or make network calls. 2) Run any validation scripts in a sandboxed environment (container or VM) when validating untrusted exports. 3) Do not provide production instance credentials to the skill; instead supply exported DSL files as directed. 4) Treat templates and example workflows as drafts — follow the skill's 'export-first' guidance and never blindly import into a live system without backups. If you want, paste the contents of scripts/validate_workflow.py here and I can review them for risky operations (network access, subprocess, exec/eval, file writes, or importing unusual modules).
Capability Analysis
Type: OpenClaw Skill Name: dify-workflow Version: 1.3.0 The bundle is a comprehensive toolkit for managing Dify Workflow DSL, containing documentation, templates, and utility scripts. The Python scripts (generate_id.py and validate_workflow.py) perform standard utility tasks safely, and the SKILL.md instructions explicitly enforce security best practices, such as Rule 4 which forbids embedding secrets in the DSL. No evidence of data exfiltration, malicious execution, or harmful prompt injection was found.
Capability Assessment
Purpose & Capability
Name, description, templates, references, and the two helper scripts (ID generator and validator) match the claimed purpose of authoring and locally validating Dify workflow DSL for self-hosted Dify. There are no unrelated environment variables, binaries, or install steps declared that would contradict the stated scope.
Instruction Scope
SKILL.md stays narrowly focused on workflow DSL editing, minimal edits, local YAML validation, and re-import checks. It explicitly forbids embedding secrets in DSL. However, the instructions and README recommend running scripts/validate_workflow.py and the included scripts are part of the distributed package — you should inspect those scripts because a validator could (intentionally or accidentally) execute code nodes, open files, or make network requests during validation. SKILL.md itself does not instruct reading unrelated system config or environment variables.
Install Mechanism
No install spec — instruction-only with packaged reference files and scripts. That lowers supply-chain risk. The package contents are local files and templates from the skill; nothing is fetched from remote URLs during install.
Credentials
The skill declares no required environment variables, credentials, or config paths. This is proportionate to a DSL authoring/validation tool. Note: some example workflows reference third-party model providers (Anthropic/claude) in templates, but those are examples and do not constitute requested secrets.
Persistence & Privilege
Skill flags show no elevated persistence (always: false). It does not request to modify other skills or system-wide settings. Autonomous invocation is allowed by default, which is normal; this only increases blast radius if the included scripts are dangerous — see instruction_scope note.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install dify-workflow
  3. After installation, invoke the skill by name or use /dify-workflow
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.3.0
Konsolidierter Skill für Dify-Workflow-DSL: Authoring, Editing, Debugging, Referenzen, Templates und lokale Validierung
Metadata
Slug dify-workflow
Version 1.3.0
License MIT-0
All-time Installs 1
Active Installs 1
Total Versions 1
Frequently Asked Questions

What is Dify Workflow DSL Expert?

Use when creating, editing, debugging, or validating Dify workflow DSL for self-hosted Dify. Start from an exported workflow of the target instance, edit min... It is an AI Agent Skill for Claude Code / OpenClaw, with 135 downloads so far.

How do I install Dify Workflow DSL Expert?

Run "/install dify-workflow" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Dify Workflow DSL Expert free?

Yes, Dify Workflow DSL Expert is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Dify Workflow DSL Expert support?

Dify Workflow DSL Expert is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Dify Workflow DSL Expert?

It is built and maintained by Alexander Schneider (@arn0ld87); the current version is v1.3.0.

💬 Comments