在大型软件项目中使用AI进行编码的经验
本文总结了本人近期对接的一个 B 端项目的相关经验,该项目为前后端开发项目,其中 99% 100% 的代码由 AI 生成。如何在一个庞大的、时间跨度大的项目中重度使用 AI 进行编码,并最高限度地保证代码与需求的一致性和可维护性,是本文要讨论的核心问题。
信息源模型
把一切可复用的、跨会话的、跨角色的信息都放进文件系统中进行追踪。
1 | > AGENTS.md 片段示例 |
唯一真相源
为了保证代码与需求的一致性,我们必须对信息源的来源途径进行限制——同一种信息只能有一个权威真相源。如果同一种信息在多个位置都有指定,那么在不同的会话中,AI 可能会引用过时的或不准确的需求,造成漂移。
在采用文件系统追踪信息源时,确保控制好这一点。例如,可以专门创建一个文件夹用于存储所有的文档和上下文信息。
会话交接闭环
要想使得每个会话之间都能携带正确的上下文信息,需要确保两点:一是每个会话在接收到来自用户的新信息时,都要将这些信息写入到可追踪的文件中;二是新会话启动时,必须读取这些文件以获取上下文信息。
基于文件的会话上下文交接能够确保每次新会话在启动时都不需要人工整理上下文信息,因为这些信息是自动进行维护的。
版本化及优先级
在一个不断迭代的项目中,信息会发生频繁变化。为了避免事实冲突,我们有必要对所有文档标注修订日期,让智能体以最新的版本为准。
即便如此,可能仍会有冲突的内容产生,此时要求我们指定所有类别的文档的优先级。例如,“现行 PRD > 客户对接记录 > 历史 PRD”。
提示词写作
这一章节梳理了我常用的提示词结构,以供参考。
开场提示词
每次创建新会话时使用的提示词,包含:
- 权威资料索引:给出可能涉及的所有文档资料的位置及优先级。
- 目标:列出本次会话需要完成的目标,最好提供可验证的预期结果。
- 资源条件:给出测试数据库、测试样本路径、测试账号、已启动的开发服务器等资源信息,避免中途请示。
- 工作流规范:说明提交规范、子智能体使用规则、工具调用限制及其他可能的约定。
1 | > 提示词片段示例 |
问题修复提示词
所有问题的本质都是实际行为与预期行为不符。在描述问题时,确保提供了最小复现三要素:操作路径、期望行为、原始错误。缺少任一复现要素的请求会导致问题修复效率降低。
有时,为了便于修复问题,还会额外提供标准样本或对照样本,以确保能够对齐。
子智能体委派
处理大型代码库时,主会话智能体容易积累大量对话上下文,这会导致两个问题:一是信息庞杂,智能体处理事务时的精准度下降,并且可能抵近上下文限制;二是开销,输入较长的上下文会导致响应时间和金钱成本增加。解决此问题的主要办法是将任务拆分给子智能体处理。
因智能体框架和所用的大语言模型而异,理想情况下,智能体可能会自动地在恰当的时机委派子智能体来处理任务。但仍值得我们在提示词中强调对于子智能体的高效利用。
1 | > AGENTS.md 片段示例 |
- 标题: 在大型软件项目中使用AI进行编码的经验
- 作者: Harry Huang
- 创建于 : 2026-09-07 11:24:00
- 更新于 : 2026-09-07 11:24:00
- 链接: https://blog.harryh.cn/SE/Experience-About-AI-Coding-In-Large-Softwares/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。