第02章 LLM 时代的 Agent 革命 —— 2023-2026 爆发期

上一篇我们看到 Agent 的 70 年演变——从符号 AI 到深度学习。本章我们聚焦 2023-2026 年的爆发期:Agent 从游戏和实验室走向真实世界。

为什么是 LLM

2023 年初,ChatGPT 只能聊天。2025 年底,Claude Code 可以独立完成一个完整项目。这中间发生了什么?

LLM 与传统 RL Agent 的根本差异

维度LLM Agent传统 RL Agent
训练数据人类全部文本/代码特定领域数据(Atari/Dota2)
泛化能力✅ 跨领域泛化❌ 领域特化(只擅长某游戏)
推理深度✅ 多步推理、规划、反思❌ 策略固定
知识广度✅ 世界知识、编程知识❌ 只有游戏规则
语言能力✅ 理解/生成自然语言❌ 只理解游戏状态

核心差异:传统 RL Agent(DQN、AlphaGo、AlphaStar)在特定领域数据上训练,学会的是特定领域的策略。LLM 在人类全部文本和代码上训练,学会的是推理本身——感知环境、理解目标、规划步骤、反思错误。

图表 代码
graph TB
    subgraph 传统RL Agent
        A1[Atari 像素] --> A2[DQN 模型]
        A2 --> A3[游戏动作]
        A3 --> A4[游戏分数]
        A4 --> A1
        
        style A1 fill:#FFE0E0
        style A2 fill:#FFE0E0
    end
    
    subgraph LLM Agent
        B1[代码库
文档
用户指令] --> B2[Claude/GPT 模型] B2 --> B3[Read/Write/Edit
Bash/Browser] B3 --> B4[文件系统
终端
网络] B4 --> B1 style B1 fill:#E0FFE0 style B2 fill:#E0FFE0 end
graph TB
    subgraph 传统RL Agent
        A1[Atari 像素] --> A2[DQN 模型]
        A2 --> A3[游戏动作]
        A3 --> A4[游戏分数]
        A4 --> A1
        
        style A1 fill:#FFE0E0
        style A2 fill:#FFE0E0
    end
    
    subgraph LLM Agent
        B1[代码库
文档
用户指令] --> B2[Claude/GPT 模型] B2 --> B3[Read/Write/Edit
Bash/Browser] B3 --> B4[文件系统
终端
网络] B4 --> B1 style B1 fill:#E0FFE0 style B2 fill:#E0FFE0 end
graph TB
    subgraph 传统RL Agent
        A1[Atari 像素] --> A2[DQN 模型]
        A2 --> A3[游戏动作]
        A3 --> A4[游戏分数]
        A4 --> A1
        
        style A1 fill:#FFE0E0
        style A2 fill:#FFE0E0
    end
    
    subgraph LLM Agent
        B1[代码库
文档
用户指令] --> B2[Claude/GPT 模型] B2 --> B3[Read/Write/Edit
Bash/Browser] B3 --> B4[文件系统
终端
网络] B4 --> B1 style B1 fill:#E0FFE0 style B2 fill:#E0FFE0 end
graph TB
    subgraph 传统RL Agent
        A1[Atari 像素] --> A2[DQN 模型]
        A2 --> A3[游戏动作]
        A3 --> A4[游戏分数]
        A4 --> A1
        
        style A1 fill:#FFE0E0
        style A2 fill:#FFE0E0
    end
    
    subgraph LLM Agent
        B1[代码库<br/>文档<br/>用户指令] --> B2[Claude/GPT 模型]
        B2 --> B3[Read/Write/Edit<br/>Bash/Browser]
        B3 --> B4[文件系统<br/>终端<br/>网络]
        B4 --> B1
        
        style B1 fill:#E0FFE0
        style B2 fill:#E0FFE0
    end

LLM 的推理能力来自何处

不是架构,是数据:

GPT/Claude 的推理能力不是来自 Transformer 架构本身,而是来自训练数据的规模和广度。在人类全部文本和代码上训练,模型学会了:

  1. 理解指令:解析用户意图,分解任务步骤
  2. 规划行动:确定需要读取哪些文件、执行哪些命令
  3. 反思错误:看到错误日志,推理原因,调整策略
  4. 泛化知识:将已知知识迁移到新领域

Agency 来自训练,不是编排:提示词链、节点图、工作流编排——它们无法创造 Agency。Agency 是模型在训练中学到的能力,外部代码只能提供 Harness(行动环境),无法创造智能。

Agent 产品爆发(2023-2026)

