跳到正文

智能体与专业化

用时:1.5 小时 | 难度:⭐⭐ 进阶

目标

为特定任务创建专业化智能体。学习如何将 AI 能力聚焦在特定问题上。


你将学到

  • 什么是智能体,以及它们的价值
  • 使用 AGENT.md 创建自定义智能体
  • 限制智能体能力(沙箱化)
  • 针对特定任务使用智能体
  • 何时使用智能体 vs 直接使用 Claude

什么是智能体?

智能体是专为某一特定任务配置的 Claude Code 特化版本。

示例:代码审查智能体

与其向普通 Claude 请求代码审查(需要切换心智上下文),你可以这样用:

Bash
/agent code-reviewer
Review this function for bugs and performance issues

代码审查智能体:

  • 只处理代码审查
  • 拥有审查专用工具
  • 了解安全漏洞模式
  • 不会被其他任务分散注意力

普通 Claude vs 智能体

方面普通 Claude智能体
范围通用专业化
上下文记住所有内容聚焦于任务记忆
工具全部可用受限集合
速度多任务能力单一任务快速
用途探索、学习重复性、特定任务

创建你的第一个智能体

智能体定义在 .claude/agents/AGENT.md 文件中。

基本结构

Markdown
---
name: code-reviewer
type: agent
description: Reviews code for bugs, performance, and security
auto_invoke: false
requires_approval: true
---

# 代码审查智能体

## 用途
审查代码中的:
- Bug 和逻辑错误
- 性能问题
- 安全漏洞
- 代码风格一致性
- 测试覆盖率

## 工具
- 代码分析
- Git diff 查看器
- 测试运行器
- Lint 工具

## 指令
审查时:
1. 检查空指针和边界情况
2. 寻找性能瓶颈(O(n²)、嵌套循环)
3. 扫描安全问题(SQL 注入、XSS)
4. 验证测试覆盖了变更
5. 友善地建议改进

## 使用示例
/agent code-reviewer
Review src/auth.js for security issues

文件位置

放在你的项目中:

Plain
my-project/
└── .claude/
    └── agents/
        └── code-reviewer.md

使其可用

在项目 CLAUDE.md 中引用它:

Markdown
## 可用智能体
运行方式:/agent [名称]

- **code-reviewer** - 代码质量与安全审查
  用法:/agent code-reviewer <描述>
  
- **test-writer** - 为代码生成测试
  用法:/agent test-writer <文件路径>

智能体设计模式

模式 1:质量检查器

Markdown
---
name: quality-auditor
description: Audits code quality metrics
---

# 质量审计智能体

## 用途
检查代码:
- 测试覆盖率(<80% = 不通过)
- 类型安全(TypeScript 严格模式)
- 代码重复
- 圈复杂度

## 工具
- 代码分析
- 覆盖率报告
- 类型检查器

## 输出格式
- ✅ 通过:[指标] = X
- ⚠️ 警告:[指标] = X
- ❌ 不通过:[指标] = X

## 评分
基于所有指标打分 /100。

模式 2:安全专家

Markdown
---
name: security-auditor
description: Scans code for vulnerabilities
requires_approval: true
---

# 安全审计智能体

## 用途
发现安全漏洞:
- 注入攻击(SQL、NoSQL、命令注入)
- 认证/授权问题
- 加密错误
- 数据泄露风险
- OWASP Top 10

## 工具
- 静态分析
- 依赖检查器
- 密钥检测

## 严重级别
- CRITICAL:立即停止工作
- HIGH:合并前修复
- MEDIUM:在下一个冲刺中修复
- LOW:考虑修复

模式 3:文档撰写者

Markdown
---
name: doc-writer
description: Generates documentation
---

# 文档撰写智能体

## 用途
创建或改进:
- README 文件
- API 文档
- 架构文档
- 用户指南
- CHANGELOG 条目

## 输出格式
- 清晰的标题
- 每个功能有代码示例
- 链接到相关文档
- 序列步骤用有序列表

## 风格
- 对初学者友好
- 术语必须附带解释
- 展示前后对比示例

智能体能力与限制

默认能力

所有智能体都能:

  • 读取文件(Git 感知)
  • 分析代码
  • 编写文档
  • 检查语法
  • 运行测试

限制能力

使用 capabilities 对智能体进行沙箱化:

Markdown
---
name: code-reviewer
capabilities:
  - read_files      # 可以读取代码
  - run_tests       # 可以运行测试套件
  - check_syntax    # 可以 lint
  - write_comments  # 可以建议变更但...
  - NO: commit      # ...不能提交
  - NO: push        # ...不能推送到 Git
