Skip to content

5.3 真实案例——好的 Agent 与坏的 Agent

理论讲了很多,来看看真实世界的故事。三个案例——一个成功、一个失败、一个惊险。


案例一:Cursor Agent 的第一次实战 ✅

一位开发者用 Cursor Agent Mode 从零搭建一个广告公司门户网站。他记录了完整过程——包括好的、坏的、和戏剧性的时刻。

好的部分

Agent 在实现具体功能上表现出色:

  • 路由配置、组件搭建、样式实现——这些「定义明确的任务」,Agent 几乎一遍过
  • 对于「做一个导航栏」「加一个表单」这类需求,Agent 的速度是人工的 5-10 倍

坏的部分

Agent 在理解业务意图上频繁出错:

  • 「让页面更有吸引力」→ Agent 加了花哨的动画,但不符合品牌调性
  • 「优化用户体验」→ Agent 改了布局,但破坏了信息层次

戏剧性的部分

Agent 做到 80% 的时候,突然开始「越改越差」——每改一个地方就破坏另一个。开发者意识到 Agent 的上下文已经「疲劳」了——太多修改历史让它迷失了方向。

解决方案:开新对话,只给 Agent 最新的代码状态和具体的修改需求,跳过所有历史。

教训

教训行动
Agent 擅长「怎么做」,不擅长「为什么做」业务决策由人做,Agent 负责实现
上下文会「疲劳」长任务拆成短对话,每次给干净上下文
80% 分水岭前 80% 让 Agent 做,后 20% 人工精修

案例二:4 美元的递归执念 ❌

一位开发者设计了一个代码审查 Agent,让它审查一个 Pull Request 的变更。

PR 只有 3 行变更——一个简单的变量重命名。但 Agent 的反应是:

步骤 1:读取 PR 变更 → 3 行改动
步骤 2:分析变更影响 → 需要检查是否有其他引用
步骤 3:搜索整个代码库中的旧变量名 → 找到 47 处引用
步骤 4:逐一检查每个引用 → 分析是否需要修改
步骤 5:发现一些引用在不同模块 → 需要分析模块依赖
步骤 6:分析模块依赖图 → 发现间接依赖
步骤 7:检查间接依赖是否受影响 → 更多文件需要分析
……

结果:Agent 花了 4 美元来审查一个 3 行的变量重命名。它陷入了「递归执念」——每发现一个新线索就追下去,无法停止。

教训

"让 Agent 行动不难,难的是让它知道什么时候该停。"

这是 Agent 设计中最核心的问题之一——终止条件

解决方案

  1. 设步骤上限:超过 20 步自动停止
  2. 设成本上限:超过 $1 自动停止
  3. 定义「足够好」的标准:变量重命名只需检查直接引用,不需要追到间接依赖
  4. 用 Plan-Execute 模式:先规划审查范围,再执行,而不是边查边扩大范围

案例三:AutoGPT 2023 vs Claude Code 2025 🔄

同一个任务——为开源项目写贡献指南,用 2023 年的 AutoGPT 和 2025 年的 Claude Code 分别执行。

❌ AutoGPT (2023)
成本$12
时间2 小时
结果未完成
走偏严重(绕到法律问题)
循环控制
上下文管理无(无限膨胀)
✅ Claude Code (2025)
成本$0.3
时间3 分钟
结果可用
走偏
循环控制有(子代理返回摘要)
上下文管理有(fork 隔离)

两年代价换来了什么?

  • 执行边界:子代理有明确的任务范围,不会无限扩大
  • 成本控制:fork 隔离减少了上下文膨胀
  • 模式升级:从纯 ReAct(边想边干)到 Plan + Explore(先搜索再综合)
  • 记忆管理:子代理只返回摘要,不把所有中间结果塞进主对话

三条通用经验

从三个案例中提炼出的通用经验:

经验一:定义「完成」比定义「开始」更重要

Agent 天然倾向于「再多做一点」。你必须在指令中明确:什么是「完成」的标准,什么时候该停。

经验二:上下文是消耗品,不是积累品

对话越长,Agent 的表现越差。长任务拆成短对话,每次给干净上下文,比一次长对话效果好得多。

经验三:人做判断,Agent 做实现

Agent 擅长「怎么做」,不擅长「为什么做」和「做得对不对」。业务决策、质量判断、安全审查必须由人来做。


本节核心要点

  • Agent 擅长实现具体功能,不擅长理解业务意图
  • 「递归执念」是 Agent 最常见的行为问题——设步骤上限和终止条件
  • 2023 到 2025 的进步:执行边界、成本控制、模式升级、记忆管理
  • 三条通用经验:定义完成标准、拆分上下文、人做判断 Agent 做实现

思考题:回想你使用 AI 编程工具最满意和最不满意的一次经历,它们分别对应了今天讲的哪条教训?


下一节预告:最后一站——练习与巩固。概念题、设计题、综合实战,把学到的知识变成真正的能力。

下一节:概念题 →