🧬 OpenClaw子Agent编排实战指南
📖 功能介绍
子Agent编排是OpenClaw的高级特性,允许你创建一个"Agent舰队"。主Agent负责统筹规划,子Agent负责具体执行——就像一个公司有CEO和各部门员工一样。
这才是真正的"AI团队"!一个Agent写代码,一个Agent改bug,一个Agent做测试——完美闭环!
🚀 使用方法
创建子Agent任务
// 启动一个子Agent执行任务
sessions_spawn({
task: "帮我搜索OpenClaw的最新用法案例",
label: "research-assistant",
runtime: "subagent"
})
管理多个子Agent
// 列出当前运行的子Agent
subagents({ action: "list" })
// 终止某个子Agent
subagents({
action: "kill",
target: "agent-id-123"
})
// 给子Agent发送新指令
subagents({
action: "steer",
target: "agent-id-123",
message: "再加搜一下Claude的用法"
})
✨ 最佳实践
- 任务拆分: 复杂任务拆成独立子任务,避免耦合
- 标签管理: 给子Agent打标签,方便识别和管理
- 超时设置: 子任务设置合理超时,防止无限等待
- 结果汇总: 主Agent负责汇总子Agent结果
💻 代码示例
示例1:并行内容生成
// 同时生成多个页面
async function generateMultiplePages(topics) {
const tasks = topics.map(topic =>
sessions_spawn({
task: `生成关于${topic}的教程页面`,
label: `writer-${topic}`,
runtime: "subagent"
})
)
// 等待所有任务完成
const results = await Promise.all(tasks)
return results
}
// 使用
generateMultiplePages(['Shell执行', '浏览器控制', '文件操作'])
示例2:研究+执行分离
// 1. 先让研究Agent搜索信息
const researchTask = await sessions_spawn({
task: "搜索OpenClaw的最佳实践案例",
label: "researcher",
runtime: "subagent"
})
// 2. 主Agent基于研究结果执行
const results = await sessions_history({
sessionKey: researchTask.sessionKey
})
// 3. 执行具体任务
exec({ command: results.content })
🎯 妙趣实测技巧
子Agent真的是"时间管理神器"!我让它同时跑5个搜索任务,原本1小时的工作10分钟就搞定了。但记得最后要
subagents({action:'kill'})清理掉,不然会浪费资源。