Skip to content

子代理

Claude Code 中的自定义子代理是专门的 AI 助手,可以被调用来处理特定类型的任务。它们通过提供具有自定义系统提示、工具和独立上下文窗口的特定任务配置,实现更高效的问题解决。

什么是子代理?

子代理是预配置的 AI 人格,Claude Code 可以将任务委派给它们。每个子代理:

  • 有自己的系统提示
  • 可以访问特定的工具集
  • 在独立的上下文窗口中运行

当 Claude Code 遇到与子代理专业领域相匹配的任务时,它可以将该任务委派给专门的子代理,该子代理独立工作并返回结果。

主要优势

  • 专门化的任务处理
  • 独立的上下文管理
  • 可定制的工具访问
  • 团队共享配置

快速开始

要创建您的第一个子代理,在 .claude/agents/ 目录中创建一个 Markdown 文件。

子代理配置

文件位置

子代理存储为具有 YAML 前置内容的 Markdown 文件,位置有两个:

类型位置范围优先级
项目子代理.claude/agents/在当前项目中可用最高
用户子代理~/.claude/agents/在所有项目中可用较低

当子代理名称冲突时,项目级别的子代理优先于用户级别的子代理。

文件格式

每个子代理在具有以下结构的 Markdown 文件中定义:

yaml
---
name: code-reviewer
description: Expert code reviewer for quality and security
tools: Read, Grep, Glob
model: sonnet
---

# Code Reviewer

You are a senior code reviewer...

配置字段

字段必需描述
name使用小写字母和连字符的唯一标识符
description子代理目的的自然语言描述
tools特定工具的逗号分隔列表
model用于此子代理的模型

模型选择

model 字段允许您控制子代理使用的 AI 模型:

  • sonnet - 使用最新的 Sonnet 模型
  • opus - 使用 Opus 模型
  • haiku - 使用快速高效的 Haiku 模型
  • inherit - 使用主对话的模型

管理子代理

使用 /agents 命令(推荐)

/agents 命令提供了一个全面的子代理管理界面,您可以在其中:

  • 查看所有可用的子代理
  • 创建新的子代理
  • 编辑现有子代理
  • 删除子代理

直接文件管理

您也可以通过直接处理子代理的文件来管理它们。

有效使用子代理

自动委派

Claude Code 根据以下因素主动委派任务:

  • 任务描述与子代理描述的匹配度
  • 任务的复杂性和专业性

显式调用

通过在您的命令中提及特定子代理来请求它:

use the code-reviewer subagent to check the auth module

内置子代理

Plan 子代理

Plan 子代理是一个专门的内置代理,设计用于计划模式期间使用。当 Claude 在计划模式(非执行模式)中运行时,它使用 Plan 子代理进行研究并收集有关您的代码库的信息。

示例子代理

代码审查员

yaml
---
name: code-reviewer
description: Expert code reviewer for quality and security
tools: Read, Grep, Glob
---

Review code for best practices, security issues, and maintainability.

调试器

yaml
---
name: debugger
description: Debugging specialist for errors and test failures
tools: Read, Bash, Grep
---

Analyze errors, identify root causes, and provide fixes.

最佳实践

  • 使描述具体且面向行动
  • 限制工具访问权限为每个子代理实际需要的内容
  • .claude/agents/ 中创建项目特定的子代理以供团队共享

aicodex 文档网站