大家好,我是子昕,一个干了10年的后端开发,现在在AI编程这条路上边冲边摸索,每天都被新技术追着跑。
Claude Code最近推出的Sub Agents功能让我很感兴趣,这可能是AI编程工具的一个重要进化方向。
花了几天时间深度研究这个功能,发现它确实解决了传统AI编程的一个核心痛点:上下文混乱。
今天就来详细分析一下这个技术,并手把手教大家如何使用。
Sub Agents是什么?解决了什么问题?
传统的AI编程助手就像一个什么都会的全栈工程师,你跟它聊前端,它能给建议;聊后端,它也能设计;聊数据库,它还能优化。
但问题是,当你在一个对话中混合讨论多个领域时,AI经常会产生混乱。
比如你先讨论React组件设计,然后转到讨论数据库表结构,AI可能会把前端的概念带到后端设计中,或者在设计API时考虑UI组件的状态。
Sub Agents的核心思想很简单:既然一个通用AI容易混乱,那就创建多个专业化的AI,每个都专注自己的领域。
Sub Agents的技术架构
独立上下文机制
每个Sub Agent都有完全独立的上下文窗口。
当你调用backend-architect
时,它只关注后端架构设计,不会被之前的前端讨论影响。当你调用security-auditor
时,它专注于安全分析,有完整的安全知识库和检查清单。
智能任务路由
Claude Code会根据你的请求内容,自动判断应该调用哪个Sub Agent。这个判断基于每个Agent的description
字段,以及请求中的关键词和上下文。
文件系统存储
每个Sub Agent本质上是一个Markdown文件,存储在:
- 项目级:
.claude/agents/
(优先级更高) - 用户级:
~/.claude/agents/
(全局可用)
文件格式采用YAML frontmatter + Markdown body:
yaml
---
name: backend-architect
description: "专门设计RESTful API、微服务架构和数据库设计"
model:sonnet
tools: [file_search, bash, file_edit]
color: blue
---
你是一个资深后端架构师...
(详细的专业提示词)
手把手教程:创建和使用Sub Agents
第一步:启动Agent管理界面
输入/agents
命令:

选择Create new agent
:

第二步:选择Agent级别

项目级 vs 全局级的区别:
- 项目级:只在当前项目中可用,适合项目特有的专家
- 全局级:所有项目都能使用,适合通用专家
第三步:选择创建方式

推荐选择"Generate with Claude",让Claude帮你生成专业的配置。
第四步:编写Agent描述

这一步非常关键! Agent的描述决定了什么时候会被自动调用。我这里使用了开源项目中前端开发专家的描述。
第五步:配置工具权限

可以看到有这些工具可选:

直接回车会继承主窗口的所有工具权限,这对新手来说是最简单的选择。
第六步:选择模型和颜色
选择AI模型:

选择显示颜色:

选颜色可不是为了让你装逼用的,而是为了在终端中区分不同的Agent输出。
第七步:确认生成
Claude Code会根据你的描述生成完整的agent内容,直接回车确认:

生成成功展示在列表中:

Agent管理功能
创建完成后,你可以对Agent进行查看、编辑和删除等操作:

可以直接修改agent的配置内容,也可以编辑可使用的工具、模型和颜色等:

直接在系统编辑器中打开修改agent配置内容:

手动配置Agent
上面的案例是让Claude Code根据描述自动生成完整的Agent内容,另一种就是手动配置,区别是你可以自定义System Prompts 系统提示词,其他的都一样,这里不再详述,感兴趣自行尝试。

当然,从上面的流程也能看出,最终就是生成一个Agent的配置md文件,所以我们直接把文件放到Agents对应的目录下也是可以的。
实战案例:多Agent协作开发博客系统
使用现成的优质Agents
手动创建每个Agent比较麻烦,我推荐使用现成的高质量Agent库:
这个仓库包含50个专业的Sub Agents,涵盖了全栈开发的各个领域。

可以使用git克隆或者直接下载到Agents的全局目录下:
bash
cd ~/.claude
git clone https://github.com/wshobson/agents.git
多Agent并发协作实战
我用三个专业Agent来开发一个博客系统:
bash
用backend-architect设计一个个人博客平台的完整架构,包括用户认证、文章管理、评论系统
用frontend-developer设计前端页面
用code-reviewer审查代码
backend-architect和frontend-developer同时进行,生成完一个模块代码之后code-reviewer开始介入审查代码
用中文回答

可以看到,后端和前端两个Agent真的在并发工作:

当代码生成完成后,code-reviewer自动介入进行审查:

Code Reviewer的专业能力
虽然这次演示因为限制中断了,但我之前用code-reviewer审查过其他项目,效果很专业:

专业的code-reviewer能发现安全漏洞、性能问题、代码规范问题等,比静态分析工具更全面。
Sub Agents的核心优势
1. 专业化深度
每个Agent都有针对特定领域优化的提示词,通常长达几百行,包含该领域的最佳实践、常见问题、检查清单等。这比通用AI的浅层建议要专业得多。
2. 上下文隔离
传统AI在处理复杂项目时容易出现上下文污染
,前面讨论的内容会影响后面的回答。Sub Agents通过独立上下文彻底解决了这个问题。
3. 并行处理能力
可以同时启动多个Agent处理不同方面的任务,这在复杂项目开发中特别有用。
4. 灵活的调用方式
- 显式调用 :
@agent-security-auditor 检查安全问题
- 自动路由:Claude根据请求内容自动选择合适的Agent
- 协作模式:多个Agent按依赖关系串行或并行工作
使用中的注意事项
Token消耗会增加
使用Sub Agents确实会比普通对话消耗更多tokens,因为:
- 每个Agent都有独立的上下文
- 专业的提示词通常比较长
- 多Agent协作需要更多的协调沟通
不过这个增加是值得的,因为结果的质量和专业度有明显提升。
Agent选择的准确性
Claude Code的自动Agent选择机制大部分时候很准确,但偶尔也会选错。如果发现选择不当,可以显式指定Agent名称。
模型选择策略
- 复杂的架构设计:使用Sonnet模型
- 代码审查:使用Sonnet模型
- 简单的格式化、文档生成:可以使用Haiku模型节省成本
技术深度分析
智能路由机制
Claude Code通过分析用户请求中的关键词、上下文信息,以及各个Agent的描述字段,来决定调用哪个Agent。这个过程是基于语义理解的,不是简单的关键词匹配。
Agent间通信
虽然每个Agent有独立上下文,但它们可以通过主对话线程进行间接通信。主Claude作为协调者,整合不同Agent的输出。
配置文件结构
yaml
---
name: unique-agent-name # 必须唯一
description: "详细的能力描述" # 用于自动路由
model: sonnet # 可选,默认使用系统模型
tools: [tool1, tool2] # 可选,默认继承所有工具
color: blue # 可选,终端显示颜色
---
# Agent的详细提示词
你是一个专业的...
总结
Sub Agents代表了AI编程工具从通用助手
向专家团队
的重要进化。它解决了传统AI在处理复杂、多领域问题时的上下文混乱问题,提供了更专业、更准确的建议。
虽然会增加一些token消耗,但对于复杂项目来说,这种专业分工带来的效率提升是很明显的。特别是在需要跨多个技术领域协作的场景下,Sub Agents的价值更加突出。
如果你经常处理复杂的全栈项目,或者需要高质量的代码审查和架构建议,Sub Agents绝对值得尝试。