图表 代码
timeline
    title LLM Agent 产品爆发期
    2023 : AutoGPT / BabyAGI / LangChain
概念验证 2024 : Claude Code / Cursor / Windsurf
生产级编程 Agent 2025 : OpenClaw / OpenAI Codex CLI / Gemini Agent
个人助手 & CLI Agent 2026 : 多 Agent 团队 / 自主 Agent / Agent Teams
协作模式成熟
timeline
    title LLM Agent 产品爆发期
    2023 : AutoGPT / BabyAGI / LangChain
概念验证 2024 : Claude Code / Cursor / Windsurf
生产级编程 Agent 2025 : OpenClaw / OpenAI Codex CLI / Gemini Agent
个人助手 & CLI Agent 2026 : 多 Agent 团队 / 自主 Agent / Agent Teams
协作模式成熟
timeline
    title LLM Agent 产品爆发期
    2023 : AutoGPT / BabyAGI / LangChain
概念验证 2024 : Claude Code / Cursor / Windsurf
生产级编程 Agent 2025 : OpenClaw / OpenAI Codex CLI / Gemini Agent
个人助手 & CLI Agent 2026 : 多 Agent 团队 / 自主 Agent / Agent Teams
协作模式成熟
timeline
    title LLM Agent 产品爆发期
    2023 : AutoGPT / BabyAGI / LangChain<br/>概念验证
    2024 : Claude Code / Cursor / Windsurf<br/>生产级编程 Agent
    2025 : OpenClaw / OpenAI Codex CLI / Gemini Agent<br/>个人助手 & CLI Agent
    2026 : 多 Agent 团队 / 自主 Agent / Agent Teams<br/>协作模式成熟

代表产品对比

产品定位Harness 特点适用场景
Claude Code编程 AgentBash/Read/Write/Edit/Glob/Grep + Skills + MCP + SubagentIDE 开发、代码重构、调试
CursorIDE Agent代码补全 + 重构 + 调试 + 文件编辑VSCode 内嵌开发
OpenClaw个人助手 Agent多渠道通信(25+ 平台)+ 自动化 + 知识管理生活管理、日程协调
Codex CLI命令行 AgentShell 执行 + 文件操作 + 网络请求命令行自动化
Windsurf编程 Agent多文件编辑 + 上下文管理 + 代码推理大规模代码重构

Claude Code:Harness 工程的标杆

Claude Code 是我们所见过的最优雅、最完整的 agent harness 实现。

核心架构:

Claude Code = Agent Loop(心跳)
            + 工具系统(双手)
            + 按需 Skill 加载(知识库)
            + 上下文压缩(记忆管理)
            + 子 Agent 派发(团队协作)
            + 权限治理(安全边界)
            + MCP 扩展(外挂)
图表 代码
graph TB
    subgraph ClaudeCode["Claude Code Harness"]
        subgraph L1["Loop 层"]
            LOOP[Agent Loop
observe→think→act] end subgraph L2["工具层"] T1[Bash] T2[Read/Write/Edit] T3[Glob/Grep] T4[Browser/MCP] end subgraph L3["管理层"] M1[权限判断] M2[上下文压缩] M3[任务系统] M4[子Agent派发] end subgraph L4["扩展层"] E1[Skills 按需加载] E2[MCP 插件集成] E3[Hooks 扩展点] end LOOP --> L2 L2 --> L3 L3 --> L4 end Model[Claude 4.x
推理引擎] -->|调用| ClaudeCode ClaudeCode -->|执行| Env[IDE/终端/文件系统]
graph TB
    subgraph ClaudeCode["Claude Code Harness"]
        subgraph L1["Loop 层"]
            LOOP[Agent Loop
observe→think→act] end subgraph L2["工具层"] T1[Bash] T2[Read/Write/Edit] T3[Glob/Grep] T4[Browser/MCP] end subgraph L3["管理层"] M1[权限判断] M2[上下文压缩] M3[任务系统] M4[子Agent派发] end subgraph L4["扩展层"] E1[Skills 按需加载] E2[MCP 插件集成] E3[Hooks 扩展点] end LOOP --> L2 L2 --> L3 L3 --> L4 end Model[Claude 4.x
推理引擎] -->|调用| ClaudeCode ClaudeCode -->|执行| Env[IDE/终端/文件系统]
graph TB
    subgraph ClaudeCode["Claude Code Harness"]
        subgraph L1["Loop 层"]
            LOOP[Agent Loop
observe→think→act] end subgraph L2["工具层"] T1[Bash] T2[Read/Write/Edit] T3[Glob/Grep] T4[Browser/MCP] end subgraph L3["管理层"] M1[权限判断] M2[上下文压缩] M3[任务系统] M4[子Agent派发] end subgraph L4["扩展层"] E1[Skills 按需加载] E2[MCP 插件集成] E3[Hooks 扩展点] end LOOP --> L2 L2 --> L3 L3 --> L4 end Model[Claude 4.x
推理引擎] -->|调用| ClaudeCode ClaudeCode -->|执行| Env[IDE/终端/文件系统]
graph TB
    subgraph ClaudeCode["Claude Code Harness"]
        subgraph L1["Loop 层"]
            LOOP[Agent Loop<br/>observe→think→act]
        end
        
        subgraph L2["工具层"]
            T1[Bash]
            T2[Read/Write/Edit]
            T3[Glob/Grep]
            T4[Browser/MCP]
        end
        
        subgraph L3["管理层"]
            M1[权限判断]
            M2[上下文压缩]
            M3[任务系统]
            M4[子Agent派发]
        end
        
        subgraph L4["扩展层"]
            E1[Skills 按需加载]
            E2[MCP 插件集成]
            E3[Hooks 扩展点]
        end
        
        LOOP --> L2
        L2 --> L3
        L3 --> L4
    end
    
    Model[Claude 4.x<br/>推理引擎] -->|调用| ClaudeCode
    ClaudeCode -->|执行| Env[IDE/终端/文件系统]

