用途:记录决策而非复述代码,重点解释“为什么”——背景、约束与取舍,供后续工程师和 Agent 使用。适用于做出重要架构决策、在竞争方案间选择、新增或变更公共 API、发布改变用户可见行为的功能、帮新成员熟悉项目、反复解释同一件事时;不要给一目了然的代码写文档、不要写复述代码的注释、不要给一次性原型写文档。
主要能力:
- ADR:记录框架/依赖选型、数据模型、鉴权策略、API 架构、构建与托管平台等难以逆转的决策。存放于 docs/architecture/,文件名 ADR-<序号>-<简短标题>.md,序号全局连续;数量多时可按主题建子目录。模板含状态、日期、背景、决策、考虑过的备选方案、后果。生命周期为提议→已接受→被取代或已废弃,不删除旧 ADR,变更时新写一条并声明取代关系。与 arch-design 分工:arch_design.md 服务当下实现,ADR 固化长期决策。
- 内联文档:注释解释不显然的意图与已知的坑,可引用 ADR;不写复述代码的注释、不留 TODO、不留被注释掉的代码。
- API 文档:与类型写在一起(TypeScript 首选),标注参数、返回值、抛出的错误与示例;REST API 用 OpenAPI/Swagger。
- README:覆盖项目说明、快速开始、命令表、架构概览(链接 ADR)、贡献指南。
- Changelog:按新增、修复、变更分类记录已发布功能。
- 面向 Agent 的文档:指令文件(AGENTS.md / CLAUDE.md 等)、spec 文件、ADR 与内联的坑。
使用方式与限制:资料未提供具体安装命令或调用方式,暂未提供。验证清单包括:重要架构决策均有 ADR、README 覆盖快速开始与命令、API 有参数与返回类型文档、已知的坑就地记录、无残留注释代码、指令文件保持最新。