Skip to content

2.1 拆解 Agent——四大核心组件

小李打开 Claude Code,输入了一条指令:

"帮我找到项目中所有缺少错误处理的 API 端点,并修复它们。"

AI 开始工作了——搜索文件、读取代码、分析问题、修改代码、运行测试。一气呵成。

小李好奇:它是怎么做到的?Agent 内部到底发生了什么?


Agent 的架构

所有 Agent,不管用什么工具、什么框架,都由四个核心组件构成:

L1
🧭 系统提示词
「你是谁、该做什么、不能做什么」——角色和边界
L2
🛠️ 工具
「能做什么」——读文件、改代码、跑命令
L2
🧠 记忆
「之前发生了什么」——工作记忆、对话历史、长期经验
核心
🔄 决策循环
思考 → 行动 → 观察 → 反思 → 再思考,直到完成

还记得 1.1 节 的核心公式吗?它们是一一对应的:

公式中的能力对应的组件
自主决策决策循环 + 记忆(提供判断依据)
工具使用工具
循环执行决策循环
目标追踪系统提示词(定义目标)+ 记忆(追踪进度)

组件一:系统提示词——Agent 的「岗位职责」

系统提示词定义了 Agent 的角色、能力和行为边界。它就像一份岗位职责说明书:

markdown
你是一个代码审查 Agent。

## 角色
你负责审查 Python 代码的质量和安全性。

## 能力
- 阅读项目代码
- 分析潜在的 Bug 和安全漏洞
- 提出改进建议

## 边界
- 你只能审查,不能直接修改代码
- 涉及安全问题的发现必须标记为高优先级
- 不确定的问题要明确说明,不能猜测

好的系统提示词有三个特征:

特征说明反面案例
角色清晰明确「你是谁」"你是一个 AI 助手"(太泛)
边界明确明确「你能做什么、不能做什么」没有约束,让 Agent 自行判断
输出规范明确「结果应该是什么样」"看着办"、"尽量好"

多工具视角

  • Claude Code:系统提示词由 Skills 和 CLAUDE.md 共同构建
  • Cursor:通过 Rules 文件和 .cursorrules 定义
  • Windsurf:通过 .windsurfrules 和 Workflow 文件定义

组件二:工具——Agent 的「手和脚」

没有工具的 Agent 只是一个 Chat。工具让 Agent 能与外部世界交互

工具类别功能示例
搜索查找信息grep、文件搜索、Web 搜索
计算执行逻辑代码分析、数据计算
文件读写文件读取代码、修改配置
API调用服务数据库查询、GitHub API
执行运行命令跑测试、启动服务

小李的「修复 API 错误处理」任务中,Agent 就用了 5 种工具:

  1. 搜索:找到所有 API 路由文件
  2. 文件:读取每个文件的代码
  3. 计算:分析哪些端点缺少错误处理
  4. 文件:编写修改后的代码
  5. 执行:运行测试验证修改

工具越多越好?

不是。工具越多,Agent 面临的选择越多,决策越困难。给 Agent 合适的工具集,而不是所有工具。 这就像给实习生一把瑞士军刀——功能多,但不代表他每次都能选对工具。


组件三:记忆——Agent 的「大脑」

Agent 需要记住四件事(更详细的四层架构在 2.3 记忆的层次 展开):

记忆类型记什么持续多久例子
L1 工作记忆当前任务的中间结果任务期间"已修复 3/12 个端点"
L2 短期记忆与用户的交互历史会话期间"小李要求加 try-catch"
L3 长期记忆跨会话的知识和经验长期"这个项目用 Express 风格"
L4 用户记忆用户偏好和习惯永久"小李偏好 TypeScript"

没有记忆的 Agent 就像失忆症患者——每一秒都是全新的,不知道上一秒做了什么。


组件四:决策循环——Agent 的「思维模式」

这是 Agent 最核心的组件,也是它和 Chat 的根本区别。

Chat 的模式是:输入 → 输出,一步完成。

Agent 的模式是:思考 → 行动 → 观察 → 反思 → 再思考,循环往复直到任务完成。

以小李的任务为例:

第 1 轮:
  思考:需要找到所有 API 路由文件
  行动:搜索项目中包含 "router" 的文件
  观察:找到 12 个文件

第 2 轮:
  思考:需要逐一检查每个文件的错误处理
  行动:读取第一个文件 userRoutes.ts
  观察:发现 3 个端点都没有 try-catch

第 3 轮:
  思考:需要为这 3 个端点添加错误处理
  行动:修改代码,添加 try-catch
  观察:修改完成

第 4 轮:
  思考:继续检查下一个文件
  行动:读取第二个文件 orderRoutes.ts
  观察:发现 2 个端点有错误处理,1 个没有
  ……

每一轮循环都是一次「小决策」。Agent 的质量,取决于它每次决策的质量。

关键洞察

Agent 的失败,几乎都发生在决策循环中的某一步——思考方向错了、选了错误的工具、误判了观察结果、反思不够深入。这就是为什么设计模式如此重要——它们是经过验证的「决策指南」。


四组件如何协同

四个组件不是孤立的,它们构成一个完整系统:

  • 系统提示词告诉 Agent 「你是谁、该做什么」
  • 记忆告诉 Agent 「之前发生了什么、什么重要」
  • 工具让 Agent 「能做什么」
  • 决策循环决定 Agent 「怎么做」

四个组件齐备,Agent 才能正常运转。缺了任何一块,就会出现问题:

缺失的组件后果症状
系统提示词Agent 没有方向行为不一致,偏离目标
工具Agent 无法行动只能生成文本,不能执行
记忆Agent 忘记上下文重复操作,遗漏信息
决策循环Agent 不会迭代单次输出,无法自我修正

本节核心要点

  • Agent 由四大核心组件构成:系统提示词、工具、记忆、决策循环
  • 1.1 的核心公式与四组件一一对应:自主决策→循环+记忆,工具使用→工具,循环执行→循环,目标追踪→提示词+记忆
  • 系统提示词定义角色和边界,工具提供行动能力,记忆保持上下文,决策循环驱动迭代
  • 四组件协同工作,缺一不可
  • Agent 的失败几乎都发生在决策循环的某一步

思考题:回想你使用 AI 编程工具的一次经历,你能识别出这四个组件各自的作用吗?哪个组件是当前工具的短板?


下一节预告:决策循环是 Agent 的心脏。让我们深入看看 Agent 是怎么「思考」的——ReAct、Plan-Execute、Reflexion 三大经典设计模式。

下一节:思考-行动-观察 →