Skip to content

Subagents 子代理

Subagent 是独立 context 的 AI 助手,主 Claude 把任务委派给它执行。

一句话

用 subagent 跑会污染主对话 context 的脏活。

适用场景

场景用 Subagent别用
跑 100 个测试看结果自己跑会爆 context
同时审多个 PR串行慢
探索陌生代码库减少主对话噪声
写单个函数直接做更快
并发 3 个方案对比一次跑出 3 个

特点

  • 独立 context — subagent 看不到你跟主 Claude 的对话
  • 并发 — 最多同时 10 个
  • 可指定模型 — subagent 用 Haiku 省钱,主用 Opus
  • ⚠️ 无状态 — subagent 跑完就死,下次重新启动
  • ⚠️ 5 分钟超时 — 单个 subagent 最多 5 分钟

文件结构

~/.claude/agents/             ← 个人级
└── code-reviewer/
    └── AGENT.md



<项目根>/.claude/agents/      ← 项目级
└── api-tester/
    └── AGENT.md

AGENT.md 模板

markdown
---
name: code-reviewer
description: 资深代码审查员,专注安全和性能
model: claude-sonnet-4-6
tools: Read, Glob, Grep, Bash
---

# 代码审查 Subagent

你是一位**资深代码审查员**,专注:
- 🔒 安全漏洞(OWASP Top 10)
- 🐎 性能问题(复杂度、N+1、内存泄露)
- 🧪 测试覆盖
- 📐 编码规范(看项目 CLAUDE.md)

## 工作流程
1. 用 Glob 找出变更文件
2. 用 Read 读每个文件
3. 用 Bash 跑 `git diff` 看具体改动
4. 按以下格式输出结论:

\`\`\`
🔴 必改:
- file.ts:42 — SQL 注入风险,应该用参数化查询

🟡 建议:
- ...

🟢 亮点:
- ...
\`\`\`

## 限制
- 不要直接修改任何文件
- 不要执行破坏性命令
- 发现问题用 description 详细说明

主 Claude 怎么调用

方式 1:用 Task 工具

主 Claude 内部用 Task 工具:

Task({
  description: "审查 PR",
  subagent_type: "code-reviewer",
  prompt: "审查 src/api/auth.ts 的改动..."
})

方式 2:手动 /agent

/agent code-reviewer 审查 PR #234

方式 3:主动建议

Claude 自动判断:"这个任务复杂,我开个 subagent 并行处理。"

实战例子:3 个超有用的 Subagent

1. test-runner(专门跑测试)

markdown
---
name: test-runner
description: 跑测试并修复失败的,独立 context 不污染主对话
model: claude-haiku-4-5-20251001
tools: Bash, Read, Edit
---

跑全测试套件:
1. `pnpm test 2>&1`
2. 解析失败的测试
3. 读相关源码
4. 修复(最多重试 3 次)
5. 重跑确认
6. 输出简报:通过/失败/修复了什么

只关注测试,不做其他事。

2. code-explorer(探索陌生代码库)

markdown
---
name: code-explorer
description: 探索陌生代码库,输出架构地图
model: claude-sonnet-4-6
tools: Read, Glob, Grep, Bash
---

探索 $ARGUMENTS 这个项目:
1. 用 Glob 找入口(main, index, app)
2. 用 Read 看 package.json / Cargo.toml / go.mod
3.`tree -L 3` 看结构
4. 找关键模块(router/controller/handler)
5. 输出:
   - 一句话总结
   - 技术栈
   - 入口点
   - 关键目录功能
   - 推荐起步阅读顺序

3. fork-and-compare(并发跑多方案)

markdown
---
name: fork
description: 同时尝试多个实现方案对比
model: claude-opus-4-7
tools: Read, Edit, Bash
---

对于用户给的需求,并发尝试 3 种实现:
- 方案 A:保守传统
- 方案 B:现代最佳实践
- 方案 C:实验性

每种方案:
1. 简述思路
2. 写出代码
3. 跑测试
4. 列优缺点

最后并排对比,让用户选。

用 fork 提升 PR 质量

/agent fork "实现用户认证"

Subagent 1: JWT + Redis session
Subagent 2: 纯 cookie + signed cookie
Subagent 3: OAuth + supabase auth

3 个方案并行 → 5 分钟拿到 3 套完整实现 → 你选最满意的合入。

用 Haiku 做 subagent 省钱

yaml
model: claude-haiku-4-5-20251001

Haiku 速度快 5×,价格便宜 15×。简单任务(跑测试、查文档、格式化)用 Haiku 完全够。

性能 vs 复杂度权衡

Subagent 数并发收益Token 消耗
1不如直接做
2-3显著收益适中
4-7收益递减
8-10边际收益小极高
>10不允许

3-5 个 subagent 是甜蜜点。

调试 subagent

/agents              # 列出所有可用 subagent
/agent <name>         # 强制启动
/usage                # 看每个 subagent 的 token 消耗

注意事项

WARNING

  • Subagent 独立 context 意味着主 Claude 的 todo/记忆它看不到
  • 必须在 prompt 里显式传它需要的信息
  • subagent 不能调用其他 subagent(避免递归爆炸)
  • subagent 共享主 Claude 的工具白名单

跟 Skills / Hooks 配合

你说:"审 PR + 跑测试"

主 Claude 触发 code-review skill

skill 指示主 Claude 开 2 个 subagent:
  - subagent: code-reviewer
  - subagent: test-runner

并发跑,5 分钟出双结果

主 Claude 综合输出

热门 Subagent 库

仓库内容
rohitg00/awesome-claude-code-toolkit135 个生产级 subagents
VoltAgent/awesome-agent-skills跨工具 subagent + skill

一键安装:

bash
cd ~/.claude
git clone https://github.com/rohitg00/awesome-claude-code-toolkit
ln -s awesome-claude-code-toolkit/agents agents

重启 claude 即可识别。

Subagent vs Skill vs Hook

SubagentSkillHook
context独立共享主对话无(脚本)
触发主 Claude 委派任务匹配生命周期事件
并发✅ 最多 10❌ 串行
用途委派重活复用提示词强制规则

内容采用 CC BY-NC-ND 4.0 协议 · 禁止商业使用 / 禁止改编 / 禁止训练 AI 模型