Sub-Agent(子Agent)是指由主Agent派生的、专注于执行特定任务的独立Agent实例。就像公司里的主管把任务分配给下属一样,主Agent负责统筹规划,Sub-Agent负责具体执行。这是实现复杂任务分解和并行处理的核心架构模式。
单个Agent处理复杂任务时会遇到瓶颈:
// 在 OpenClaw 中派生 Sub-Agent
sessions_spawn({
task: "搜索最新的AI新闻并生成日报",
taskName: "daily-news",
mode: "run", // 一次性执行
runtime: "subagent",
timeoutSeconds: 300 // 5分钟超时
})
// 主Agent继续处理其他任务...
// Sub-Agent完成后会自动通知主Agent
主Agent ──派生──→ Sub-Agent ──执行任务──→ 返回结果
│ │
│ ├─ 可以使用工具
│ ├─ 可以搜索网络
│ └─ 可以读写文件
│
└─ 继续处理其他工作
└─ 收到Sub-Agent结果后整合
| 模式 | 适用场景 | 特点 |
|---|---|---|
run | 一次性任务 | 执行完即销毁 |
isolated | 独立任务 | 不共享上下文 |
fork | 需要父上下文 | 继承父Agent的对话历史 |
// 主Agent同时派生3个Sub-Agent
sessions_spawn({ task: "生成AI新闻日报", taskName: "news" })
sessions_spawn({ task: "生成术语百科页面", taskName: "glossary" })
sessions_spawn({ task: "执行SEO巡检", taskName: "seo-check" })
// 等待所有Sub-Agent完成
sessions_yield({ message: "等待3个子任务完成" })
// 收到结果后汇总报告
← 返回术语百科首页