Claude Code 从零到精通:多Agent协作开发完全教程-第八章:Subagents 子Agent
第八章:Subagents 子Agent
8.1 什么是 Subagent?
Subagent 是在独立上下文中运行的专业 Agent,用于保护主对话的上下文不被污染。
Plaintext
┌──────────────────────────────────────────────────┐
│ Subagent 工作模式 │
├──────────────────────────────────────────────────┤
│ │
│ 主对话 (上下文有限且珍贵) │
│ ┌────────────────────────────────────┐ │
│ │ 用户: "帮我了解认证系统怎么工作的" │ │
│ │ │ │
│ │ Claude: 启动 subagent 去调研... │ │
│ │ │ │ │
│ │ ▼ │ │
│ │ ┌──────────────────────┐ │ │
│ │ │ Subagent (独立上下文) │ │ │
│ │ │ - 读取 auth 相关文件 │ │ │
│ │ │ - 分析 token 刷新逻辑 │ │ │
│ │ │ - 检查 OAuth 工具 │ │ │
│ │ │ - 生成总结报告 │ │ │
│ │ └──────────┬───────────┘ │ │
│ │ │ │ │
│ │ ▼ (只返回总结) │ │
│ │ Claude: "认证系统使用 JWT..." │ │
│ │ (主上下文保持干净!) │ │
│ └────────────────────────────────────┘ │
│ │
│ 好处: │
│ ✅ 调研过程不占用主上下文 │
│ ✅ 可以读大量文件而不会让主会话变臃肿 │
│ ✅ 天然隔离,任务失败不影响主对话 │
│ │
└──────────────────────────────────────────────────┘
8.2 创建自定义 Subagent
在 .claude/agents/ 目录下创建:
Markdown
<!-- .claude/agents/security-reviewer.md -->
name: security-reviewer
description: 审查代码中的安全漏洞
tools: Read, Grep, Glob, Bash
model: opus
你是一位资深安全工程师。审查代码时关注:
- 注入漏洞(SQL注入、XSS、命令注入)
- 认证和授权缺陷
- 代码中的密钥或凭证
- 不安全的数据处理
提供具体的行号引用和修复建议。
使用方式:
Plaintext
使用 security-reviewer 子agent 审查最近的代码变更
8.3 使用 Subagent 的最佳场景
场景 说明
代码库调研 探索大型代码库时不污染主上下文
代码审查 独立的上下文做更客观的审查
方案研究 同时调研多个方案不互相干扰
测试验证 验证实现是否正确