返回探索
指南VibeFix 编辑部更新于 2026年10月4日

AI 生成的代码出 Bug 了:让 Agent 自己修好的 5 个套路

AI 写代码快,修 Bug 却慢——因为你还在用人肉调试的老办法指挥 Agent。「修一下」是最贵的指令。本文 5 个套路:先复现再动手、一次给全上下文、二分定位、修完必须补回归测试、3 次修不好就换方案。调试是 AI 时代程序员最后的护城河之一。

放大镜悬在一片代码之上,深色背景

先说个扎心的事实:你指挥 Agent 修 Bug 的方式,决定了它烧多少钱

AI 写代码已经很快了,但几乎每个 vibe coder 都经历过这个绝望时刻:一个 bug,Agent 修了 40 分钟、改了 12 版,越修越糟,最后你含泪 git checkout 回滚,token 账单还多了一长串。

问题通常不在模型,在你给的指令。大多数人修 bug 时只会说一句话:"这里报错了,修一下。"——这是最贵的指令,因为它把定位、复现、验证的全部工作都推给了 Agent 在黑暗中摸索,而摸索的每一分钟都是按 token 计费的。

人肉调试时代,你靠的是经验和直觉;Agent 时代,你要把"调试方法论"显式地教给它。下面 5 个套路,每一个都能直接复制进你的 prompt。

套路 1:先复现,再动手——不许直接改代码

这是最重要的一条,给 Agent 的第一指令永远应该是:"先写一个能稳定复现这个 bug 的最小脚本,跑通给我看,确认复现了再改代码。"

为什么?三个原因。第一,复现脚本是"验收标准"——修完之后跑一遍就知道修好没,不用你人肉点来点去。第二,它逼 Agent 先理解 bug,而不是凭感觉改。第三,很多"修不好"的 bug,本质是 Agent 根本没复现出来,它在修一个自己想象中的问题。

实操模板:"不要直接修改源代码。先在 /tmp/repro/ 下写一个最小复现脚本,用 xxx 命令运行,把输出贴给我。等我确认复现成功,你再开始定位。"

套路 2:把上下文一次给全——别挤牙膏

Agent 最常见的失败模式是"在信息不全的情况下开始猜"。你只贴了报错的第一行,它就敢重构整个函数。正确做法是:报错堆栈全文、相关日志、复现步骤、最近一次改动(git log/diff)、运行环境,一次性给够。

有个简单的判断标准:如果你把这些信息拿走,一个人类工程师能不能定位问题?不能的话,Agent 也不能——它只会用更多的 token 制造更多的幻觉。挤牙膏式对话(问一句答一句)是 token 的焚化炉。

另外,明确告诉 Agent 哪些文件是"只读参考"、哪个目录是"嫌疑范围"。把搜索空间圈小,定位速度会快一个数量级。

套路 3:二分定位——让 Agent 像用 git bisect 一样思考

面对一个"不知道哪儿坏了"的问题,别让 Agent 把全仓库读一遍。教它二分法:"先列出 3 个最可能的故障点,按概率排序;对每一个,设计一个 1 分钟能验证的实验;从概率最高的开始,一个一个排除。"

更狠的招:直接让它用 git bisect。"这个 bug 是最近 20 个 commit 里引入的,用 git bisect 配合复现脚本自动定位到具体 commit,把那个 commit 的 diff 贴给我。"——机器最擅长做这种枯燥的二分搜索,别浪费它的长处。

关键心态转变:定位问题和修复问题是两件事,要分两个指令下。混在一起,Agent 就会边猜边改,改出三个新 bug。

套路 4:修完必须写回归测试——不写测试的修复等于没修

"修好了"在 Agent 的世界里经常意味着"这次运行没报错"。你的指令里必须加一条硬性要求:"修复完成后,为这个 bug 写一个回归测试,放进测试套件,跑全量测试确认没有破坏其他功能。"

这条的价值是双重的:短期看,它逼 Agent 验证自己的修复不是"头痛医头"(比如把报错 catch 住吞掉);长期看,你的测试套件在悄悄变厚——每一个修过的 bug 都变成了一道护栏。三个月后你会发现,AI 写出来的项目,测试覆盖率反而比很多人肉项目高,因为"修 bug 必须补测试"这条规则是机器最擅长遵守的。

注意:让 Agent 先跑现有测试套件,确认基线是绿的,再修。否则它可能把"本来就红的测试"也算成自己的锅,或者反过来。

套路 5:3 次修不好就换方案——给 Agent 设定尝试上限

这是省钱的终极套路。Agent 有个坏毛病:一条路走不通,它会换个姿势继续撞墙,撞 20 次,烧掉你一顿饭钱。必须在指令里设上限:"如果同一个方案尝试 3 次还没修好,停下来。回滚所有改动,用 200 字总结你已经排除了什么、还剩哪几种可能,然后等我决定换方案。"

这条规则背后是一个判断:连续失败 3 次,说明初始假设大概率是错的,继续试只是沉没成本。人类工程师的直觉是"这条路不对,换条路";Agent 没有这种直觉,你得替它装上。

配套动作:修 bug 前先 git stash 或开新分支。让 Agent 在沙盒里折腾,修好了再合回来——回滚成本从"含泪重写"变成"一条命令"。

3 个反模式,看到就停

第一,"修一下"式指令:没有复现、没有范围、没有验收标准,等于让 Agent 自由发挥烧你的钱。第二,一次改多处:让 Agent 同时改 5 个文件,出问题你根本不知道是哪一处改坏的——一次只动一个嫌疑点。第三,不看 diff 就合并:Agent 的 diff 你必须扫一眼,特别是删代码、改条件、动迁移脚本的地方,这是之前安全指南里讲过的红线,这里再强调一次。

最后:调试能力是 AI 时代最保值的技能

写代码这件事,AI 已经比大多数人快了。但"定位一个诡异 bug"——理解系统、提出假设、设计实验、排除干扰——依然是人类工程师的核心价值,而且短期内 AI 替代不了。

更妙的是,上面这 5 个套路,本质上都是"好的人类调试习惯"的显式化。你把方法论教给 Agent 的过程,也是在训练你自己的调试直觉。AI 时代,提问题的人比写答案的人更值钱——而调试,就是提问题的艺术。

下次 bug 出现时,别急着说"修一下"。先问 Agent:"复现脚本呢?"

浏览项目广场发布你的项目

相关文章

深色错误监控仪表盘界面,象征 vibe 项目的错误追踪与崩溃上报体系
指南
上线第一天用户白屏了你却最后一个知道:vibe 项目的错误监控与崩溃上报实战

每个 vibe 项目都会经历同一个黑色幽默时刻:网站白屏了,朋友比你的监控先告诉你。这篇实战为一人团队搭建完整错误监控体系:5 分钟 Sentry 最小闭环、错误边界、上报上下文设计、后端结构化日志、AI 调用专项防护、告警分级降噪,最后附上线检查清单。

调试排错后端工程部署上线