是什么

Agent Teams 是实验性功能,允许多个 Claude Code 实例作为团队协同工作。一个 Lead 会话负责创建团队、分配任务和综合结果,Teammates 各自拥有独立上下文窗口,通过共享任务列表和直接消息互相协作。与 Subagents 的核心区别是:Teammates 可以直接互相通信,而不仅仅向主 Agent 汇报。

核心机制

启用方式:默认禁用,需在 settings.json 中设置 CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1。

架构组成:

  • Team Lead:主会话,创建团队、派发任务、综合结果
  • Teammates:独立 Claude 实例,各自处理分配的任务
  • 共享任务列表:存储在 ~/.claude/tasks/{team-name}/,支持依赖关系和自动解锁
  • Mailbox:Agent 间消息系统,支持点对点通信

显示模式:

  • In-process:所有 Teammates 在主终端内运行,Shift+Down 切换
  • Split panes:每个 Teammate 独立窗格,需要 tmux 或 iTerm2

质量门控 Hooks:TeammateIdle(Teammate 空闲时触发)、TaskCreated(任务创建时)、TaskCompleted(任务完成时),返回 exit code 2 可阻止并发送反馈。

Plan 审批流程:可要求 Teammate 先规划再实施,Lead 审批计划后才能开始修改代码。

关键细节

  • 启用:CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1
  • 需要 Claude Code v2.1.32+
  • 切换 Teammate(in-process):Shift+Down
  • 查看任务列表:Ctrl+T
  • 团队配置:~/.claude/teams/{team-name}/config.json
  • 推荐团队规模:3-5 个 Teammates
  • 每个 Teammate 约 5-6 个任务效率最佳
  • Token 消耗随 Teammate 数量线性增长

关联

  • sub-agents — 轻量级委托,Subagents 只向主 Agent 汇报
  • agents — 四种并行方式对比
  • hooks — TeammateIdle/TaskCreated/TaskCompleted 等 Hook 事件

实践要点

  • 最适合场景:并行研究与评审、新模块开发(各成员负责独立模块)、竞争假设调试
  • 避免多个 Teammate 编辑同一文件,按文件/模块划分工作边界
  • Teammates 不继承 Lead 的对话历史,spawn 时需在 prompt 中提供足够上下文
  • 清理团队必须由 Lead 执行,Teammate 执行清理可能导致状态不一致
  • 已知限制:不支持 /resume 恢复 in-process Teammates,任务状态有时滞后