你终于决定动手做那个念叨了很久的待办应用。从零开始写,市面上同类产品多到数不清,但这款会是你的,完全贴合你自己的工作流

放在以前,你根本不会接这种活。手写代码太花时间,而你最缺的就是时间。更麻烦的是,你本身就靠写代码吃饭,下班后再碰键盘需要不小的心理建设。

但现在不一样了。有大模型帮忙,你不用再一个字一个字敲。何况你是个不错的软件工程师,在相邻领域还有经验,带一个AI编码代理上手并不难。

按老习惯,先做个概念验证

你像往常开发软件一样,从一个小型验证开始,用更通俗的话说,就是先做个概念证明。你把指令写得非常仔细,一条条约束代理的行为,确保它按你的想法来。你一向擅长跟这些代理打交道。

这次用的代理叫 Pol,在基准测试里排名相当靠前。这些代理一直在进步,按理说现在用起来应该比一个月前更顺手。你让它去跑代码,自己继续忙日常事务,或者干脆去睡觉。毕竟现在的代理已经相当自主了。

醒来第一件事,就是查看Pol的产出

第二天醒来,你照例走到桌前检查 Pol 的进展。看第一版产出总是让人兴奋,它们通常粗糙、没打磨、容易出错,但很有成就感。从无到有,从一个念头变成能跑的软件,就像魔法和巫术终于成真了。

可第一眼扫过去,你根本没看到任何软件。这不对吧,你甚至怀疑自己是不是没运行它。带着点自我怀疑,你切到 Pol 那个简陋的小终端。

屏幕上写着:本周用量 0%,重置时间在 7 天后。

你盯着这行字,脑子还没被咖啡唤醒,拒绝理解这意味着什么。你的周配额昨天才刚重置过,这肯定哪里搞错了。

12小时内,周配额被烧得一干二净

你手忙脚乱地敲命令查用量和状态,所有结果都指向同一个结论:在过去 12 小时里,Pol 有条不紊、一丝不苟、像变魔术一样,把你整周的配额全部耗尽。数十亿个代币凭空消失,说没就没了。

你不是外行,也不是那种只会跟着感觉走的“氛围程序员”。你打开项目代码,想搞清楚 Pol 是不是误打误撞重建了个 Windows 12,或者顺手做了个 GTA 7。

仓库里几乎空荡荡,只有一个叫“tests”的子文件夹。你点进去,里面是更多子文件夹。每个文件夹都精心生成了自己的 sha256 哈希值。

每个测试都在覆盖永远不会触发的边界情况

每个测试都覆盖了一个你的应用要费很大劲才能踩到的边界场景。每个测试都写得干干净净,针对的是根本不会被打到的角落情况。烧掉 1000 万个代币,就为了确保没有任何人会在使用这款应用时遇到问题。

而人们也确实不会遇到任何问题,因为应用本身连影子都没有。没有占位符,没有待办事项,什么都没有。

这时你突然明白了。为什么代理会过度编排,为什么会过度设计,为什么测试覆盖偏执到这种程度。

氛围程序员们把它训练成了“一次过”的怪物

原因在于,过去几个月里,成千上万的氛围程序员把这类代理训练成了能一次性搞定所有需求、不出任何问题的东西。代价是它现在消耗的代币量是以前的 10 倍。

你为这种“稳妥”付了账,得到的却是一个只有测试、没有产品的空仓库。氛围税,原来在这里等着你。