主子Agent
claude 启动时会默认生成一个主Agent,前边学习过 宏观认识Claude code.md ,知道主Agent的上下文窗口是有限的。当主Agent在执行主线任务时,避免不了会有一些不重要的或只需要知道结果不需要知道过程的支线任务(例如:从网络中进行搜索,只需要知道搜索后整理的结果,不需要知道搜索过程的明细数据),如果这些支线任务的内容统统放到主Agent的上下文中,就会污染主Agent的上下文,从而导致无法聚焦任务重点。
subagent 分类
claude code 的subagent 可以分为两类:命名subagent, fork subagent。fork subagent 比较简单,我们先介绍。
Fork subagent
fork subagent 就像git分支一样,是从主Agent中分叉出的一个临时分支,它继承到目前为止的整个对话,而不是从头开始。

可以使用/frok或/branch 手动启动一个subagent,启动后,该Agent就会变为一个新会话的独立主Agent,但是保留了源分支的上下文。
命名subagent
命名subagent可以理解为是一个领域专家,为特定任务设计的名称确定的subagent。claude code 内置了多个subagent, 我们也可以自定义subagent.
内置subagent
| 特性 | Explore | Plan | General-Purpose |
|---|---|---|---|
| 具体场景示例 | 这个项目有哪些文件? 哪些地方调用了 getUserId()? 这个模块的依赖关系是什么? |
我进入 plan mode 来设计新功能 需要先了解现有架构,再决定在哪里添加代码 研究完后生成计划给用户审批 |
修复这个 bug(搜索→理解→修改→测试) 重构这个模块(多文件改动→依赖调整→验证) 复杂多步骤操作中需要代理独立完成 |
| 主要操作特点 | 只看不改,问题越具体越好 | 研究是为了生成计划,结束后提交计划(不直接执行修改) | 需要实际修改代码,能处理复杂依赖关系 |
| 分析深度选项 | quick / medium / very thorough | 单一深度 | 单一深度 |
| 模型 | Haiku(固定,最快) | 继承主对话模型 | 继承主对话模型 |
| 可用工具 | 只读工具(Bash 读、Grep 等) | 只读工具 | 所有工具(含 Write、Edit) |
| 能否修改代码 | ❌ 不能 | ❌ 不能 | ✅ 能 |
| 何时选择 | 只需快速搜索/理解,不需修改 | 在 plan mode 中需要研究代码库 | 需要修改代码或多步骤操作 |
| 关键区别 | 只读快速侦察兵 | plan mode 的研究助手 | 全能执行者 |