子代理
用于特定任务工作流的专业AI助手
什么是子代理?
子代理是Claude Code中处理特定类型任务的专业AI助手。每个子代理都有自己的上下文窗口、自定义系统提示和特定的工具访问权限。
特定目的
每个子代理都有定义的专业领域
独立上下文窗口
与主对话分离的上下文
可配置工具
每个子代理的特定工具访问
自定义系统提示
为每个代理定制的指令
NEW in 2.1
新的子代理功能
⚡
异步子代理
使用Ctrl+B在后台异步运行子代理
🔀
上下文分叉
在技能frontmatter中使用context: fork进行隔离执行
🎯
代理钩子
在代理frontmatter中定义PreToolUse、PostToolUse、Stop钩子
🔄
禁用代理
在disallowedTools中使用Task(AgentName)语法禁用特定代理
内置子代理
Explore
用于代码库搜索和分析的快速只读代理
Model: Haiku (fast)
Tools: Read-only
Plan
在计划模式下收集上下文的研究代理
Model: Inherits
Tools: Read-only
general-purpose
用于复杂多步骤任务的通用代理
Model: Inherits
Tools: All tools
代理 Frontmatter 字段
| Field | Description | Example |
|---|---|---|
| model | Override model selection | opus, sonnet, haiku, inherit |
| skills | Enable specific skills | ["code-review", "testing"] |
| hooks | Define agent-specific hooks | ["pre-review"] |
| permissionMode | Permission handling mode | inherit, default, bypassPermissions |
| apiKeyEnvVar | Custom API key env variable | CUSTOM_API_KEY |
| enableUndo | Enable undo capability | true, false |
| tools | Restrict available tools | ["Read", "Edit", "Bash"] |
agent.md frontmatter example
--- model: opus skills: - code-review hooks: - security-check permissionMode: inherit tools: - Read - Edit - Grep ---
快速开始
1. 打开子代理界面
/agents2. 创建新代理
选择"创建新代理"并选择项目级别或用户级别
3. 定义代理
- 描述代理的目的
- 选择要授予访问权限的工具
- 自定义系统提示
4. 使用代理
> Use the code-reviewer subagent to review my changes子代理示例
代码审查器
用于质量、安全性和最佳实践的代码审查
Tools: Read, Grep, Glob, Bash
调试器
错误分析和修复实现
Tools: Read, Edit, Bash, Grep
测试自动化
自动生成和运行测试
Tools: Read, Write, Bash
最佳实践
1
设计专注的代理
创建具有单一明确责任的子代理
2
编写详细的提示
包含具体的指令和示例
3
限制工具访问
为了更好的安全性只授予必要的工具
4
版本控制
将项目子代理纳入版本控制