
大家好,我是程序员鱼皮。
有人说 Codex 香、Claude Code 夯,但是 Cursor 这个曾经的王者似乎已经过时了?
其实不然,Cursor 作为有图形界面的 AI 编程工具,更专注编程开发的体验,不仅内置了代码编辑器,还针对编程场景提供了一些特色功能。

今天要分享的《Debug 模式》就是 Cursor 的独家功能,我敢说大多数玩 AI 编程的人都不知道。
我一开始也没在意,但体验之后只想说一句:夯爆了!
用 AI 编程修 Bug,大部分时候的流程是这样的:你把报错信息发给 AI → AI 分析代码 → 给出修复方案 → 人工验证一下 → 搞定。
这套流程足够对付大多数小 Bug 了。

但有些狗 Bug 比较刁钻,你按照常规方法排查,发现请求正常、日志也没报错、代码逻辑看起来也对,但运行结果就是不符合预期。
举个例子,假设你做了个「AI 每日热点」应用,热点列表本来应该按发布时间从新到旧排列,但实际展示出来的顺序时对时错,刷新一下又变了。

你看了下代码,发现明明写了按时间倒序排列,没毛病啊???

这种 Bug 就很适合用 Cursor 的 Debug 模式来排查。
在 Cursor 的对话框里,把模式切换到 Debug,然后描述你遇到的 Bug。

和普通的 Agent 模式不同,AI 不会一上来就改代码。
它会先阅读你的项目代码,针对可能出问题的地方 生成多个假设。

然后 AI 自动在代码的关键位置插入日志探针。这些日志数据会发送到 Cursor 内置的本地调试服务器,用来采集运行时的真实数据,比如变量值、执行路径、时序信息等。

接下来 AI 会给你具体的复现步骤,让你去操作应用,把 Bug 触发出来。

你按步骤操作的同时,Cursor 在后台收集运行时的日志数据,看到变量的实际值、代码的执行路径等等。
复现 Bug 之后,让 AI 继续执行。
AI 通过运行时日志发现了 Bug 的导火索。部分热点数据的 time 字段是字符串类型,另一部分是数字时间戳。排序代码用的是 b.time - a.time,字符串减字符串得到的是 NaN,导致排序结果不确定。

如果没有运行时日志,光看排序代码,你很难注意到是数据类型不一致导致的。
定位到原因后,AI 给出了修复方案并自动改好了代码,统一把 time 转为时间戳再比较。

修好 Bug 之后,AI 会让你再复现一次来验证修复效果。
如果你觉得还没修好,AI 就会加上更多日志探针,你再复现一次,它再分析,一直循环直到问题真正解决。

确认修复后,AI 会自动把之前插入的所有调试日志清理干净,只留下那几行真正的修复改动,非常精准。

最后,AI 还会给出一段简洁的问题总结,便于你了解 Bug 根因和修复方案。

总结一下,这套 Debug 模式的工作流程是:假设 → 埋点 → 复现 → 用数据验证 → 修复 → 再验证 → 清理。

Debug模式完整工作流循环
Cursor 官方在设计这个功能时,研究了团队中最优秀的调试工程师的实践,把他们的工作方法封装成了这套模式。
整个过程中,AI 负责繁琐的数据收集和分析工作,你只需要按步骤复现 Bug、确认修复效果就好。
这也是 Debug 模式能搞定那些普通 Agent 模式解决不了的 Bug 的原因,它拿到了程序运行时的真实数据来做判断,而不是凭借着训练数据的经验值盲目猜测。

Agent模式和Debug模式对比
并不是所有 Bug 都需要 Debug 模式。一般的报错或者逻辑问题,用普通 Agent 模式发一段描述就够了。
Debug 模式最适合的是那种 运行时才暴露 的问题:
1)竞态条件和时序问题。比如两个请求几乎同时写入数据库导致数据被覆盖,这种问题只有在并发的时候才会出现,看代码根本看不出来。
2)数据时对时错的问题。就像前面那个排序 Bug,有时候结果对有时候又不对,AI 需要运行时数据才能发现规律。
3)性能问题和内存泄漏。页面用着用着变卡、内存占用一直涨,需要运行时数据才能定位瓶颈在哪。
4)回归问题。功能之前好好的,突然就不行了,代码改动又多,光靠代码变更根本看不出哪一行引入了问题。
这些问题光靠看代码很难发现,只有跑起来、拿到运行时的真实数据,才能找到根因。所以遇到这类 Bug 的时候,果断切换到 Debug 模式试试,会比在 Agent 模式里反复让 AI 猜高效很多。

再分享几个使用 Debug 模式的技巧。
1)描述 Bug 的时候尽量详细,把错误信息、堆栈跟踪、操作步骤、预期行为和实际行为都说清楚,AI 的调试效果会好很多。
2)复现 Bug 的时候严格按照 AI 给的步骤去操作,因为 AI 插入的日志是有针对性的。
3)如果 Bug 不是每次都出现,那就多复现几次,竞态条件这类问题可能要触发好几次才会暴露。
很多人觉得没有编程基础,就不能靠 AI 编程做出完整项目,因为一旦遇到 Bug 就束手无策了。
别担心,AI 编程工具和模型是在不断进化的,像 Cursor 的 Debug 模式就把专业工程师的方法论变成了一个开箱即用的功能,你不需要自己来写日志、会分析堆栈,AI 都帮你搞定了。学会利用好 AI 编程工具的功能,哪怕你不懂技术,一样可以做出复杂的项目。
目前 Debug 模式是 Cursor 独有的功能,Claude Code 和 Codex 还没有类似的能力。毕竟每个工具都有自己擅长的地方,根据自己的情况选择就好,也希望它们能进一步提升 AI 编程的工程能力和开发体验。