07. Agent 使用

什么是 Agent

在 Claude Code 中,Agent 是拥有独立上下文的子任务执行者。你可以派一个 Agent 去调研,主对话继续做别的事,Agent 完成后把结论带回来。

类比:Agent 就像你派出去的助理,各自独立工作,完成后向你汇报。

Agent 的核心特点

特点说明
独立上下文Agent 有自己的对话历史,不污染主对话
工具受限可指定 Agent 能用哪些工具
可并行多个 Agent 可以同时跑
适合"研究类"任务调研、扫描、写文档初稿

几种常用的 Agent 类型

Explore(只读搜索)

> 用 Explore agent 调研一下这个项目里所有处理用户输入的地方

特点:

  • 只读,不能修改文件
  • 适合"先调研再决策"
  • 比主对话便宜

Plan(规划)

> 用 Plan agent 帮我设计一个分布式爬虫的架构,先别写代码

特点:

  • 只产出方案,不执行
  • 适合大任务前的设计

general-purpose(通用)

> 用 general-purpose agent 帮我把 docs/ 下所有 markdown 翻译成英文

特点:

  • 能读写文件
  • 适合隔离的子任务

claude-code-guide(专用)

> claude-code-guide agent 帮我查一下 /loop 命令怎么用

特点:

  • 专门回答关于 Claude Code 自身的问题
  • 推荐在不确定时优先用它,而不是猜

派发 Agent 的最佳实践

1. 任务要明确

❌ 不好:

去看看这个项目

✅ 好:

在 src/ 目录下找到所有读外部 API 的函数, 列出文件名、函数名、调用了哪个 API。 不要修改任何文件,只输出清单。

2. 限定范围

只看 src/payment/ 目录,不要看其他模块。 只输出最终清单,不要中间过程。

3. 指定输出格式

输出一个 Markdown 表格,列:文件名、函数名、复杂度(O 记号)、建议。

4. 并行派多个

调研型任务可以并行:

同时派 3 个 Explore agent:

  • agent1: 调研项目里所有的数据库迁移脚本
  • agent2: 调研项目里所有的外部 HTTP 调用
  • agent3: 调研项目里所有的配置文件 每个 agent 输出独立的清单,然后我们汇总。

Agent 适合/不适合的场景

适合不适合
调研代码库主对话当前正在处理的任务
写独立文档需要多轮迭代的任务
跑独立分析频繁依赖主对话上下文
隔离测试新方案修改正在调试的代码

Agent vs Skill

维度AgentSkill
触发显式派发自动/显式
上下文独立注入主对话
适合隔离任务标准化流程

简单记忆:Skill 是"加能力",Agent 是"派助理"。

在教学场景中的用法

用例 1:课程作业初步评估

> 派一个 general-purpose agent 读 students/ 目录下所有 Python 作业文件,
> 检查每份作业能否运行、基本逻辑是否正确,
> 给每个学生输出一份初评(不含评分,只列优点和潜在问题)

用例 2:批量调研技术选型

> 并行派 3 个 Explore agent 分别调研:
> - Web 框架:Flask vs FastAPI vs Django
> - 数据库:SQLite vs PostgreSQL vs MongoDB
> - 前端:React vs Vue vs Svelte
> 每个 agent 给我一份不超过 300 字的对比和推荐

用例 3:学生代码风格一致性检查

> 用 Explore agent 找出这个仓库所有违反 PEP8 的地方,
> 按文件分组列出,不要修改任何文件

调试 Agent

如果 Agent 没有返回你想要的:

  1. 任务描述更具体——加约束、加输出格式
  2. 拆成更小的 Agent 任务
  3. 用合适的 agent 类型——调研用 Explore,写作用 general-purpose
  4. 先单独跑一次——不要并行,先看一个能不能跑通

下一步