Skip to content

第 2 章 · Agent 工具演化史 / The Evolution of Agent Tooling

本章观点

Agent 不是 2025 年突然冒出来的新东西。它是一条清晰的技术演化线:从 2022 年的 ReAct 论文,到 2023 年 AutoGPT 的爆火与翻车,再到 2024 年的 Coding Agent 与 MCP,最后到 2025 年的 Skills 与 Loop Engineering。

理解这条线有两个好处:

  1. 不重复造轮子:每一代踩过的坑,下一代都有对应工具来解决。你今天遇到的"agent 跑着跑着就死了",AutoGPT 时代就遇到过,答案是加步数上限 + 验证 + sandbox。
  2. 看清技术选型:为什么 MCP 出来以后 Function Calling 没被淘汰?为什么 Skills 不是 Workflow 的替代品?为什么单 Agent 没死、Multi-Agent 没普及?演化视角能给你答案。

一句话:演化史不是历史课,是选型课。


2.1 阶段 1:Prompt / ReAct 时代(2022)

Chain of Thought:让模型"想出来"

2022 年 1 月,Wei 等人发表 Chain of Thought (CoT) 论文。核心发现:在 prompt 里加一句 "Let's think step by step",让模型把推理过程写出来,数学题准确率从 17.7% 跳到 58.3%。

这是 Agentic AI 的思想原点:模型不是只输出答案,而是输出推理过程。后续所有 agent 的 "Thought" 字段都来自这里。

ReAct:推理 + 行动

2022 年 10 月,Yao 等人发表 ReAct: Synergizing Reasoning and Acting in Language Models。论文标题里的 "Synergizing" 是关键词:推理和行动不是二选一,而是交替进行。

ReAct 提出的循环格式:

text
Thought: 我需要查北京天气
Action: weather_tool(location="北京")
Observation: 25 度,晴
Thought: 信息齐了
Final Answer: 北京今天 25 度晴。

ReAct 的真正贡献不是这个文本格式,而是证明了三件事

  1. 只推理不行动:模型会幻觉(说自己查了,其实没查)。
  2. 只行动不推理:模型不知道为什么要调这个工具,参数经常错。
  3. 推理 + 行动交替:准确率最高,且轨迹可检查。

这三条结论至今没被推翻。今天 Claude / GPT 的 tool use API,底层就是这个逻辑的结构化版本。

关键词

  • Chain of Thought (CoT)
  • ReAct (Reasoning + Acting)
  • Tool-use Prompt
  • Zero-shot CoT

2.2 阶段 2:Function Calling / Tool Calling(2023.6)

OpenAI 打开结构化工具调用

2023 年 6 月 13 日,OpenAI 在 GPT-4 升级时发布了 Function Calling 功能。LLM 不再只能输出文字,还能输出 "我要调用这个函数,参数是这些" 的结构化 JSON。

这是从"ReAct 文本格式"到"工程化 API"的关键一跳。在 ReAct 时代,开发者得用正则解析 "Action: ..." 字符串;Function Calling 之后,模型直接返回 JSON,工程上稳得多。

各家跟进

  • OpenAI:Function Calling(2023.6)→ 改名 Tool Calling(2023.11)
  • Anthropic:Tool Use(2024.3,Claude 3 发布时同步上线)
  • Google Gemini:Function Calling(2023.12)
  • 开源模型:Llama 3、Qwen 2.5、DeepSeek-V3 都支持

底层都是 JSON Schema 描述工具,模型返回结构化调用。差别只在字段命名:OpenAI 用 parameters,Anthropic 用 input_schema

关键词

  • Function Calling / Tool Calling / Tool Use
  • JSON Schema
  • Structured Output
  • Tool Schema Design
  • Tool Error Handling

一个常见误区

很多人以为 "Function Calling 出来以后 ReAct 就过时了"。不对。ReAct 是思想(推理 + 行动交替),Function Calling 是实现手段(结构化输出)。今天所有 agent 框架,底层仍然是 ReAct 循环,只是用 Function Calling 替代了文本解析。


2.3 阶段 3:AutoGPT / BabyAGI 的爆火与翻车(2023.3-4)

一个月内 100k star

2023 年 3 月,AutoGPT 在 GitHub 上线。用户给一个目标("帮我赚钱"),AutoGPT 自己拆任务、调搜索、写文件、循环执行。一个月内拿下 100k star,是当时涨星最快的项目。

