← 返回 Skills 市场
arn0ld87

Dify Workflow DSL Expert

作者 Alexander Schneider · GitHub ↗ · v1.3.0 · MIT-0
cross-platform ⚠ suspicious
135
总下载
0
收藏
1
当前安装
1
版本数
在 OpenClaw 中安装
/install dify-workflow
功能描述
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...
使用说明 (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
安全使用建议
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).
功能分析
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.
能力评估
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.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install dify-workflow
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /dify-workflow 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.3.0
Konsolidierter Skill für Dify-Workflow-DSL: Authoring, Editing, Debugging, Referenzen, Templates und lokale Validierung
元数据
Slug dify-workflow
版本 1.3.0
许可证 MIT-0
累计安装 1
当前安装数 1
历史版本数 1
常见问题

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... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 135 次。

如何安装 Dify Workflow DSL Expert?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install dify-workflow」即可一键安装,无需额外配置。

Dify Workflow DSL Expert 是免费的吗?

是的,Dify Workflow DSL Expert 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Dify Workflow DSL Expert 支持哪些平台?

Dify Workflow DSL Expert 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Dify Workflow DSL Expert?

由 Alexander Schneider(@arn0ld87)开发并维护,当前版本 v1.3.0。

💬 留言讨论