我是怎么让 AI 从头写完一个后台系统的
去年我还在纠结"AI 能不能写生产代码",今年这个问题已经不重要了。真正的问题变成了:当代码全部由 AI 写出来的时候,谁来保证它不越界?
我做了个实验:一个中等规模的后台系统,从建仓库到上线,我一行代码都不写,只做决策和审批。跑了两个多月,中间换过几次模型。下面是我认为真正起作用的几件事。
一、规矩要写在仓库里,不能存在模型的记忆里
最开始我把要求都写在聊天窗口里,说得很细。结果是:这一轮很听话,换个会话就全忘了。会话是会过期的,模型是会换的,只有仓库是留下来的。
后来我改成在仓库根目录放一份"上岗须知",写清楚三件事:读哪些文档、哪些事情绝对不许做、接到活之后按什么步骤走。任何一个新来的 AI,读完这一页就能开始干活,不需要我再复述一遍。
判断标准很简单:如果换一个模型接手,它读完仓库里的文字能不能独立开工?不能,就说明你的规矩还长在你自己脑子里。
二、先出验收清单,再动手
我说的话往往很模糊,比如"加个客户台账页"。这句话可以有十种做法。以前我直接让它做,做出来八成不是我想的那个,然后来回改三轮。
现在的流程是:它先把我的话翻译成一张可勾选的清单,念给我听,我确认之后才允许写代码。这一步看着啰嗦,实际省了大量返工——因为分歧暴露在写代码之前,而不是之后。
- 每一条验收项必须能勾选,"优化一下体验"这种话不算;
- 要写清楚允许改哪些目录、禁止碰哪些目录;
- 要写清楚怎么证明做完了:跑什么命令、看哪个页面。
三、闸门交给机器,不要靠自觉
这是我踩得最狠的一个坑。我写了一堆"禁止直接推主干""禁止硬编码密钥",AI 也答应得很好,但偶尔还是会犯。原因不是它不老实,是它在长上下文里会逐渐忘掉边界。
后来我把这些规矩全部做成了自动检查:没有关联任务单的合并请求直接判失败,扫到明文密钥直接拒绝,分支名和账号对不上也拒绝。规矩一旦变成机器执行的,遵守率就是 100%。
提交 → 自动检查(格式 / 密钥 / 边界 / 任务单)
→ 另一个 AI 审代码
→ 我点批准
→ 合并
三道关缺一不可,顺序也不能颠倒。看起来重,但我每天真正要做的只有最后那一下点击。
四、留尾巴必须登记
AI 很擅长把活干到"看起来完成了"。为了避免这个,我要求它每次交活都必须回答一个问题:这次留了什么尾巴? 没做到的要写原因,超出清单的改动要单独列出来。
这一条给我省下的时间可能比前面三条加起来都多。因为最贵的不是返工,是三个月后发现某处一直是半成品,而当初谁都没提。
那到底省了多少事
老实说,我花在"定规矩"上的时间不比自己写代码少。区别在于:规矩写一次,之后每个新来的 AI 都能用;代码自己写一次,就只有那一次。
如果只让我留一句话:不要把 AI 当成一个更快的自己,把它当成一个流动性极高的团队。 团队管理靠的是流程和文档,不是叮嘱。