Install
openclaw skills install @arn0ld87/dify-workflowUse when creating, editing, debugging, or validating Dify workflow DSL for self-hosted Dify. Start from an exported workflow of the target instance, edit minimally, and verify by re-importing.
openclaw skills install @arn0ld87/dify-workflowEin 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.
Use when:
Nutze diesen Skill fuer:
Nutze dify fuer:
Dieser Skill soll langfristig ein echter self-hosted-Dify-Workflow-Experte fuer diese Bereiche werden:
Bleibe in dify-workflow, wenn der User eines davon liefert oder verlangt:
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.
Wenn kein Export vorliegt:
{{#NODE_ID.VARIABLE_NAME#}}
Wrong examples:
{{NODE_ID.VARIABLE_NAME}}{{#NODE_ID.VARIABLE_NAME}}{{{#NODE_ID.VARIABLE_NAME#}}}Wenn ein Code-Node {"result": ...} oder andere Felder zurueckgibt, muessen diese Felder im outputs-Schema deklariert sein.
Nach jeder relevanten Aenderung:
references/: DSL-Struktur, Node-Typen, Edge-Regeln und haeufige Fehlertemplates/: kompakte Ausgangspunkte fuer neue Workflowsassets/: umfassendere Beispiel-Workflows fuer wiederkehrende Musterscripts/: lokale Hilfsmittel fuer IDs und Validierungreferences/workflow_structure.md: Gesamtstruktur der DSLreferences/node_types.md: Node-Typen und Einsatzzweckereferences/edge_types.md: Handles, Kanten und Routingreferences/node_positioning.md: Layout- und Positionierungsregelnreferences/variable-syntax.md: Variablen-Syntax und typische Fehlerreferences/common-gotchas.md: Import-/Node-/Schema-Fallenreferences/node-templates.md: YAML-Patterns fuer wichtige Nodesreferences/current_patterns.md: aktuelle Chatflow/Workflow-, Trigger- und Fehlerpfad-Musterreferences/advanced_patterns.md: Human Input, Loop, Iteration und Agent in produktionsnahen Musternreferences/retrieval_patterns.md: Knowledge Retrieval, Aggregator, Question Classifier und Document Extractor als Workflow-MusterDas uebergeordnete Themen- und Quellen-Backlog liegt unter ../../../research/.
templates/minimal-workflow.yaml: Minimaler Startpunkttemplates/llm-chain-workflow.yaml: Lineare LLM-Chaintemplates/http-llm-workflow.yaml: HTTP + LLM Flowassets/simple_llm_workflow.yml: Beispiel fuer einfachen Flowassets/conditional_workflow.yml: Beispiel fuer IF/ELSE-Routingassets/error_handling_workflow.yml: Beispiel fuer Fehlerbehandlungscripts/generate_id.py: Erzeugt eindeutige Node-IDsscripts/validate_workflow.py: Prueft YAML-Struktur und GrundintegritaetBeispiele:
# Node-IDs erzeugen
python3 scripts/generate_id.py 5
# Workflow lokal validieren
python3 scripts/validate_workflow.py /absolute/path/to/workflow.yaml
sourceHandle und targetHandle zum Node-Typ?outputs ueberein?Wenn ein Re-Import scheitert, in dieser Reihenfolge pruefen:
validate_workflow.py zuerst laufen lassen.sourceHandle und targetHandle gegen den betroffenen Node-Typ pruefen.outputs von Code-Nodes gegen ihre Rueckgabefelder pruefen.Wenn ein User eine Workflow-Aenderung will:
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.
https://docs.dify.ai/https://github.com/langgenius/difyhttps://github.com/langgenius/dify/releases