同期 BabyAGI 用 140 行 Python 实现了"任务队列 + 优先级 + 反思"的最小 agent loop,成了无数教程的范本。

为什么爆火

AutoGPT 把 ReAct 的"推理 + 行动"循环跑起来了,还接了真实的工具:文件系统、网页搜索、长记忆。用户第一次看到"AI 自己跑任务"的演示,震撼感拉满。

为什么翻车

但 AutoGPT 真实跑起来基本都崩:

问题表现根因
死循环反复搜索同一个词没有循环检测,没有步数硬上限
成本失控一个任务烧几十美金没有 token 预算,没有停止条件
幻觉执行说自己做了,其实没做缺少验证环节,工具结果不校验
任务漂移跑着跑着忘了目标context 爆了之后目标被淹没
越权操作自动创建文件、发推没有 permission 分级,没有 sandbox

教训沉淀

AutoGPT 的失败给整个行业上了一课,后续所有 agent 框架的设计都在回应这些问题:

  • LangGraph 加了步数上限 + 状态检查点
  • Claude Code 加了 Permission 分级 + Hook 拦截
  • OpenHands 加了 Sandbox + E2E 测试
  • MCP 加了 Transport 安全 + 工具白名单
  • Skills 加了 allowed-tools 收紧

AutoGPT 没死,它变成了反面教材。今天你写的 agent 如果还犯 AutoGPT 那五个错,说明没读过这段历史。

关键词

  • AutoGPT / BabyAGI
  • Self-directed task decomposition
  • 反面教材:缺验证 / 缺预算 / 缺 sandbox

2.4 阶段 4:Agent Frameworks(2023-2024)

AutoGPT 翻车后,社区开始系统化造轮子。2023 下半年到 2024 年,涌现了一批 Agent 框架,每个都试图解决 AutoGPT 留下的某个坑。

LangChain / LangGraph

LangChain 起家是 LLM 调用工具链,后来分化出 LangGraph 专门做"图式状态机"。LangGraph 的核心抽象:

  • State:TypedDict 定义的状态对象
  • Node:每个节点是一个函数,接收 state 返回更新
  • Edge:节点间的边,可以是固定的或条件的
  • Checkpoint:状态可持久化,支持断点续跑

LangGraph 解决了 AutoGPT 的"死循环 + 任务漂移"问题:状态显式化、循环可视化、步数可控。

AutoGen

AutoGen(微软出品)走"多 agent 对话"路线。多个 agent 在一个群里互相发消息,类似群聊推理。适合"多个角色辩论同一个问题"的场景。

CrewAI

CrewAI 走"角色扮演 + 任务流水线"路线。定义 Captain、Researcher、Writer 等角色,给每个角色一个 goal,框架自动编排。上手比 LangGraph 简单,但灵活性差一些。

LlamaIndex

LlamaIndex 起家是 RAG 框架,后来加了 Agent 能力。强在文档处理 + 知识库 + Agentic RAG。

框架的共同能力

到 2024 年中,主流框架都长出了这几样东西:

  • 状态管理(State / Checkpoint)
  • 多 Agent 协作(Orchestrator-Worker)
  • Human-in-the-loop(HITL,人工审批节点)
  • Trace / Debug(运行轨迹可视化)
  • Workflow + Agent 混合架构

框架的局限

但框架没解决根本问题:工具还是各家自己写,跨框架不能复用。你在 LangChain 写的 search_arxiv 工具,挪到 CrewAI 还得改一遍。这就给后面的 MCP 留了空间。

关键词

  • LangChain / LangGraph / AutoGen / CrewAI / LlamaIndex
  • State Machine / Checkpoint / HITL
  • Orchestrator-Worker / Multi-Agent

2.5 阶段 5:Coding Agent(2024-2025)

框架解决了"agent loop 怎么稳",但 agent 还是只能调几个简单工具。真正让 agent 走进生产的是 Coding Agent:让 agent 在真实开发环境里读代码、改文件、跑命令、提 PR。

代表产品

产品出品方定位上线
CursorAnysphereIDE 内 agentic coding2023.3
Aider社区终端 pair programming2023.5
DevinCognition"第一个 AI 软件工程师"2024.3
OpenHandsAll-Hands AI开源版 Devin2024.4(前 OpenDevin)
Replit AgentReplit端到端 app builder2024.9
Claude CodeAnthropicCLI 编程 agent2025.2
CodexOpenAICLI 编程 agent2025.5
SWE-agentPrinceton学术评测基准2024.3

