在刚开始用 cursor 等工具时,只是用 AI 帮忙生产代码,代码的逻辑、业务流程都在人的脑子里面,这导致 AI 只能在局限的范围内帮一小部分忙,效率很低。而且还经常帮错忙,比如改错了、代码风格不一致等等。
这是最基础的 AI 用法,只用 AI 写代码,于是我想有什么办法可以让 AI 更大程度的接管项目,我把它分为三部分。
代码风格 Prompt
用于约束 AI coding 的规范,这一部分就可以分出很多分支,比如按照文件夹的、按照文件后缀、业务模块等等,可以结合 cursor 自带的 .mdc 规范文件一起用。
这里不和业务相关,只和编码规范相关,要遵循 Prompt 编写的常见方法,比如给案例、指令优于限制等。
Prompt 编写的技巧,我准备过两天写一篇文章总结下,感兴趣的可以关注我。
日志记录文件
这里记录每一次代码改动,每个文件大致包含变动原因、改动方案、变动结果、测试结果等等,这些文件为 AI 提供整体项目的上下文,把每一次业务场景记录下来。这样 AI 就能理解整个项目,慢慢的从每次迭代中学习,不再犯重复的错误。
AI 编写代码会重复的犯某些特定的错误,原因是我们给的上下文不够,但我们也不可能每次编写代码的时候都把项目从 0 开始讲一遍让 AI 理解整个项目情况,所以这一套文件就是把项目的迭代过程文档化,加载到 AI 的上下文中。
生成日志文件本身也需要一个 Prompt,让生产的文档规范化。
分步骤执行
此后写代码之前,先将需求的信息给 AI,使用后退一步的方法加载日记记录文件到上下文,用对话完善此次需求,再生成新的日志记录文件的前半部分和编写代码的大纲文件。
日志记录文件保持只新增。
然后再开启一个新的对话,用后退一步的方法加载代码规范到上下文,根据编写代码的大纲文件开始执行代码。
执行完成后测试,再把最终的结果完善到日志记录文件。
这样每个需求到流程都是规范化和文档化的,AI 会在整个过程中越用越聪明。
当然这样也有个问题,目前我发现的就是文档太多了,有时候会不按照规范执行,我在考虑用 RAG + MCP 的方式,一个项目一个数据库,把整个流程完善成 flow。
这里面会大量用到 Prompt 编写的技巧,我准备下一遍文章详细罗列出来。