🔄 工作流引擎
YingClaw 内置工作流引擎,确保任务执行结构化、可追溯、可恢复,避免复杂任务中途迷失方向。
任务生命周期
每个任务从创建到完成经历明确的四个阶段:
pending ──→ in_progress ──→ completed
│
└──→ cancelled
| 状态 | 含义 | 触发条件 |
|---|---|---|
pending | 等待执行 | 任务刚创建 |
in_progress | 执行中 | 代理开始处理 |
completed | 已完成 | 所有步骤成功执行 |
cancelled | 已取消 | 用户终止或执行失败无法恢复 |
核心工具
todo — 任务列表
创建和管理分步任务计划:
{
"merge": false,
"todos": [
{ "id": "step-1", "content": "分析项目结构", "status": "pending" },
{ "id": "step-2", "content": "识别性能瓶颈", "status": "pending" },
{ "id": "step-3", "content": "执行优化", "status": "pending" },
{ "id": "step-4", "content": "验证结果", "status": "pending" }
]
}
使用 merge: true 增量更新已有任务,无需重新提交全部列表。
delegate — 委派执行
将具体步骤委派给子代理执行:
{
"prompt": "分析 src/ 目录下所有 TypeScript 文件的类型安全问题",
"agents": [
{ "name": "ts-checker", "role": "TypeScript 类型检查专家" }
]
}
assess_workload — 工作量评估
在执行前评估项目规模,防止上下文溢出:
{}
自动扫描项目文件数、总大小、代码复杂度等指标。
四阶段详解
阶段 1:需求澄清
- 确认任务目标、范围和成功标准
- 识别潜在的模糊点和约束条件
- 与用户就预期产出达成一致
阶段 2:项目评估
- 调用
assess_workload扫描项目 - 统计文件数、总大小、复杂度
- 判断是否需要分拆任务,防止上下文溢出
阶段 3:规划确认
- 使用
todo创建分步计划 - 每个步骤有独立 ID 和清晰描述
- 向用户展示计划并等待确认
阶段 4:执行
- 使用
delegate逐步骤委派执行 - 每完成一步自动更新
todo状态 - 支持并行执行无依赖步骤
错误处理
| 情况 | 处理策略 |
|---|---|
| 单步骤失败 | 自动标记为 cancelled,记录错误原因 |
| 部分失败 | 已完成步骤保留,失败步骤可重新规划 |
| 全部失败 | 建议用户缩小范围或调整策略后重试 |
| 用户中断 | 所有进行中任务标记为 cancelled |
并行执行
对于无依赖关系的子任务,传入 agents 数组实现并行:
{
"prompt": "同时检查前端和后端的代码质量",
"agents": [
{ "name": "frontend-checker", "role": "检查 React 组件代码" },
{ "name": "backend-checker", "role": "检查 API 路由代码" }
]
}
两个代理同时执行,结果汇总后返回。
成本控制
| 机制 | 说明 |
|---|---|
| 独立上下文 | 每个子代理有独立上下文窗口,互不干扰 |
| 迭代上限 | max_iterations 限制每个代理的工具调用次数 |
| 自动终止 | 达到上限后自动终止,返回已有结果 |
下一步
了解 YingClaw 的多渠道接入能力:
👉 通道接入 →