Claude Code 通过 Task 工具启动子代理(Subagent),每个子代理是独立的 Claude 实例,拥有自己的 200K token 上下文窗口。本文档介绍子代理的工作原理、内置类型、并行执行机制,以及如何通过提示词高效使用子代理完成代码探索、架构分析等任务。
子代理适合处理需要大量上下文的任务,如代码探索、架构分析、代码审查等。执行完毕后将结果返回给主 Agent,保持主会话的上下文清洁。
Claude Code 通过 Task 工具启动子代理(Subagent),每个子代理是独立的 Claude 实例,拥有自己的 200K token 上下文窗口。子代理适合处理需要大量上下文的任务,如代码探索、架构分析、代码审查等,执行完毕后将结果返回给主 Agent。
主 Agent 的上下文窗口是有限资源,当需要:
将这些任务委派给子代理,可以保持主会话的上下文清洁,同时利用并行执行提升效率。
子代理拥有独立的 200K token 上下文窗口,不会占用主 Agent 的上下文空间,适合执行上下文密集型任务。
| 特性 | 说明 |
|---|---|
| 独立上下文 | 每个子代理有 200K token 窗口 |
| 无状态 | 执行完毕即销毁,无法持续对话 |
| 结果返回 | 子代理输出对用户不可见,由主 Agent 汇总呈现 |
| 工具继承 | 子代理工具集由类型决定 |
快速探索代码库的专用子代理,适合文件搜索、关键词匹配、代码结构分析。
可用工具: Glob、Grep、Read、LSP、WebFetch、WebSearch
触发提示词:
适用情况:
Explore 子代理适合快速探索陌生代码库,通过关键词搜索快速定位相关文件和代码逻辑。
架构设计专用子代理,用于分析代码结构并制定实现方案。
可用工具: 除 Edit、Write、NotebookEdit 外的所有工具
触发提示词:
适用情况:
Plan 子代理可以深入分析代码结构,综合考虑多种实现方案,帮助做出更合理的架构决策。
代码审查专用子代理,用于检查代码质量、发现潜在问题。
可用工具: 所有工具
触发提示词:
适用情况:
code-reviewer 子代理会提供改进建议,但最终决策需要开发者根据项目实际情况判断。
| 场景 | 执行方式 |
|---|---|
| 任务之间无依赖 | 并行 |
| 后续任务需要前置结果 | 顺序 |
| 只读操作(搜索、分析) | 适合并行 |
| 写操作(编辑同一文件) | 必须顺序 |
在提示词中明确要求并行启动多个子代理:
关键点:
并行执行多个子代理可以显著提升分析效率,尤其适合需要从多个维度分析同一代码库的场景。
以分析一个 Spring Boot 项目的订单模块为例,同时从三个维度进行分析。
场景: 接手一个陌生项目,需要快速理解订单模块的实现。
用户输入:
执行结果:
三个子代理并行执行后,主 Agent 收到三份独立报告:
主 Agent 将这些信息整合,形成对订单模块的完整理解。
通过并行执行多个子代理,可以从不同维度快速理解复杂模块,比单一维度分析更全面高效。
简单搜索任务可在提示词中指定使用 haiku 模型,如"使用 haiku 模型的 Explore 子代理搜索...",降低 API 调用成本。
多个子代理不应同时编辑同一文件,写操作必须顺序执行以避免冲突。