Coding Agent 共同能力

这些产品底层都是同一个形态:

  • 读代码库(Glob / Grep / Read)
  • 修改文件(Edit / Write)
  • 运行命令(Bash)
  • 写测试 + 跑测试
  • 在 sandbox 中执行
  • 提 PR 或 commit

差别在产品形态:Cursor 嵌 IDE,Aider 在终端,Devin 是 Web 产品,Claude Code / Codex 是 CLI,OpenHands 是开源框架。

为什么 Coding Agent 跑得起来

Coding Agent 是 Agent 演化里第一个"真能干活"的形态,原因有三:

  1. 环境封闭可控:代码库是一个明确的沙盒,agent 在里面跑不会误伤真实业务。
  2. 反馈即时可验:跑测试、编译、lint,结果对错一目了然。这是天然验证器。
  3. 任务路径明确:改 bug、加 feature、重构,都比"帮我赚钱"这种 AutoGPT 式目标具体得多。

Coding Agent 带来的新问题

但 Coding Agent 也暴露了新问题:

  • 权限失控:agent 能 git pushrm -rf,没人拦就出事 → 催生 Permission 系统
  • 工具不能复用:Cursor 写的工具 Claude Code 用不了 → 催生 MCP 普及
  • 经验不能沉淀:每个项目都要重新教 agent 怎么做事 → 催生 Skills

这三个问题正好对应了下一阶段的 MCP、Skills 和 Loop Engineering。

关键词

  • Claude Code / Codex / Cursor / Devin / Replit Agent / OpenHands / Aider / SWE-agent
  • Sandbox execution / Permission / PR workflow

2.6 阶段 6:MCP 标准化(2024.11)

N×M 集成地狱

在 MCP 之前,工具集成是这样的:

  • Anthropic SDK:{"name": ..., "input_schema": ...}
  • OpenAI SDK:{"type": "function", "function": {"name": ..., "parameters": ...}}
  • LangGraph:自己的 Tool 类
  • CrewAI:又一套

5 个模型 × 20 个工具 = 100 套集成。这就是"N×M 集成地狱"。

MCP 出场

2024 年 11 月 25 日,Anthropic 开源 Model Context Protocol (MCP)。官方比喻是 "USB-C for AI applications":一个标准接口,所有模型和所有工具都遵循它,N×M 降成 N+M。

注:"N×M → N+M" 是社区通俗比喻,非 Anthropic 官方原话。

MCP 解决了什么

MCP 把三件事标准化了:

  1. 工具描述:统一的 JSON-RPC schema
  2. 通信协议:stdio / HTTP SSE / WebSocket 三种 transport
  3. 能力分类:Tools(模型调)/ Resources(应用取)/ Prompts(用户触发)

MCP 生态

到 2026 年中,MCP 已经是事实标准:

主流 Host(Claude Code / Cursor / VS Code / Claude Desktop / Codex CLI)全部原生支持 MCP。第 5 章会详细讲 MCP 怎么用。

关键词

  • MCP / Model Context Protocol
  • Host / Client / Server
  • Tools / Resources / Prompts
  • USB-C for AI

2.7 阶段 7:Skills 沉淀(2025)

问题:经验不能复用

MCP 解决了"工具连接标准化",但没解决"做事方法标准化"。

举个例子:你在 Claude Code 里让 agent 提交代码,每次都要手动说 "看 git status → 看 diff → 写 commit message → 提交"。这套流程是固定的,但每次都要重新讲。这就是 Skills 要解决的问题。

Skills 是什么

2025 年,Anthropic 发布 Agent Skills。官方定义:

"Agent Skills are modular capabilities that extend Claude's functionality. Each Skill packages instructions, metadata, and optional resources (scripts, templates) that Claude uses automatically when relevant."

翻译:Skill 是模块化能力包,里面有指令、元数据、可选资源(脚本、模板)。Claude 在相关场景下自动调用。

Skill 的核心创新:渐进式加载

Skill 系统有个聪明设计——渐进式加载(Progressive Disclosure)

层级内容加载时机Token 成本
Level 1Metadata(name + description)始终加载~100 tokens
Level 2SKILL.md 主体触发时加载几百-几千 tokens
Level 3Resources(脚本、模板)按需加载按需

