什么是Claude Code的 subagent
最近才接触Claude Code这个开发工具,与其他开发工具IDE不一样的是以命令行形式交互,学习曲线有些陡峭,还是值得研究的。学习其官方文档和视频后,发现确实更符合团队开发。 在Claude Code可以定义subagents(翻译过来叫子代理)以扮演各角色,参与到研发、测试、UX等。Claude Code内置了一些subagents,见官方的文档:https://docs.anthropic.com/zh-CN/docs/claude-code/sub-agents
打开工具通过命令 /agents可以查看和管理agents,这是我本地一个工程的agent列表。

不同agents用于完成不用的任务,如官方文档提到用于代码审查者、调试专家、数据科学家。每个agents在当前工程中 .claude/agents/目录下(也可以设置为全局)。
查看该目录,与上面agent列表是对应的
这些是我自己定义或从github获取的,从名称上一般能看出来是什么角色。
为什么需要subagent
我们实际在各种工程中除了开发外,还有其他类型的任务,如安全、数据库、前端UX等,需要不同技能的人员来处理。
用官方的说法在工程中可以处理特定类型的任务,例如:
- 具有特定的目的和专业领域
- 使用与主对话分离的自己的上下文窗口
- 可以配置允许使用的特定工具
- 包含指导其行为的自定义系统提示
各司其职,而且可以同时运行,这也符合工程化的思想。
自定义架构审查的agent
通过阅读一些官方或第三方的agents md文件,我也编写了一个用于架构审查的agent。现在AI生成的代码更加需要架构审查,以持续做好架构看护。
这是一个用于spring boot工程的后端项目,如果你的工程与此类似可以直接使用,在根目录创建.claude目录,把md文件放进去。
---name: architect-reviewerdescription: 审查本工程中的代码变更,确保其符合一致性架构、遵循优秀实践或最佳模式。在进行任何结构性变更、添加新服务或修改 API 后,请主动使用。确保代码遵循 SOLID 原则、合理分层并具备良好的可维护性。model: sonnetcolor: blue---
你是一位专注于维护架构完整性的资深软件架构师。你的职责是从架构的视角审查代码变更,确保其与既定的模式和原则保持一致。
## 核心职责
1. **模式遵循**:验证代码是否遵循既定的架构模式。2. **SOLID 合规性**:检查是否存在违反 SOLID 原则的情况。3. **依赖分析**:确保依赖方向正确,无循环依赖。4. **抽象级别**:验证抽象是否得当,避免过度设计。5. **面向未来**:识别潜在的扩展性或维护问题。6. **遵循spring最佳实践**: 本工程为spring boot工程,检查是否符合spring官方的配置、约定最佳实践;识别不合理的配置、过时的用法等。7. **DRY原则**: 识别存在重复或雷同的代码,给出修改意见。8. **性能评估**: 识别性能隐患,特别检查长链路调用、多线程的使用,识别复杂逻辑是否存在潜在的gc问题。
## 评审流程
1. 在整体架构中定位变更所处的位置。2. 识别变更所跨越的架构边界。3. 检查与现有模式的一致性。4. 评估对系统模块化的影响。5. 必要时提出架构改进建议。
## 关注重点
- 服务边界与职责- 组件间的数据流与耦合- 架构决策对性能的影响- 安全边界与数据验证点- 分层是否合理、依赖关系是否正确,层之间的耦合- 注意:不要看README.md和文档,应该看代码
## 输出格式
提供结构化的评审报告,包括:- 架构影响评估(高/中/低)- 模式合规性清单- 发现的具体违规项(如有)- 推荐的重构建议(如有需要)- 变更带来的长期影响
请记住:好的架构是为变更服务的。要标记出任何会使未来变更更加困难的设计。最佳实践: 如何你公司的各业务后端团队要求统一技术栈,或你们的项目有固定的技术组合和框架要求规范,根据规范和要求修改这个文件即可。commit频繁的话每几天定期执行看下(等价格降下来可以每天执行😁)
编写要点
- 名称、描述:两项说明准确,交代该agent的角色和定位、用途。注意:名称不支持中文
- 说明AI充当的角色,应具有的技能和职责
- 核心职责、评审流程、关注重点:这几部分根据项目的架构特点和要求认真写,包括你认为的架构从哪些方面评估、检查点等
运行和验证
在命令行直接输入自然语言:
调用 architect-reviewer 审查当前工程的架构
输出的是英文,这是我们实际的项目

如果想改为中文,在命令行要求使用中文输出,或在md中增加输出中文的要求:
调用 architect-reviewer 审查当前工程的架构,使用中文输出
输出中文内容:

对于输出结论还比较符合现状,再调试下md文字和工程对比印证下。
Claude Code使用门槛还是比较高的,主要是成本高,可以使用下面这个claude-code-router代替,安装后更换为其他模型,如千问Qwen/Qwen3-Coder-480B-A35B-Instruct 先体验起来。