11.4 任务协调与消息通信

面向经管学生、研究者与从业者的 AI 智能体设计教材

作者

李学恒、林建浩、严翊歆

发布于

2026-05-11

11.4 配图

Agent Teams 通过共享任务列表和消息系统实现队友间协调。这两个机制替代了子代理模式下由主代理集中管理的做法。

共享任务列表

共享任务列表是团队协调的核心。Lead 创建任务,队友认领和完成任务。所有团队成员都能看到任务列表的实时状态。任务状态按 pending(待处理)→ in_progress(进行中)→ completed(已完成)流转,可以设置依赖关系——被阻塞的任务在前置任务完成后自动解除阻塞。

任务分配有两种方式:Lead 显式分配给特定队友(适用于需要特定专业能力的任务),或队友自主认领(适用于能力相似、无特殊要求的任务)。认领使用文件锁机制防止竞争条件,两个队友同时尝试认领同一个任务时,只有一个会成功。

任务粒度

任务拆分的粒度直接影响团队效率。推荐每个队友保持 5-6 个任务,整个团队 3-5 个队友,单个任务的执行时间控制在 5-15 分钟。任务过粗,一个队友执行时间过长,其他队友等待;任务过细,协调开销大于实际执行时间。

▶ Claude Code
请创建一个团队来评审这份研究报告。
分配以下任务:

队友 A(数据审查员):
  1. 验证报告中所有数据来源的准确性
  2. 检查数据计算过程是否有误
  3. 核实图表数据与正文描述是否一致

队友 B(逻辑审查员):
  4. 评估分析框架的合理性
  5. 检查论证过程是否有逻辑漏洞
  6. 评价结论是否被数据充分支持

队友 C(合规审查员):
  7. 检查是否符合信息披露规范
  8. 核实风险提示是否完整
  9. 确认引用数据的时效性

每个队友有 3 个明确的审查任务,粒度较为合适。

消息通信

Agent Teams 支持两种消息类型:

类型 说明 适用场景
私信(Direct Message) 发送给一个特定队友 针对性沟通,只消耗接收者的上下文
广播(Broadcast) 同时发送给所有队友 任务范围变更、阻塞性问题等全员须知的情况

消息传递有三个特性:一是自动传递,不需要轮询或手动检查;二是异步处理,队友在当前工作轮次中(mid-turn)收到的消息会排队等待;三是空闲唤醒,队友在每个工作轮次结束后进入空闲状态(idle),向它发送消息会唤醒它继续工作。

谨慎使用广播

广播消息的成本随团队规模线性增长,N 个队友就意味着 N 份上下文消耗。日常沟通应以私信为主。

在 in-process 模式下,用 Shift+Down 在队友之间切换;在 split-pane 模式下,直接在对应面板中输入。

Plan Approval 机制

对于重要任务,可以要求队友先制定计划,Lead 审批后再执行。通过在创建队友时设置 plan_mode_required 启用。启用后,队友在只读的计划模式下工作——可以读取文件、搜索代码、分析问题,但不能修改文件。队友完成计划后提交给 Lead 审批,获得批准后才进入执行模式。

工作流程:
1. Lead 创建队友并设置 plan_mode_required
2. 队友进入计划模式,制定实施方案
3. 队友提交计划给 Lead
4. Lead 审查计划:
   - 批准 → 队友退出计划模式,开始执行
   - 拒绝 → Lead 提供反馈,队友修改计划后重新提交

Plan Approval 适用于高风险操作(如修改生产配置、批量数据处理)和大规模变更(如代码重构、系统迁移),确保关键操作在执行前经过审核。从上下文管理角度看,它也能节省资源:如果 Lead 在计划阶段发现方向不对,可以立即纠正,避免执行后回滚带来的双倍上下文消耗。