---

这个智能体能做审查,但不能意外推送有问题的代码。

常见限制

Markdown
# 分析器(只读)
capabilities:
  - read_files
  - run_tests
# 不能修改任何内容

# 重构智能体(可写,不能推送)
capabilities:
  - read_files
  - write_files
  - run_tests
  - NO: commit
  - NO: push
# 可以改代码,但你在推送前审阅

# 完整智能体(无限制)
capabilities:
  - all
# 可以做任何事(谨慎使用)

在工作流中使用智能体

调用智能体

Bash
/agent code-reviewer
Review the changes I just made to src/auth.js

Claude 切换到代码审查智能体并作出响应。

链式调用智能体

顺序使用多个智能体:

Bash
# 步骤 1:测试写作智能体生成测试
/agent test-writer
Write tests for src/utils/validators.js

# 步骤 2:代码审查智能体检查测试
/agent code-reviewer
Review the tests that were just written

# 步骤 3:安全审计智能体扫描
/agent security-auditor
Check the tests and code for vulnerabilities

智能体 + 计划模式

对于高风险操作,在智能体内使用 /plan

Bash
/agent refactoring-specialist
/plan
Refactor the payment processing module to use async/await

练习:创建测试写作智能体

第一步:创建智能体文件

Bash
cat > .claude/agents/test-writer.md << 'EOF'
---
name: test-writer
description: Generates comprehensive tests
capabilities:
  - read_files
  - write_files
  - run_tests
---

# 测试写作智能体

## 用途
为以下内容生成高质量测试:
- 单元测试(纯函数)
- 集成测试(组件交互)
- 边界情况和错误条件
- 性能测试

## 风格
- Arrange-Act-Assert 模式
- 描述性测试名称
- 每个测试只关注一个行为
- 目标覆盖率 70%+

## 工具
- 测试框架(Jest、pytest 等)
- Mock 库
- 断言库

## 输出
- 测试文件与源码同目录
- 命名:[file].test.js 或 [file].spec.js
- 包含 setup/teardown 代码
EOF

第二步:在 CLAUDE.md 中引用

Markdown
## 可用智能体
- test-writer:为任何函数或模块生成测试
  用法:/agent test-writer <文件路径>

第三步:使用它

Bash
/agent test-writer
Write tests for src/utils/formatDate.js

智能体会:

  1. 读取 formatDate.js
  2. 理解其功能
  3. 生成全面的测试
  4. 向你展示测试文件

第四步:审阅

接受前检查测试:

  • 是否覆盖了边界情况?
  • 命名是否清晰?
  • 能否实际运行?

何时使用智能体

使用智能体的情况:

✅ 同一任务重复执行(代码审查、测试、安全审计)✅ 需要专注型 AI 处理一项工作✅ 需要限制能力(安全性)✅ 构建团队工作流✅ 任务有明确的成功标准

使用普通 Claude 的情况:

✅ 在探索/学习✅ 任务是全新的✅ 需要通用帮助✅ 在调试复杂问题✅ 需要来回对话交流


最佳实践

应该做

✅ 给智能体清晰、单一的用途

✅ 在智能体定义中记录输出格式

✅ 限制不需要的能力

✅ 先用示例任务测试智能体

✅ 对智能体进行版本控制(放在 .claude/agents/)

不应该做

❌ 创建用途重叠的智能体(令人困惑)

❌ 让智能体过于通用(违背了专业化的初衷)

❌ 完全信任智能体(始终要审阅)

❌ 为一次性任务创建智能体(直接用 Claude 就好)


验证:以下都满足说明你已准备好

✓ 已创建至少一个自定义智能体

✓ 理解智能体与 Claude 的用途区别

✓ 能限制智能体的能力

✓ 知道如何调用智能体(/agent name)

✓ 已在真实任务上测试过你的智能体


下一步

模块 05:Skills 与自动化涵盖:

  • 创建可复用的 Skills(知识模块)
  • 打包能力以便分发
  • Skills 自动调用
  • 构建你的自定义知识库

这将教你如何将知识封装,让 Claude 跨会话记住它。


完成模块 04? → 进入 模块 05:Skills 与自动化


来源:飞书 · AI Spark 知识库 | 原文(最新版):https://lcnniolukk80.feishu.cn/wiki/VWN1wfb3Xi8Fo8kNQRqc4EbQnlg | 归档:2026-06-04