---
url: 'https://aisee.wiki/learn/agent-basics/index.md'
---
# Agent 是怎么工作的

Agent 不是更会聊天的模型，而是模型、上下文、工具、运行环境、约束和验证共同组成的执行系统。

## 发展原因

Chat 适合解释、讨论和生成片段。但真实工程任务通常需要读取项目、修改多个文件、运行命令、观察错误、继续修复。到了这一步，任务已经不只是“回答一个问题”，而是在推进一个真正会影响项目状态的执行过程。

更直接地说：`Chat 模型是在回答你，Agent 是在替你推进任务。`

当任务需要进入代码库、调用工具、读取真实输出来做下一步判断时，单轮问答就不够了，Agent 才有存在意义。

## Agent 的最小组成

| 组成 | 作用 | 常见失败点 |
|---|---|---|
| 模型 | 推理、生成计划、选择动作 | 误解目标、过度自信 |
| 上下文 | 当前任务、项目文件、历史对话 | 上下文缺失或污染 |
| Memory | 长期偏好、项目约定、历史决策 | 把旧记忆当事实 |
| Tool | 读文件、改代码、跑命令、查资料 | 权限过大或结果误读 |
| 环境 | Git、依赖、终端、浏览器、测试 | 环境不可复现 |
| 约束 | 项目规则、安全边界、完成标准 | 没有明确边界 |
| 验证 | 构建、测试、预览、人工审查 | 只看输出不看结果 |

## 工作循环

最小工作循环可以按六步理解：

1. `目标进入当前任务`
   不是一句模糊请求，而是带约束和验收标准的任务。
2. `装载上下文`
   项目文件、规则、历史结果、当前工作区状态一起进入判断。
3. `模型决定下一步`
   它要先判断该回答、该读文件、还是该执行命令。
4. `工具执行动作`
   真正的副作用发生在这里，比如读文件、改代码、跑构建。
5. `观察结果`
   stdout、diff、报错、截图会回写到下一轮。
6. `验证或输出`
   要么继续修正，要么明确给出结果和验收说明。

所以 Agent 的关键不只是“有工具”，而是工具结果会继续影响下一轮。没有这一步，就还是聊天；有了这一步，才叫执行闭环。

::: warning Agent 容易失败的位置
目标模糊、权限过大、没有验证、上下文污染、错误级联，是最常见的五类问题。解决方式不是“换更强模型”这么简单，而是把任务边界和检查点设计好。
:::

## 失败点

第一次接触 Agent，最常见的失败并不是“模型太弱”，而是闭环管理出了问题：

* `目标太大`
  一次让它创建项目、写整页、适配移动端、跑构建，最后你很难判断哪一步出了问题。
* `上下文不足`
  没说技术栈、目录约定、禁止操作和验收标准，Agent 只能自己猜。
* `工具权限失控`
  命令和修改范围没看清，就一路放行，结果很容易改过头。
* `结果没有回写`
  看到了报错或页面问题，却没有把具体观察结果反馈给下一轮。
* `没有验证`
  它说“已经完成”，但你没看 diff、没跑构建、没开页面。

这些问题的解决方式都不是抽象的“提示词更专业”，而是更具体的任务拆分、权限控制和结果检查。

## 后续结构

这一篇只解决 Agent 的最小心智模型。后面的文章分别补它闭环里的不同缺口：

* `Memory`：解决“带着上下文持续工作”
* `Skill`：解决“把稳定流程沉淀成可复用能力”
* `MCP`：解决“连接外部系统和能力入口”
* `Tool`：解决“真正执行动作的接口和风险”
* `Hook`：解决“关键节点的自动检查和约束”

如果你先理解这一篇的闭环，再去看后面的分篇，就不会把这些概念当成零散术语，而会知道它们分别在补哪一块能力。
