--- title: Pipeline DSL updated: 2026-04-11 status: active tags: [module, pipeline, dsl] --- # Pipeline DSL > 从 [[index]] 导航。关联模块: [[hands-skills]] ## 设计思想 **Pipeline = 可编排的工作流,按 DAG 依赖顺序执行步骤。** - YAML 定义 Pipeline 结构(步骤、依赖、输入/输出) - DAG 执行器按依赖拓扑排序执行 - 17 个行业模板覆盖 10 大行业 - 前端已接通 8 个 Tauri invoke 调用 ## 代码逻辑 ### 架构 ``` YAML Pipeline 定义 → PipelineExecutor (crates/zclaw-pipeline/src/executor.rs) → 构建 DAG (按依赖排序) → 逐步执行: → ActionRegistry.resolve(action_type) → 执行 action → PipelineRun.step_results → 全部完成 → PipelineRun.status = Completed ``` ### 运行状态 ```rust enum RunStatus { Pending, Running, Completed, Failed, Cancelled } ``` ### 模板 (17 个 YAML) 位于 `pipelines/` 目录,覆盖: - 汕头玩具行业、服装设计、医疗 - 数据分析、报告生成 - 教育、营销 - 等 10 大行业 ### 前端集成 | 组件 | 文件 | |------|------| | PipelineClient | `desktop/src/lib/pipeline-client.ts` | | Tauri 命令 | `desktop/src-tauri/src/pipeline_commands/` | 8 个前端 invoke 调用匹配 8 个 Rust 命令,完整可用。 ## 关联模块 - [[hands-skills]] — Pipeline 步骤可能调用 Hand/Skill ## 关键文件 | 文件 | 职责 | |------|------| | `crates/zclaw-pipeline/src/executor.rs` | DAG 执行器 | | `crates/zclaw-pipeline/src/` | Pipeline DSL 解析 | | `pipelines/` | 17 个 YAML 模板 | | `desktop/src/lib/pipeline-client.ts` | 前端 Pipeline 客户端 | | `desktop/src-tauri/src/pipeline_commands/` | Tauri 命令桥接 |