100 个 skill 平时只占 1 万 tokens,触发哪个才加载哪个。这解决了"能力多了 context 就爆"的问题。

Skill vs MCP 的分工

MCPSkills
解决什么工具连接标准化做事方法标准化
粒度单个工具调用一套流程指令
复用维度跨 host 复用跨会话复用
例子filesystem server/commit skill

MCP 让 agent "有工具可用",Skills 让 agent "知道怎么用工具做事"。第 7 章详细讲 Skills。

关键词

  • Agent Skills / SKILL.md
  • Progressive Disclosure
  • Skills vs MCP vs Prompt

2.8 阶段 8:Loop Engineering(2025+)

从单工具到完整 Loop

演化到这里,所有零件都齐了:

  • 决策:LLM(阶段 1-2)
  • 工具:Function Calling + MCP(阶段 2、6)
  • 运行时:Coding Agent + Sandbox(阶段 5)
  • 方法:Skills(阶段 7)

但要把它们组装成一个可靠的闭环,还需要 Loop Engineering。

完整 Agent Loop

text
目标 (Goal)
  → 计划 (Plan)
  → 工具调用 (Tool Call)
  → 执行 (Execute, in Sandbox)
  → 反馈 (Observe)
  → 验证 (Verify)
  → 修正 (Reflect & Adjust)
  → 停止 (Stop or Continue)

每一环都有对应的工程能力:

环节工程能力对应工具
目标Spec EngineeringSPEC.md
计划Planning / Task DecompositionPLAN.md / TASKS.md
工具调用Tool Calling + MCPMCP servers
执行Sandbox / RuntimeE2B / Daytona / OpenHands runtime
反馈Observability + TraceLangSmith / Langfuse
验证E2E Testing + BenchmarkSWE-bench / τ-bench
修正Reflection + MemoryReflexion / MEMORY.md
停止Stop conditions + HITLPermission / Hooks

Loop Engineering 的核心命题

Loop Engineering 不是新框架,是一组设计原则:

  1. 可观察:每一步都有 trace,能复盘
  2. 可验证:每一步都能跑测试,不是 LLM 说成功就成功
  3. 可回退:失败能 rollback 到 checkpoint
  4. 可中断:任何一步都能暂停等人确认
  5. 可预算:token、步数、时间、金钱都有上限

这五条是 AutoGPT 翻车的直接反命题。后续章节会逐个展开。

关键词

  • Loop Engineering
  • Durable Execution / Checkpoint / Rollback
  • Observability / Trace / Cost Tracking
  • HITL (Human-in-the-loop)

2.9 一张演化时间轴

text
2022.01  Chain of Thought 论文 ── 推理过程显式化
2022.10  ReAct 论文 ──────────── 推理 + 行动交替
2023.03  AutoGPT 上线 ────────── 自主 agent 爆火
2023.04  BabyAGI 上线 ────────── 140 行最小 agent loop
2023.06  OpenAI Function Calling ─ 工具调用结构化
2023.10  LangChain Agent ──────── 框架化开始
2023.12  Gemini Function Calling ─ 三家齐全
2024.01  LangGraph 发布 ────────── 状态机编排
2024.03  Devin 发布 ────────────── "AI 软件工程师"
2024.03  Anthropic Tool Use ────── Claude 3 工具调用
2024.04  OpenHands (OpenDevin) ── 开源 coding agent
2024.11  MCP 开源 ──────────────── 工具连接标准化
2025.02  Claude Code 发布 ──────── CLI coding agent
2025.05  Codex CLI 发布 ────────── OpenAI CLI agent
2025.Q2  Agent Skills ──────────── 做事方法标准化
2025.Q3  Loop Engineering ──────── 可靠闭环组装

记住几个关键节点:2022 ReAct → 2023 AutoGPT → 2024 MCP → 2025 Skills。这四个节点串起来就是 Agent 的工程化主线。


2.10 前人智慧 / Prior Art

ReAct 论文核心实验

ReAct(Yao et al., 2022)在 HotpotQA 和 ALFWorld 上做了对照实验,结论影响深远:

方法准确率失败模式
只推理(CoT)中等幻觉,编造事实
只行动(Act)较低不知道为什么调工具,参数乱
推理 + 行动(ReAct)最高失败模式最少

