模块 10 / 10
委托与多智能体 (Delegation)
一个 Agent 不够?派生子 Agent 并行工作——任务拆解、各自攻坚。
预计阅读时间:8 分钟
1 delegate_task —— 子 Agent 委托
delegate_task 让父 Agent 派生子 Agent 去处理独立子任务。每个子 Agent 有隔离的上下文和终端会话——互相不干扰。
flowchart TD
A["👤 用户任务"] --> B["🧠 父 Agent
拆解任务"]
B --> C["🤖 子 Agent A
写后端 API"]
B --> D["🤖 子 Agent B
写前端页面"]
B --> E["🤖 子 Agent C
写测试"]
C --> F["📋 结果汇总到父 Agent"]
D --> F
E --> F
F --> G["✅ 返回给用户"]
2 两种模式
| 模式 | 场景 | 用法 |
| 单任务 | 一个复杂子任务 | delegate_task(goal="...", context="...") |
| 批量并行 | 多个独立子任务 | delegate_task(tasks=[{...},{...}]) 最多 3 个并发 |
3 delegate_task vs 手动 spawn
| 维度 | delegate_task | 手动 spawn hermes |
| 隔离度 | 独立上下文,共享进程 | 完全独立进程 |
| 时长 | 分钟级(受父 Agent 限制) | 小时/天级 |
| 交互 | 不可交互 | 可交互(PTY 模式) |
| 适用 | 快速并行子任务 | 长期自主任务 |
💡 首选 delegate_task:大多数场景下 delegate_task 足够用——开销低、无需额外配置。需要长期运行的任务才用 tmux + hermes 多实例。