为什么成功:Claude Code 没有试图成为 agent 本身。它没有强加僵化的工作流,没有用精心设计的决策树去替模型做判断。它给模型提供了工具、知识、上下文管理和权限边界——然后让开了。

提示词水管工陷阱

“Agent” 这个词已经被一整个提示词水管工产业劫持了。

假 Agent 的特征

维度提示词水管工(假Agent)真 Agent
核心架构if-else 分支 + 节点图Model + Agent Loop
决策方式硬编码路由逻辑模型推理决策
泛化能力❌ 无法泛化到新场景✅ 跨领域泛化
适应性❌ 每个分支需手工编码✅ 自动适应新任务
可维护性❌ 规则爆炸、脆弱✅ 模型自动演化
图表 代码
flowchart TB
    subgraph WaterPlumber["提示词水管工陷阱"]
        W1[用户输入] --> W2{if-else 分支1}
        W2 -->|条件A| W3[提示词模板1]
        W2 -->|条件B| W4[提示词模板2]
        W3 --> W5{if-else 分支2}
        W4 --> W5
        W5 -->|条件C| W6[LLM调用1]
        W5 -->|条件D| W7[LLM调用2]
        W6 --> W8[硬编码输出格式]
        W7 --> W8
    end
    
    W9[❌ 规则爆炸
❌ 无法泛化
❌ 维护噩梦
❌ GOFAI还魂] style WaterPlumber fill:#FFE0E0 style W9 fill:#FFE0E0
flowchart TB
    subgraph WaterPlumber["提示词水管工陷阱"]
        W1[用户输入] --> W2{if-else 分支1}
        W2 -->|条件A| W3[提示词模板1]
        W2 -->|条件B| W4[提示词模板2]
        W3 --> W5{if-else 分支2}
        W4 --> W5
        W5 -->|条件C| W6[LLM调用1]
        W5 -->|条件D| W7[LLM调用2]
        W6 --> W8[硬编码输出格式]
        W7 --> W8
    end
    
    W9[❌ 规则爆炸
❌ 无法泛化
❌ 维护噩梦
❌ GOFAI还魂] style WaterPlumber fill:#FFE0E0 style W9 fill:#FFE0E0
flowchart TB
    subgraph WaterPlumber["提示词水管工陷阱"]
        W1[用户输入] --> W2{if-else 分支1}
        W2 -->|条件A| W3[提示词模板1]
        W2 -->|条件B| W4[提示词模板2]
        W3 --> W5{if-else 分支2}
        W4 --> W5
        W5 -->|条件C| W6[LLM调用1]
        W5 -->|条件D| W7[LLM调用2]
        W6 --> W8[硬编码输出格式]
        W7 --> W8
    end
    
    W9[❌ 规则爆炸
❌ 无法泛化
❌ 维护噩梦
❌ GOFAI还魂] style WaterPlumber fill:#FFE0E0 style W9 fill:#FFE0E0
flowchart TB
    subgraph WaterPlumber["提示词水管工陷阱"]
        W1[用户输入] --> W2{if-else 分支1}
        W2 -->|条件A| W3[提示词模板1]
        W2 -->|条件B| W4[提示词模板2]
        W3 --> W5{if-else 分支2}
        W4 --> W5
        W5 -->|条件C| W6[LLM调用1]
        W5 -->|条件D| W7[LLM调用2]
        W6 --> W8[硬编码输出格式]
        W7 --> W8
    end
    
    W9[❌ 规则爆炸<br/>❌ 无法泛化<br/>❌ 维护噩梦<br/>❌ GOFAI还魂]
    
    style WaterPlumber fill:#FFE0E0
    style W9 fill:#FFE0E0