论文最关键的图(Fig. 2)展示了:随着任务步数增加,纯推理方法的幻觉率上升,纯行动方法的工具调用错误率上升,只有 ReAct 两条曲线都压住。这个结论直接定义了今天所有 agent 的循环结构。

AutoGPT 失败的工程原因

AutoGPT 失败不是模型不够强(GPT-4 当时是最强的),而是工程上犯了五个错。这五个错后来被 Lilian Weng 的《LLM Powered Autonomous Agents》 系统总结:

  1. 没有验证器:agent 说自己做了就算做了,不跑测试。
  2. 没有预算控制:token 烧到天荒地老。
  3. 没有 sandbox:能直接动真实文件系统。
  4. 没有状态检查点:崩了不能续跑。
  5. 没有任务边界:目标太空,自己拆任务拆到发散。

这五条至今仍是 agent 工程的"五条军规"。后续每一代框架都在补这五条。

Anthropic《Building Effective Agents》的演化视角

Anthropic 工程博客(2024.12)给了一个重要的判断:

"Agents can handle sophisticated tasks, but their implementation is often straightforward. They are typically just LLMs using tools based on environmental feedback in a loop."

这句话其实是给整个演化史画了个句号:Agent 看似复杂,本质还是 LLM + 工具 + 循环。从 ReAct 到 Skills,所有演化都是在给这个最小循环加工程边界——状态、权限、停止条件、验证、记忆。

OpenAI Agents SDK 的设计演化

OpenAI 在 2024 年发布 Agents SDK 时,文档里有一句话值得注意:

"We learned from the Swarm experiment that lightweight primitives beat heavy abstractions."

翻译:从 Swarm 实验里学到,轻量原语胜过重抽象。这是对 LangChain 早期"工具过重"的反思,也解释了为什么 2024-2025 的新框架(OpenAI Agents SDK、Claude Agent SDK、Pydantic AI)都走"轻量原语"路线。

Lilian Weng 的 Agent 拆解

Lilian Weng 的博客(2023.6,OpenAI 前研究员)至今仍是 Agent 概念拆解最被引用的文章。她把 Agent 拆成四块:

  1. Planning:任务拆解 + 反思
  2. Memory:短期(context)+ 长期(向量库)
  3. Tool Use:Function Calling
  4. Action:执行环境

这个四块拆法和本教程的"四权模型"(控制 / 工具 / 状态 / 停止)是同一个问题的不同切面。Lilian 偏概念,本教程偏工程边界。


2.11 课后练习

  1. 把本教程第 0 章的"四权模型"对应到 AutoGPT 的五个失败原因,写出每一类权力缺失对应哪个失败。
  2. ReAct 论文为什么"只推理不行动"会幻觉?用一句话解释。
  3. 选一个 Coding Agent(Claude Code / Codex / Cursor / OpenHands 之一),分析它解决了 AutoGPT 哪几个问题,还有哪几个没解决。
  4. MCP 和 Skills 各自解决什么问题?为什么 MCP 出来以后 Skills 还是必要的?
  5. 画一张你自己项目的 Agent Loop 图,标出每一环对应演化史的哪个阶段。

2.12 小结

  • 2022 ReAct:推理 + 行动交替,定义了 agent loop 的基本形态。
  • 2023 AutoGPT:自主 agent 爆火,但缺验证 / 预算 / sandbox / checkpoint / 边界,成了反面教材。
  • 2023-2024 Frameworks:LangGraph / AutoGen / CrewAI / LlamaIndex 系统化解决状态、多 agent、HITL。
  • 2024 Coding Agent:Claude Code / Codex / Cursor / Devin / OpenHands 让 agent 第一次真能干活。
  • 2024.11 MCP:工具连接标准化,N×M 降成 N+M。
  • 2025 Skills:做事方法标准化,渐进式加载省 token。
  • 2025+ Loop Engineering:把所有零件组装成可观察 / 可验证 / 可回退 / 可中断 / 可预算的可靠闭环。

演化史的核心命题始终没变:让 LLM 在受控边界内自主决策。每一代工具都在加边界,不是加自由。

下一章我们回到心智模型,把 "LLM + 工具 + 循环" 这个最小骨架拆开讲清楚——以及为什么它还不够,需要状态、观察、反思和停止边界。

基于 CC BY-SA 4.0 发布