为什么需要这个#
有时一个任务对单个代理来说太大了。想象装修公寓:电工、水管工和油漆工并行工作,各自在自己的区域,但协调行动。
Agent Teams(代理团队)是 Claude Code 的一项功能,多个 Claude 实例同时处理任务的不同方面:
- 🔀 并行工作——多个任务同时执行
- 💬 代理间通信——团队成员可以交换信息
- 🎯 专业化——每个代理负责自己的领域
- 👤 直接访问——你可以直接与任何团队成员交流
Agent Teams vs 子代理#
Claude Code 有两种并行工作方式。理解区别很重要:
| 子代理 | Agent Teams | |
|---|---|---|
| 上下文 | 独立的,结果返回给调用者 | 独立的,完全独立 |
| 通信 | 仅与主代理 | 彼此直接通信 |
| 协调 | 主代理管理一切 | 共享任务列表,自组织 |
| 适用于 | 快速聚焦任务 | 需要讨论的复杂工作 |
| Token 消耗 | 较低 | 较高(每个代理是独立会话) |
经验法则: 简单任务使用子代理,需要协调的复杂任务使用 Agent Teams。
启用 Agent Teams#
Agent Teams 默认关闭。通过以下方式之一启用:
方式1:通过环境变量#
export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1
claude方式2:通过 settings.json#
在 .claude/settings.json 文件中添加:
{
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}
}启动代理团队#
启用后,只需用自然语言描述任务和团队结构:
示例1:研究和审查#
创建一个3人代理团队:
1. 第一个代理——研究项目架构并记录
2. 第二个代理——检查代码安全性
3. 第三个代理——检查测试覆盖率
每个人并行工作并分享结果。示例2:功能实现#
我需要一个团队来实现身份验证系统:
- 代理 "backend" — 创建 login/logout/register 的 API 端点
- 代理 "frontend" — 创建登录和注册表单的 UI
- 代理 "tests" — 为两部分编写测试
在 API 契约上相互协调。示例3:使用竞争假设进行调试#
有一个 bug:上传大于 10MB 的文件时应用程序会卡住。
创建一个调试团队:
- 代理1:调查内存泄漏假设
- 代理2:调查网络超时假设
- 代理3:调查缓冲区问题假设
每个人探索自己的假设并报告结果。管理团队#
查看状态#
Claude Code 会显示每个团队成员的状态:谁在做什么,谁已完成。
与特定代理交流#
你可以直接与任何团队成员交流,而不通过领导者。
分配任务#
团队领导者协调工作,但你可以介入并重新分配任务。
Agent Teams 的有效场景#
✅ 好的场景:
- 并行研究问题的不同方面
- 新模块/功能,代理在不同文件中工作
- 同时使用多个假设进行调试
- 跨层工作:前端 + 后端 + 测试
❌ 不适合的场景:
- 顺序任务(每一步都依赖于前一步)
- 在同一个文件中工作(更改冲突)
- 具有大量依赖关系的任务
- 简单任务(过多的协调开销)
最佳实践#
- 明确角色 ——每个代理应有清晰的职责范围
- 最小重叠 ——代理不应编辑相同的文件
- 具体任务 ——模糊的描述会导致重复工作
- 注意 Token ——每个代理单独消耗 Token,团队成本更高
- 从小开始 ——在创建大团队之前先尝试2-3个代理
课程总结#
- Agent Teams 是多个 Claude Code 实例并行工作
- 与子代理不同,团队成员可以相互交流
- 通过
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1变量启用 - 用自然语言描述团队和任务
- 最适合没有文件重叠的并行任务
- 不要用于顺序任务——会更贵更慢
- 每个代理是独立会话,Token 消耗更高