真相:它们是 GOFAI(Good Old-Fashioned AI)的现代还魂——几十年前就被学界抛弃的符号规则系统,现在喷了一层 LLM 的漆又登场了。

为什么会失败

无法创造 Agency:

Agency(感知、推理、行动的能力)是模型在训练中学到的,不是外部代码能创造的。提示词水管工试图通过堆叠过程式逻辑来暴力模拟智能——庞大的规则树、节点图、链式提示词瀑布流——然后祈祷足够多的胶水代码能涌现出自主行为。

不会的。你不可能通过工程手段编码出 agency。Agency 是学出来的,不是编出来的。

脆弱性:

每增加一个分支,复杂度就指数级增长。当用户需求超出预定义的分支——系统崩溃。当模型输出不符合预期格式——解析失败。当任务需要跨分支协作——手工编排失效。

真正的 Agent 工程

Agent 产品 = Model + Harness

图表 代码
graph LR
    subgraph 公式["Agent 产品公式"]
        M[Model
推理引擎
Claude/GPT] + H[Harness
能力边界
工具/权限/上下文] end M + H --> A[Agent
完整产品
感知/推理/行动] style M fill:#E3F2FD style H fill:#E8F5E9 style A fill:#FFF3E0
graph LR
    subgraph 公式["Agent 产品公式"]
        M[Model
推理引擎
Claude/GPT] + H[Harness
能力边界
工具/权限/上下文] end M + H --> A[Agent
完整产品
感知/推理/行动] style M fill:#E3F2FD style H fill:#E8F5E9 style A fill:#FFF3E0
graph LR
    subgraph 公式["Agent 产品公式"]
        M[Model
推理引擎
Claude/GPT] + H[Harness
能力边界
工具/权限/上下文] end M + H --> A[Agent
完整产品
感知/推理/行动] style M fill:#E3F2FD style H fill:#E8F5E9 style A fill:#FFF3E0
graph LR
    subgraph 公式["Agent 产品公式"]
        M[Model<br/>推理引擎<br/>Claude/GPT] + H[Harness<br/>能力边界<br/>工具/权限/上下文]
    end
    
    M + H --> A[Agent<br/>完整产品<br/>感知/推理/行动]
    
    style M fill:#E3F2FD
    style H fill:#E8F5E9
    style A fill:#FFF3E0

Model 负责:

  • 感知环境(理解代码库、解析错误日志)
  • 推理决策(规划步骤、判断工具调用)
  • 行动策略(决定读什么文件、执行什么命令)

Harness 负责:

  • 提供工具(Bash、Read、Write、Edit、Browser)
  • 管理权限(沙箱隔离、审批流程)
  • 上下文管理(压缩历史、加载知识)
  • 扩展能力(Skills、MCP、Hooks)

Harness 工程师的工作

你不是在编写智能。你是在构建智能栖居的世界。

工作职责对应 Harness 组件
实现工具给 Agent 双手Tools(Bash/Read/Write)
策划知识给 Agent 领域专长Skills(按需加载)
管理上下文给 Agent 干净记忆Context Compression
控制权限给 Agent 安全边界Permissions(deny→ask→allow)
收集任务数据训练下一代模型Trajectory Logging

启示:最好的 Agent 产品,出自那些明白自己的工作是 Harness 而非 Intelligence 的工程师之手。

本章小结

  • LLM Agent 的核心:推理能力来自训练数据,不是架构或编排
  • Agent 产品公式:Agent = Model + Harness
  • 提示词水管工陷阱:假 Agent 无法泛化,是 GOFAI 的还魂
  • Harness 工程师:构建 Agent 栖居的世界,不编写智能
  • Claude Code:Harness 工程的标杆——信任模型、专注环境

预告:下一篇我们深入理解 Harness 这个概念——“模型是大脑,Harness是身体”。



相关内容

如果这篇文章对你有帮助,欢迎请我喝杯咖啡 ☕
Cygnus Yang 支付宝支付宝
Cygnus Yang 微信微信