Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dify DSL Engineer

dify-dsl-engineer is a Codex skill for engineering Dify workflow and chatflow DSL files. It helps inspect, create, repair, migrate, and validate exported Dify YAML without treating a single release's node schema as universal.

What It Covers

  • Import and runtime failures in Dify DSL files.
  • Workflow graph changes: nodes, edges, branches, loops, iterations, aggregators, HTTP requests, tools, and knowledge retrieval.
  • Dify DSL version compatibility and target-version validation.
  • Provider, model, plugin, credential, environment-variable, and dataset portability checks.
  • Branch-safe variable aggregation and common HTTP node validation.

Design

The target Dify instance is the source of truth. Before editing a workflow, export a small working application from the target workspace and use its DSL version and node shapes as the baseline. The bundled local validator catches common structural mistakes, while the optional runtime validator uses the target Dify API container's real node schemas.

Requirements

  • Python 3.10 or later.
  • PyYAML and Pydantic v2 for local validation.
  • Docker plus Dify source access for runtime-schema validation.

Quick Start

Validate a DSL file locally:

python .\scripts\validate_dify_dsl.py .\workflow.yml

Validate nodes in the target Dify API container:

docker compose cp .\workflow.yml api:/tmp/workflow.yml
docker compose cp .\scripts\dify_runtime_validate_inner.py api:/tmp/dify_runtime_validate_inner.py
docker compose exec api python /tmp/dify_runtime_validate_inner.py /tmp/workflow.yml

Important Limits

The local validator is a preflight check, not a full Dify importer or executor. A portable DSL still needs matching plugins, configured model credentials, environment variables, and destination workspace resources. Import the result into the target Dify workspace and test every changed path.

Validation

python .\tests\check_skill.py

See the Chinese README for the same documentation in Chinese.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages