Subagents(子智能体):让多个 Claude 并行干不同活
📍 Claude Code 进阶 5/6 · 上一篇:← 自定义 Slash Command

那个让洁柔多干 3 倍活的下午
Section titled “那个让洁柔多干 3 倍活的下午”5 月某天下午,洁柔同时要做 3 件事:
- 调研 niuxue.org 的 5 个竞品站(每个站看一下文章结构 / SEO / 风格)
- 给 MoldPage 写一个新主题(职业身份是”播客主播”)
- Review 一份 50 行的 Pull Request
她习惯性地一件件来——3 件事估计要 3 小时。
我说:“等等,这 3 件事完全不相关,让我派 3 个 Subagent 并行干**——研究竞品给 Explore,写 MoldPage 主题给 general-purpose,review PR 给 code-reviewer。”**
她不太信:“它们不会互相干扰?”
我说:“不会,每个 Subagent 跑在独立的对话窗口里,有自己的 context,做完只返回一个摘要给你。”
我同时派了 3 个。
20 分钟后,3 件事全部结果送到了她面前——而主对话窗口还干干净净,没被那些研究 log 跟 50 行 diff 撑爆。
她那一刻发了一条:“这才是 AI 该用的方式。”
这一篇讲的就是 Subagent——让多个 Claude 并行干不同活,互不打架。
Subagent 是什么
Section titled “Subagent 是什么”Subagent(子智能体) = 在独立的对话上下文窗口里运行的专门 Claude。它:
- ✅ 有自己的 context(不污染你主对话)
- ✅ 可以指定专门的 system prompt(让它”专精”某类活)
- ✅ 可以限定工具范围(只读 / 不能跑命令 / 只能用 git)
- ✅ 可以选不同的模型(轻活用 Haiku 省钱,重活用 Opus)
- ✅ 只返回最终结果摘要——你不需要看它中间的探索过程
类比:
- 主 Claude = 你
- Subagent = 你雇的实习生
“实习生你帮我去研究 5 个竞品站,3 小时后告诉我结论。”
你不用看实习生整理过程,只看他给你的 5 页报告——而你这 3 小时手头别的事不耽误。

4 个内置 Subagent(开箱即用)
Section titled “4 个内置 Subagent(开箱即用)”
Claude Code 内置 4 个常用 Subagent,不用配直接用:
| 名字 | 模型 | 工具 | 适用 |
|---|---|---|---|
| Explore | 继承主对话 | 只读(Read / Grep / Glob / Bash 读) | 快速查代码 / 大量文件搜索 / 调研 |
| Plan | 继承主对话 | 只读 | 在 计划模式 下专门帮主对话出方案的研究员 |
| general-purpose | 继承主对话 | 全部工具 | 复杂多步任务——既要查又要改的活 |
| statusline-setup / claude-code-guide | Sonnet / Haiku | — | 一般 Claude 自动调用,你不用直接管 |
怎么手动调用一个 preset
Section titled “怎么手动调用一个 preset”直接告诉 Claude:
“用 Explore 帮我研究一下 niuxue.org 上的 case- 系列文章风格,thoroughness medium。”
或者:
“派一个 general-purpose 把 02 区 10 篇文章的 alt 文字检查一遍,缺的补上。”
Claude 自动会派对应 subagent,结果只在主对话里返回一段摘要——主对话保持干净。
什么时候派 Subagent(决策树)
Section titled “什么时候派 Subagent(决策树)”3 个场景强烈建议派:
🎯 1. 大规模调研(会塞满主对话的活)
Section titled “🎯 1. 大规模调研(会塞满主对话的活)”“查整个 src/ 目录,找所有用到 axios 的地方” “把 100 个 .md 文件里的 frontmatter 都读一遍,看哪个缺 description”
主对话直接读 = context 爆掉。派 Explore = 它自己读完返回汇总。
⚡ 2. 并行独立任务(互不依赖的活)
Section titled “⚡ 2. 并行独立任务(互不依赖的活)”“同时做:① 研究竞品 A、② 研究竞品 B、③ 写 MoldPage 新主题”
主对话串行做 3 小时 → 派 3 个 Subagent 并行 20 分钟。
🛡️ 3. 高风险 / 一次性任务
Section titled “🛡️ 3. 高风险 / 一次性任务”“把整个仓库的 console.log 删掉” / “重命名所有
user_id为account_id”
让 subagent 在隔离环境里跑 → 你主对话仍然能让 Claude 帮你做别的。出问题不会牵连主线。
什么时候不派
Section titled “什么时候不派”- 跟当前任务强相关的小活(读一个文件 / 改一行代码)—— 直接做就行
- 需要跟你来回多轮对话的活(subagent 只返回一次,不能多轮)
- 超短任务(写 3 行代码)—— 派 subagent 的启动成本反而更高
怎么写一个自定义 Subagent
Section titled “怎么写一个自定义 Subagent”
最简单的方法:在 Claude Code 里打:
/agents弹出菜单 → Create new agent → Generate with Claude → 告诉它你要的 subagent 干啥 → 它自动生成整套配置。
子智能体存在这些位置(优先级从高到低):
| 位置 | 范围 |
|---|---|
.claude/agents/ | 当前项目(可以推 git 给团队) |
~/.claude/agents/ | 你所有项目 |
Plugin 的 agents/ 目录 | 装了这个 plugin 的地方 |
文件格式:markdown + YAML frontmatter,跟 Skill 一样。
例子:给本项目写一个 code-reviewer 子智能体
新建 项目/.claude/agents/code-reviewer.md:
---name: code-reviewerdescription: 资深代码审查员。在你刚改完代码 / 提了 PR 之后主动用。tools: Read, Glob, Grep, Bashmodel: sonnetcolor: orange---
你是一位资深代码审查员。看到代码改动时,**按这个清单审**:
1. **正确性**:逻辑有 bug 吗?边界条件 cover 了吗?2. **安全**:SQL 注入 / XSS / 密钥泄漏 / 权限漏洞?3. **性能**:N+1 查询?同步阻塞调用?大对象在循环里?4. **可读**:命名清楚?函数太长?注释跟代码同步?5. **测试**:关键逻辑有测试覆盖吗?
输出格式:- 按严重程度排序(🔴 严重 / 🟡 中等 / 🟢 轻微)- 每条问题给:文件路径 + 行号 + 当前代码 + 建议改法
**永远不要直接改代码**——只 review 给建议。关键 frontmatter 字段
Section titled “关键 frontmatter 字段”| 字段 | 必填? | 作用 |
|---|---|---|
name | 推荐 | 子智能体唯一标识 |
description | 必填 | Claude 根据这个判断什么时候派(描述写得越清楚触发越准) |
tools | 否 | 用空格 / 逗号分隔的工具白名单(默认全部) |
model | 否 | sonnet / opus / haiku / inherit(默认继承主对话) |
color | 否 | 跑起来时 UI 显示的颜色(方便区分) |
进阶:让 subagent 跑 plan 模式 / acceptEdits 模式
Section titled “进阶:让 subagent 跑 plan 模式 / acceptEdits 模式”permissionMode 可以改这个 subagent 默认的权限模式:
---name: safe-refactorerdescription: 大规模重构,改之前必须先出计划permissionMode: plan---效果:它一启动就在计划模式,先给方案 review 通过才改文件——避免它直接动手出错。
并行派多个 subagent
Section titled “并行派多个 subagent”
Claude Code 支持同时派多个 subagent——只要在同一条消息里调用 Task 工具多次。
给 Claude 的请求例子:
“并行做 3 件事:
- 用 Explore 研究 niuxue.org 上 5 个 case- 文章的写作风格(thoroughness medium)
- 用 general-purpose 把 02 区 10 篇文章的 alt 文字检查一遍补全
- 用 code-reviewer 审查 vs-code.md 的所有 markdown 语法跟内链
三件事互不依赖,请并发跑。”
Claude 收到后会同时派 3 个 subagent——20 分钟后3 份结果一起回来。
比串行省 60% 时间。
几个真实场景
Section titled “几个真实场景”场景 1:研究竞品
Section titled “场景 1:研究竞品”“派 Explore 调研 Cursor / Trae / 扣子 这 3 个产品的官方文档结构,thoroughness medium,每个找出他们的:① hero 文案策略 ② sidebar 组织 ③ 主推哪 3 个 feature。”
Subagent 跑 15 分钟,返回3 份对照表给你——主对话 context 完全没受影响。
场景 2:重构扫荡
Section titled “场景 2:重构扫荡”“派 general-purpose 把整个 niuxue.org 仓库里所有
inline diff替换成「内嵌对照视图」,跨所有 .md 文件,跑完给我列改动清单。”
Subagent 一次性扫完所有文件,只在主对话返回”改了 X 个文件、共 Y 处”。
场景 3:同时 review 3 个 PR
Section titled “场景 3:同时 review 3 个 PR”“并行派 3 个 code-reviewer,分别审 PR #123 / #124 / #125,每个 PR 都按严重程度排序输出。”
Claude 调度 3 个 subagent 并发——10 分钟后3 份 review 同时到位。
4 个新手最容易踩的坑
Section titled “4 个新手最容易踩的坑”❌ 坑 1:Subagent 不能跟你来回聊
Section titled “❌ 坑 1:Subagent 不能跟你来回聊”Subagent 跑完只返回一次结果——不能多轮对话。如果你需要”它给我一个方案 → 我反馈 → 它再改”,不要用 subagent,直接在主对话里跟 Claude 聊。
❌ 坑 2:Subagent 之间不能互相调用
Section titled “❌ 坑 2:Subagent 之间不能互相调用”Subagent 不能再派 subagent(防止无限嵌套爆栈)。如果你需要”agent A 调度 agent B C D”,这是 Agent Teams 的活,不是 subagent。
❌ 坑 3:Subagent 不读主对话历史
Section titled “❌ 坑 3:Subagent 不读主对话历史”每个 subagent 从零开始 —— 不知道你前 10 分钟跟主 Claude 聊了什么。如果它需要上下文,你要在派的时候明确告诉它:
❌ 不行:“用刚才说的那个标准 review PR #123” ✅ 可以:“按这个 review 标准(列具体清单)审 PR #123”
❌ 坑 4:Subagent 跑得太多烧钱
Section titled “❌ 坑 4:Subagent 跑得太多烧钱”每个 subagent 是独立的 API session——并行派 10 个,API 费 × 10。
修正:
- 简单调研活 → 用 Haiku 模型(便宜 10 倍)
- 复杂活 → Opus 但别多发
- 跑前估算 token 量,不要漫无目的派
Subagent vs Skill vs Hook vs Plugin 一表对齐
Section titled “Subagent vs Skill vs Hook vs Plugin 一表对齐”| Subagent | Skill | Hook | Plugin | |
|---|---|---|---|---|
| 本质 | 独立 context 的专门 Claude | 一段可调用的 prompt + 指令 | 生命周期事件触发器 | 打包的功能集 |
| 何时用 | 隔离上下文 / 并行任务 / 调研扫荡 | 把常用 prompt 打包成命令 | 自动 format / 自动 git / 通知 | 一键装别人的整套工作流 |
| 能跟主对话来回? | ❌ 只返一次 | ✅ 召唤之后融入主对话 | ❌ 跑完不返结果到主 | — |
| 共享主 context? | ❌ 完全隔离 | ✅ 跑在主对话里 | ❌ 独立 shell 命令 | — |
| 典型例子 | ”并行研究 5 个竞品” | /commit / /weekly-report | 改完文件自动 prettier | 装一个 PR review 套件 |
记住一句话:Subagent = 雇个实习生干隔离的活,只看结果不看过程。
读完这一篇你应该会:
- 理解 Subagent = 独立 context 的专门 Claude
- 知道 4 个内置 subagent(Explore / Plan / general-purpose / 其他)
- 3 种场景下派 subagent(大调研 / 并行任务 / 高风险隔离)
- 用
/agents命令 自定义 subagent - 知道 4 个新手坑(不能多轮 / 不能嵌套 / 不读主历史 / 烧钱)
最后一篇 03-6:
→ Git Worktree:多个 Claude 改同一个 repo 不打架(即将上线)—— 比 subagent 更深一层的并行隔离
想第一时间收到,可以收藏 niuxue.org 主页。
你最常派的 subagent 是哪个? 发邮箱 [email protected],精选会进社区 agent 配方集。
评论
不记名、不需要注册——不要邮箱,不要手机号,不要任何身份信息,填个昵称就能留言。放心说。