Claude Code 的隐藏技能:Subagent 全流程实操
你有没有遇到过这种情况:让 Claude 帮你 review 代码,结果对话越来越长,上下文越来越乱,最后还把前面的需求给忘了?尤其是项目越做越大,这种情况就越明显。其实 Claude Code 里有一个隐藏功能:Subagent(子代理)它可以让 Claude 像项目经理一样,把不同任务外包给不同的 AI 助手。说实话,用了 Subagent 之后,我已经很少在主对话里做代码审查了。又省上下文,
你有没有遇到过这种情况:让 Claude 帮你 review 代码,结果对话越来越长,上下文越来越乱,最后还把前面的需求给忘了?尤其是项目越做越大,这种情况就越明显。
其实 Claude Code 里有一个隐藏功能:Subagent(子代理)它可以让 Claude 像项目经理一样,把不同任务外包给不同的 AI 助手。
说实话,用了 Subagent 之后,我已经很少在主对话里做代码审查了。又省上下文,又不打断主任务,体验非常丝滑。
今天带你手把手完整实操一次,从 0 创建一个「代码审查专员」Subagent。
1、为什么普通 Claude 不够用?
用 claude 主agent 用的好好的,为什么要用 subagent 呢?
原因就是,你可以把 claude 想象成一个项目经理,他一个人要干所有的活(写代码、查Bug、写文档、做测试)。
这样他不仅累,而且容易搞混上下文,或者用昂贵的资源做简单的小事。
最明显的一个情况就是,你和 claude 聊着聊着,你就会发现上下文满了。
像 review 代码这种事情,其实不需要在我们主窗口去做,直接让一个子 agent 去做就可以了,当他review完,把结果通知我们就行了。这样完全不占用主进程的上下文。
对比来看就是这样:
1)普通 Claude:
全能员工
-
又写代码
-
又查 Bug
-
又写文档
-
上下文越聊越乱
2)Subagent:
-
只干一件事
-
上下文独立
-
更专注
-
更省 Token
简单说就是:普通 Claude = 万金油 ,Subagent = 手术刀 。一个什么都能做,一个专门把事做好。
所以,有了 Subagents之后,当遇到特定任务时,项目经理(Claude)会把任务外包给专门的子智能体去做。
2、Subagents 是什么
官方这么说的:
Subagents 是专门处理特定类型任务的 AI 助手。
每个子代理都在独立的上下文环境中运行,拥有专属的系统提示设置、特定的工具访问权限以及独立的操作权限。
当 Claude 遇到符合子代理描述的任务时,会自动将该任务委托给对应的子代理进行处理,子代理将独立完成任务并返回结果。
Claude 会根据每个子代理的功能描述来决定何时进行任务委派。
创建子代理时,请编写清晰明确的描述,这样 claude 就能准确判断何时调用该子代理。
说人话:
Subagents 就是给 Claude 请的临时工,而且每个临时工只干一件事。
主 Agent 负责统筹全局 ,Subagent 负责专项任务 。本质上是一个带独立记忆 + 独立权限的专职 AI 助手。
Claude Code 提供了多个内置子代理,包括探索型(Explore)、规划型(Plan)和通用型等。
我们也可以去创建自定义子代理去执行特定的任务。
下面红框这些都是内置的子代理

Claude 内置子代理举例:
内置的探索型子代理(Explore Subagent)
一个专为代码库搜索与分析优化的快速只读代理。
-
模型:Haiku(响应迅速、延迟低)
-
工具:仅读工具(无写入与编辑权限)
-
用途:文件查找、代码检索、代码库探索
当 Claude 需要在不修改代码的情况下搜索或理解代码库时,它会将任务委托给 Explore 这个子代理。这样可以确保探索结果不会混入您的主要对话上下文中。
3、实战:创建一个代码审查 Subagent
subagent 是基于 markdown 文件的,只不过这个 Markdown 文件会包含 YAML 前置元数据,你可以手动创建,也可使用 /agents 斜杠命令快速生成。
下面我们以/agent 命令创建一个用户级子代理为例,这个子代理能够审查代码并提供优化建议
1)在命令行输入/agents
选择 Create new agent

2)选择子代理使用级别
-
项目级别,仅限当前项目使用
-
用户级别,所有的项目都可以使用
如果你经常在多个项目里用同一个子代理,建议选「用户级别」,一次配置,长期使用。

根据自己的需求任选一个,选择完之后会在对应的目录下生成 agents 这个目录
3)创建子代理方式
是通过 使用 Claude 帮你去生成 subagent ,还是你自己纯手动去配置
推荐选择使用 Claude去帮我们创建。

4)给子代理添加描述
给即将创建的 subagent 添加描述,这个 subagent 具体是干什么的,以及什么时候会被调用。
示例:
BASH
A code improvement agent that scans files and suggests improvements
for readability, performance, and best practices. It should explain
each issue, show the current code, and provide an improved version.

5)选择子代理使用的工具
-
所有工具权限都提供
-
只读工具权限
-
编辑工具权限
-
执行工具权限
-
其他工具权限
根据自己的需要给这个 subagent 合适的工具权限。
例如:代码审查场景建议用「只读权限」,可以防止 AI 误修改代码。
小 tips:
如果你给 Subagent 开了编辑权限,一定要确认它的描述写得非常清楚,否则可能会误改你不想改的文件。

6)选择子代理使用的模型
可以指定一个模型,或者跟主对话使用同样的模型。

7)选择子代理背景颜色
为子代理选择背景颜色,便于您在界面中区分当前运行的是哪个子代理。

8)保存并运行
保存该子代理,无需重启即可立即生效。
在你的当前项目目录下,或者当前用户目录下的 .claude 文件夹下,就能看到 agents 文件夹和里面的 markdown 文件

我们现在就可以使用这个 subagent ,让他帮我们检查一下代码质量。

4、进阶技巧:后台执行
按Ctrl + B 可以让 subagent 在后台执行。这样子代理在执行任务,但是并不影响主代理的使用。你可以继续和 claude 沟通,当 subagent 完成之后会自动通知你

说实话,Subagent 这个功能如果你不用,Claude Code 的价值至少少了一半。尤其是做中大型项目的时候,它真的能节省你很多时间。而且Subagent 的配置很简单,大家都可以动手去试一下。
那你最想用 Subagent 来做什么? 代码审查 ?自动测试 ?或者你现在已经在用 Subagent 做了哪些事情?
欢迎在评论区告诉我 ,如果觉得这篇文章有用,欢迎点赞 + 转发给身边的朋友
更多推荐

所有评论(0)