ADRs4AI:用于人机协作的版本化审议记录

核心概念:捕捉推理过程

ADRs4AI 通过将审议过程形式化为版本化的架构决策记录(ADRs),解决了人机协作中推理过程“蒸发”的问题。虽然代码会被保存,但底层的逻辑、考虑的选项以及与 AI 模型讨论的权衡通常会丢失。该框架要求将这些审议过程以结构化的、Git 版本化的格式记录下来,使未来的协作者能够理解特定实现选择背后的“原因”。

ADRs4AI 工作流

该方法论以一个简单的循环为中心:捕捉意图的“种子”,让 AI 将该意图结构化为 ADR,最后由人类做出最终裁决。该流程旨在集成到标准的开发周期中:

  1. 种子 (Seed):用户将他们的初步想法或需求转储到文件中。
  2. 结构化 (Structure):AI 处理此输入,识别悬而未决的问题,并提出带有相关理由、置信度水平和潜在证伪因素的选项。
  3. 裁决 (Ruling):人类审查 AI 的建议并做出最终决定,然后将其提交到存储库中。

此工作流由一个 VS Code 扩展支持,该扩展提供悬而未决问题的树状视图,以及一个 iOS 客户端,允许用户随时随地审查和接受决策。该系统使用特定的标签 ### QST:,使得悬而未决的问题可以通过 grep 等标准工具轻松搜索。

实现与工具

该生态系统提供了多种工具来降低采用此实践的门槛:

  • 存储库模板:包含 ADR 模板、指令和收件箱协议的入门模板。
  • VS Code 扩展:具有针对格式错误记录的诊断功能,以及一个 MCP 服务器,使 AI 代理能够查询项目的历史记录。
  • iOS 客户端:一个用于审查待处理决策并直接向存储库提交答案的移动界面。

社区反馈与批评

ADRs4AI 在 Hacker News 上的反响既突显了结构化决策的潜在效用,也反映了对实施过程的实际担忧。

一些用户对该项目过于营销化的展示表示怀疑,指出 ADR 的核心概念在软件工程中早已广为人知。另一些人则对 AI 驱动工作流中“文档腐烂”的风险提出了担忧:

"代理程序会开始对 ADR 所谓的记录的各种相互冲突的‘护栏’和‘约束’感到困惑。当你问代理为什么做了某个牵强的操作时,它会引用各种有缺陷或过时的假设。这还是那个老掉牙的文档腐烂问题,只不过现在文档被盲目地遵守了。" — @handle

相反,该系统的支持者指出,记录设计规则(例如 intent.md 文件)对于在 AI 辅助开发会话中保持一致性非常有效。用户建议,该项目若要获得更广泛的采用,需要提供更清晰、真实的案例研究,以证明它如何解决除文档理论优势之外的具体、棘手的痛点。

Sources