用途:在当前会话结束时,把讨论过的架构决策整理成架构决策记录(ADR),避免重要取舍仅停留在对话中。
主要能力:先收集仓库上下文(当前分支、最近提交、已有 ADR 目录与数量),再分析会话提取值得记录的决策(技术选型、架构模式、设计取舍、被否决的替代方案等),以 JSON 形式返回决策数组;随后向用户展示完整决策细节并让其选择要写入哪些,最后并行生成 ADR 并汇总、校验。
使用方式:依次执行上下文收集(git branch --show-current、git log --oneline -5、查看 docs/adrs/),提取决策后可运行 python plugins/beagle-analysis/skills/adr-writing/scripts/next_adr_number.py --count N 预分配编号,再把编号与决策一一对应,每个决策交由一个写入单元并行生成,文件命名形如 NNNN-slugified-title.md。
产出格式:MADR,文件以 YAML frontmatter 开头,含 status 与 date 字段,正文包含 Context and Problem Statement、Decision Drivers、Decision Outcome 及 Consequences(需有 Good 与 Bad 两项)。默认写入 docs/adrs/,若无该目录则创建并加入初始 0000-use-madr.md 模板。
校验:检查文件名格式、frontmatter 是否可解析、是否记录了至少 2 个替代方案、后果是否兼具正反两面;存在缺口时保持 draft 状态并留下 [INVESTIGATE] 提示。
限制:依赖当前会话中已作出的决策,若无决策可提取则跳过;写入质量取决于会话信息是否充分;资料未提供收费、平台支持范围等细节。