3分钟速通Claude Code Subagent,真比你想的简单
之前有分享一篇claude code入门教程,里面提到了subagent,这篇再来详细介绍下在cc中subagent这个功能,具体是什么、有什么好处、怎么用。
是什么
subagent,顾名思义,它本质还是一个agent,只不过是一个子agent,而主agent自然就是claude code。你可以设置使用不同的subagent来扮演不同的角色,拥有不同的专长,比如让他来专门写代码、专门做需求分析、专门测试、专门做设计等,这样就可以在claude code中扩展对应的能力,完成较为复杂的需求。
1⃣组成部分:
每个subagent是一个md文件,核心主要由5部分组成:
-name:agent名字;
-description:对于agent的描述,核心说明这个agent的作用是什么,claude要在什么情况下调用这个agent;
-tools:这个agent能调用的工具,可以设置多个工具;
-model:agent使用的模型;
-system:系统提示词,该agent的角色定位、规则限制、输出风格、工作流程等;
其实细看下还是和常规的agent逻辑一样,核心还是描述及系统提示词、工具、模型这几部分,其中系统提示词及描述尽可能详细,还可以在里面添加示例,让agent 更好的理解你的诉求。
2⃣文件位置:
这个md文件路径是在claude/agent里面,同样分为用户级和项目级,其中:
-用户级:文件放在 (~/.claude/agents/),在该用户下新建的所有项目都适用;
-项目级:文件放在(.claude/agents/),只适用于创建该agent时所属的项目;
3⃣产品逻辑:
subagent的产品逻辑是将自己处理的结果返回给claude code,claude code会将各个子agent返回的这些结果统一处理后将最终内容输出给你,所以要注意subagent的输出对象不是你,而是claud code,claude code的输出对象才是你。
有什么好处
看完它的组成部分和产品逻辑,再来看下subagent有什么好处,主要由以下几点:
1⃣优点:
-上下文隔离:这些agent都有自己的独立上下文,和主agent一样,同样是200k的空间;这意味着你既能有更多空间去处理任务,同时这些上下文还不会污染到主会话,完全在自己的独立空间里;
-角色专一:可以对每个子agent都设置一个专职角色来约束其行为和聚焦其能力,赋予这个subagent极强的专业能力;
-可复用性:每个agent都是可复用的,只要建完一个agent后,你就可以在多个项目中复用自己这个agent。
2⃣场景:
所以subagent的存在提供的最大好处就是给了你一套武器库,可以在面对具体任务时自由选择武器,发挥出每个角色的最佳状态。
创建及使用
1⃣创建:
其实创建subagent流程很简单,在cc里进入agent管理页面跟着一步步做就行了:
-在终端中输入/agent命令
-点击Create new agent ,创建agent
-选择是创建项目级agent还是用户级agent
-创建方式可以选择ai生成或手动编写
-比如选AI生成,把上面提到的desciption、system这些关键信息填进去,核心是一定要说清楚其角色及功能,尽可能详细,然后就会开始自动生成agent
-接着会让你选择工具插件,勾选你要让这个agent使用的工具
-选模型,Inherit from parent的意思是使用和你主会话同一个模型
-最后选颜色,这个意思是通过对应颜色和快速区分是否是subagent在处理任务,以及快速区分不同的agent,如果是它在处理任务就会显示对应的颜色
这样就创建结束了,你会看到这个agent的所有信息。
-手动自定义创建agent也很简单,在cc里agent命令选择人工创建即可或者直接创建一个md文档,按第一步说的把subagent的个几个核心部分如name、description、model、tool、system写好,然后把该文档放到用户级(~/.claude/agents/)或项目级(.claude/agents/)对应的文件夹里即可。
2⃣使用:
创建完毕后,使用方式有2种:
-自动调用:claude code会根据你的任务自己去判断是否进行subagent调用,以及具体调用哪个agent;
-显示调用:直接显性调用,在输入时直接说用某某agent或@某某agent处理该任务即可。
在使用时,有一点需要注意,subagent因为本身是有自己的独立上下文,彼此之间是没有记忆的,所以最好的方式还是建议通过文档的形式,通过文档做中介,确保subagent不会遗漏主会话及其他subagent的上下文记忆,最大程度的满足诉求。
最后再推荐一个github项目,里面有100多个常见的agent,按照文档下载安装即可使用,然后在执行任务时就可以组装你的武器库了。地址见下方⬇️⬇️
点击图片查看原图