Agent teams 是目前 AI 开发范式中的一个新潮流,非常适合复杂的、需要 “分头行动” 的中大型开发任务。但因 Token 消耗大,现阶段不支持断点恢复,对于简单的线性任务,建议继续使用单会话或 subagent 会更友好。
在今年 2 月期间,A 社推出了一个全新的范式:Agent teams,又引发了一轮热议和广大网友对其的研究和学习。
今天我们来学习一下这个新的 “香饽饽”。据说一人团队能把大家干掉了。
Agent teams 是什么
Agent teams 这个特性支持我们去协调多个 Claude Code 进行协同运行。
实现一个会话作为 Team Lead(组长),同时与其他多位队友在不同的会话中(独立上下文窗口)进行可协同的独立工作。
也就是 Agent teams = 一位 Team Lead(组长)+ 多位 Teammate(队友)。
来自官方资料
其中关键的是各个队友都是独立平级的,互相可以直接沟通/处理。无需经过 Team Lead(主 Agent)。
Agent teams 目前是一个实验性功能,在 Claude Code 中还是缺省禁用。如果要使用,要在settings.json或在环境变量中增加CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1的配置。
与 Subagents 的区别
与 subagent 还是有根本性的差异的,最核心的差异点:subagent 只能在单一会话内进行,且各个 subagent 只能和主 Agent 沟通,无法与其他 subagent 直接沟通。
而 agent teams,各个队友之间是可以直接进行互相沟通,无需经过 team lead,是平级沟通。
各自的上下文窗口是完全独立的。
Claude 官方的推荐用法是:“当你需要快速、专注的工作人员报告结果时,使用 subagents。当队友需要分享发现、相互质疑和自我协调时,使用 agent teams。”
案例介绍
我们先需要对 agent tearm 这个实验特性,进行环境变量的配置打开:
{ "env": { "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1" } }启动和激活后,我们需要对 Claude 进行描述。输入以下针对 agent teams 的官方例子提示词:
我正在设计一个命令行工具(CLI),帮助开发者跟踪代码库中的待办事项注释。 组建一个团队从不同角度探讨这个问题:一名成员负责用户体验(UX),一名负责技术架构,还有一名担任质疑者角色。运行后就可以看到相关的效果:
建议大家实操看一下过程。还是挺有意思的。(需要注意:挺烧 tokens)
显示模式
现阶段 agent teams 支持两种 UI 显示模式:
- In-process:所有队友都在主终端内运行,使用 Shift+Up/Down 选择队友并操作。
- Split panes:每个队友都有在自己的终端界面,需要配合 tmux 或 iTerm2 使用。
其显示模式的缺省默认值是auto。也就是如果已经是在 tmux 会话,则使用分屏模式。
一般可以在下方看到类似的提示,以便于进行 tmux 的会话切换:
否则使用 In-process 模式,就是常规的单终端模式了。
也可以为每个会话手动设置显示模式:claude --teammate-mode in-process或是claude --teammate-mode tmux。
“高级” 玩法
- 任务管理:整个团队共享一个任务列表,Team Lead 可以直接指派任务,也就是分配任务。队员完成当前工作后,自动认领下一个未被阻塞的任务(使用文件锁防止冲突)。
- 计划审批(Plan Approval):对于高风险任务,可以要求队员在写代码前先提交计划,经 Team Lead 批准后方可执行。
- 委托模式(Delegate Mode):强制 Team Lead 只负责“协调”和“管理”,不直接写代码。这能防止 Team Lead 抢活干,确保其专注于任务分发和汇总。
- Hooks(钩子):支持 TeammateIdle(队员空闲时)和 TaskCompleted(任务完成时)的钩子脚本,用于强制执行质量检查。
已知的问题点
- 不支持会话恢复:目前 /resume 和 /rewind 无法恢复队员的状态(这是目前最大的限制)。
- 单一团队:一个会话同一时间只能管理一个团队。
- 清理:工作结束后需要让 Team Lead 执行 Clean up 来释放资源和关闭 tmux 会话。
- 常见问题:
a.如果不显示队员,尝试使用 Shift+Down 切换。
b.分屏模式在 VS Code 集成终端或 Windows Terminal 中可能不支持,建议在标准终端中使用。
总结
Agent teams 是目前 AI 开发范式中的一个新潮流,非常适合复杂的、需要 “分头行动” 的中大型开发任务。
但因 Token 消耗大,现阶段不支持断点恢复,对于简单的线性任务,建议继续使用单会话或 subagent 会更友好。
在最佳实践上,Claude 是建议要:“提供充足的上下文、合理规划任务规模、避免组长抢活干、从研究和审查起步、需要确保持续的监控和引导等”。
作为实验性特性,问题还是不少的。建议大家可以边玩边探索。