冷蟊初退 孤灯野澜 志起鸡鸣 墓不悲秋 技术交流 软件开发 商业合作 加Q:411239339

Day 7 子代理:让 AI 自己带团队

浏览:9次阅读
没有评论

共计 2642 个字符,预计需要花费 7 分钟才能阅读完成。

Claude Code 从入门到脱发 · Day 7

到目前为止,Claude Code 是你的独家助手——你说一件事,它做一件事。效率不低,但遇到大型任务时还是有瓶颈。

比如你说 " 帮我重构这个模块 ",它得先分析代码、再改文件、改完跑测试、测试不过再修。这些步骤只能串行执行,因为只有一个 " 脑子 " 在干活。

子代理(Subagent)解决的就是这个问题。Claude Code 可以派出多个子代理,每个负责一个独立任务,并行执行。主代理负责协调,子代理负责干活。

就像一个技术负责人,不用事事亲力亲为,把任务分给团队成员,自己负责把关和整合。

本文你将学到:

  • 子代理是什么,跟直接对话有什么区别
  • Claude Code 的内置 Agent 工具
  • 如何有效利用子代理并行执行任务
  • Explore 子代理和自定义子代理

阅读时间 :8 分钟 | 实操时间 :20 分钟 | 难度:中级


子代理是什么

子代理是 Claude Code 在主对话之外启动的独立 AI 实例。每个子代理有自己的上下文窗口、工具权限和专注目标。

关键区别:

特性 直接对话 子代理
上下文 共享主对话上下文 独立上下文窗口
干扰 搜索结果污染主上下文 结果隔离,只返回摘要
并行 串行执行 可以并行
适合 简单直接的任务 探索、研究、独立子任务

打个比方:直接对话像你跟助理面对面沟通,事无巨细都在同一个会议室里讨论。子代理像你发邮件给不同团队成员分配任务,各自回去做,做完把结果汇报给你。


内置 Agent 工具

Claude Code 有一个内置的 Agent 工具,你不需要特殊配置就能使用。在对话中,Claude Code 会在合适的时候自动使用子代理。

最常见的场景是 Explore 子代理——当 Claude Code 需要在代码库中进行大量搜索时,它会启动一个 Explore 子代理去翻代码,这样搜索过程的大量中间结果不会塞满主对话的上下文。

你也可以主动触发:

> 用一个子代理帮我分析 src/services/ 目录下所有文件的职责,另一个子代理分析 src/utils/ 的所有导出函数

Claude Code 会启动两个子代理并行工作,各自返回分析结果。


什么时候该用子代理

适合用子代理的场景

1. 代码库探索

> 帮我找出这个项目里所有跟用户认证相关的代码

这种开放式搜索可能要翻几十个文件。用子代理去翻,主对话保持干净。

2. 多个独立任务并行

> 同时做三件事:> 1. 给 UserService 写单元测试
> 2. 给 OrderService 写单元测试
> 3. 检查所有 API 接口的错误处理是否完善

三个任务互不依赖,可以并行。

3. 代码审查

> 帮我审查最近的改动,关注安全性、性能和代码风格三个维度

可以起三个子代理分别关注不同维度,最后汇总。

4. 调研和比较

> 帮我比较 Zustand、Jotai 和 Redux Toolkit 三个状态管理方案,分别评估学习成本、性能和生态

不适合用子代理的场景

  • 简单的单文件修改
  • 前后有依赖关系的任务(必须串行的)
  • 需要频繁跟你确认的交互式操作

自定义子代理

除了内置的通用子代理,你还可以定义专用子代理。自定义子代理放在 .claude/agents/ 目录下。

创建一个代码审查子代理

创建文件 .claude/agents/code-reviewer.md

---
name: code-reviewer
description: 专业的代码审查助手
tools:
  - Read
  - Glob
  - Grep
model: claude-sonnet-4-6
---

你是一个资深代码审查员。审查代码时关注以下维度:1. 安全性:是否有注入、XSS、硬编码密钥等问题
2. 性能:是否有 N+1 查询、不必要的渲染、内存泄漏风险
3. 可维护性:命名是否清晰、函数是否过长、职责是否单一
4. 错误处理:异常是否被正确捕获和处理

输出格式:- CRITICAL:必须修复
- WARNING:建议修复
- INFO:可以改进

然后在 Claude Code 中:

> /code-reviewer 帮我审查 src/services/payment.ts

创建一个测试助手子代理

创建文件 .claude/agents/tdd-guide.md

---
name: tdd-guide
description: 测试驱动开发助手
tools:
  - Read
  - Write
  - Edit
  - Bash
  - Glob
  - Grep
---

你是 TDD 教练。严格按照以下流程工作:1. RED:先写失败的测试
2. GREEN:写最少的代码让测试通过
3. REFACTOR:重构代码,保持测试通过

每一步都要告知用户当前阶段,并等待确认后再进入下一步。

子代理的上下文管理

子代理最大的价值之一是保护主上下文的干净。

想象你在主对话里让 Claude Code 搜索一个大型代码库——它可能要 Grep 几十次、Read 十几个文件,这些中间结果全部堆在主上下文里,很快就会塞满上下文窗口,导致响应变慢甚至触发自动压缩。

用子代理的话:

  1. 主代理派出子代理去搜索
  2. 子代理在自己的上下文里翻了 50 个文件
  3. 子代理把精炼后的结论返回给主代理
  4. 主代理的上下文只收到一个简洁的摘要

干净、高效、省 Token。


团队协作:Agent Teams

Claude Code 还支持更高级的 Agent Teams 功能——多个代理组成团队协作。你可以定义一个 team-lead 代理来协调多个专业代理:

  • 一个负责前端
  • 一个负责后端
  • 一个负责测试
  • team-lead 分配任务、收集结果、做最终决策

这个功能比较高级,适合复杂的大型项目。如果你的需求还没到这个程度,内置的子代理功能已经足够。


常见问题 Q&A

Q1:子代理的对话内容我能看到吗?

子代理的执行过程会在 Claude Code 界面里显示,你可以看到它在做什么。但它的详细中间过程不会污染主对话上下文。

Q2:子代理能用 MCP 工具吗?

可以。自定义子代理可以在配置中指定它能使用的 MCP 工具。你可以创建一个专门的数据库查询子代理,只给它数据库 MCP 的权限。

Q3:子代理会额外收费吗?

子代理消耗独立的 Token,所以确实会增加费用。但因为它的上下文更小更聚焦,通常比在主对话里做同样的事情更省 Token。省钱的前提是:别为简单任务启动子代理。


小结

今天学了子代理的用法:

  • 子代理是独立的 AI 实例,有自己的上下文窗口
  • 核心价值:并行执行、保护主上下文干净
  • 适合探索、调研、独立子任务、代码审查等场景
  • 可以创建自定义子代理专注特定任务

子代理让 Claude Code 从 " 单兵作战 " 升级到 " 指挥团队 "。但要指挥好团队,你得有好的 " 作战手册 "。

明天 Day 8,我们聊 Skills 和自定义 Agents——如何打造可复用的 AI 工作流,让常见任务一键执行。


系列进度:7/10

正文完
创作不易,扫码加点动力
post-qrcode
 0
果较瘦
版权声明:本站原创文章,由 果较瘦 于2026-03-29发表,共计2642字。
转载说明:除特殊说明外本站文章皆由果较瘦原创发布,转载请注明出处。