跳到主要内容

🤖 多代理编排

多代理编排是 YingClaw 的核心特性之一:将复杂任务自动分拆为子任务,由多个子代理并行协作执行,大幅提升效率和吞吐量。

核心理念

单一复杂任务

智能分拆(assess_workload)

┌────┼────┬────┐
子代理A 子代理B 子代理C
(并行执行,独立上下文)
└────┼────┴────┘

结果聚合

强制工作流四阶段

YingClaw 的每个复杂任务都会经历四个阶段:

阶段工具产出
1️⃣ 需求澄清对话交互明确的任务描述和约束
2️⃣ 项目评估assess_workload文件数、大小、复杂度分析
3️⃣ 规划确认todo分步执行计划,每步独立 ID
4️⃣ 并行执行delegate多个子代理并行执行子任务

子代理类型

类型角色适用场景
assistant通用助手代码审查、文档生成、数据分析
sales_managerCRM 管理客户关系管理、销售流程
sales_lead_only线索专员潜在客户发现与跟进

核心工具

delegate — 委派执行

将子任务委派给一个或多个子代理并行执行。

// 并行委派多个子代理
delegate({
prompt: "审查 src/auth/ 目录下的认证模块代码",
agents: [
{ role: "代码审查员", task: "检查安全漏洞" },
{ role: "性能分析师", task: "分析性能瓶颈" },
{ role: "文档检查员", task: "验证文档完整性" }
]
})

todo — 任务跟踪

自动管理任务状态流转。

pending → in_progress → completed
→ cancelled
// 创建任务计划
todo({
todos: [
{ id: "step-1", content: "扫描项目结构", status: "pending" },
{ id: "step-2", content: "分析依赖关系", status: "pending" },
{ id: "step-3", content: "生成优化建议", status: "pending" }
]
})

完整代码示例

以下示例展示 delegate + todo 配合使用的完整流程:

// 场景:对项目进行全面代码审查

// 阶段 2:评估项目
assess_workload({ path: "src/" })
// → { files: 45, total_size_kb: 320, complexity: "medium" }

// 阶段 3:创建计划
todo({
merge: false,
todos: [
{ id: "s1", content: "安全审查:认证与授权模块", status: "pending" },
{ id: "s2", content: "性能分析:数据库查询与缓存", status: "pending" },
{ id: "s3", content: "代码风格:命名规范与结构", status: "pending" },
{ id: "s4", content: "测试覆盖:单元测试完整性", status: "pending" }
]
})

// 阶段 4:并行执行
delegate({
prompt: "对 src/ 目录进行全面代码审查",
agents: [
{ role: "安全专家", task: "审查认证、授权、输入验证" },
{ role: "性能工程师", task: "分析数据库查询、N+1问题、缓存策略" },
{ role: "代码规范审查员", task: "检查命名、结构、注释规范" },
{ role: "测试工程师", task: "检查测试覆盖率、边界条件" }
]
})

// 执行过程中自动更新 todo 状态:
// s1: pending → in_progress → completed
// s2: pending → in_progress → completed
// s3: pending → in_progress → completed
// s4: pending → in_progress → completed

关键参数

参数类型说明
promptstring主任务描述
agentsarray子代理列表,每项含 roletask
rolestring自定义子代理角色
max_iterationsnumber子代理最大工具调用迭代次数
max_depthnumber代理递归委派最大深度

最佳实践

实践说明
🎯 子任务小而聚焦每个子代理只负责一个明确的小任务
🔀 并行化独立步骤无依赖的子任务同时执行,最大化效率
📊 及时更新状态子任务完成后立即标记,保持全局视图清晰
🛑 设置迭代上限通过 max_iterations 防止子代理无限循环
💰 控制成本并行代理数建议不超过 5 个,平衡效率与 API 成本

下一步

多代理编排让复杂任务化整为零。深入了解 🔄 工作流引擎 的任务生命周期和错误处理机制。