决策日志管理Skill decision-log

决策日志管理技能用于系统化地记录、存储和检索决策过程,包括上下文、选项、理由和后果。它帮助团队和个体追踪决策历史,提高透明度和协作效率,适用于技术架构、产品开发和流程优化。关键词:决策日志、ADR、文档管理、团队协作、决策追踪、架构决策记录、项目管理。

架构设计 0 次安装 0 次浏览 更新于 3/15/2026

name: 决策日志 description: 记录和检索决策及其上下文、选项和理由。用于记录决策、审查过去决策或回答“为什么我们选择了X?”等问题。

决策日志

记录决策及其上下文、考虑的选项和理由。检索和解释过去决策,以便团队和未来的您了解为什么选择了某个方案。

何时使用

  • 用户希望记录一个决策(ADR、决策记录、“为什么我们选择了X”)
  • 用户询问“为什么我们选择了X?”或“关于Y的决策是什么?”
  • 用户希望在决策前审查选项
  • 用户正在构建或维护决策日志

工作流程

  1. 上下文:决策关于什么?(范围、约束、触发因素)
  2. 选项:考虑了哪些选项?(2–5个)
  3. 标准:什么因素重要?(成本、速度、风险、可维护性等)
  4. 决策:选择了什么?
  5. 理由:为什么?有哪些权衡?
  6. 后果:接下来做什么?(后续工作、可逆性、审查日期)

决策记录格式

# [决策标题]

**日期**:YYYY-MM-DD  
**状态**:提议 | 已接受 | 已弃用 | 被 [链接] 取代  
**决策者**:[谁参与了]

## 上下文

[是什么情况或问题导致了此决策?存在哪些约束?]

## 考虑的选项

### 选项A:[名称]

- **优点**:[列表]
- **缺点**:[列表]

### 选项B:[名称]

- **优点**:[列表]
- **缺点**:[列表]

### 选项C:[名称]

- ...

## 决策

**[选定的选项]** 因为 [1–2句理由]。

## 理由

[为什么选择此选项?接受了哪些权衡?拒绝了哪些选项及原因?]

## 后果

- [我们获得什么]
- [我们放弃或承担什么风险]
- [后续工作]
- [何时重新审视:例如6个月后,或当X发生时]

## 参考

- [链接到工单、文档或讨论]

每个记录只针对一个决策。当后续决策取代此决策时,使用“被取代”。

何时创建记录

  • 技术方面:架构、技术栈、库、API设计、数据模型
  • 流程方面:我们如何开会、部署、审查、入职
  • 产品方面:功能范围、优先级、推出策略

对于微小、可逆的选择(如变量命名),跳过记录。用于影响他人或难以撤销的选择。

检索决策

当有人问“为什么我们选择了X?”时:

  1. 搜索决策日志(或代码库中的ADR文件)
  2. 返回匹配的记录:上下文、选项、决策、理由
  3. 如果被取代,指向新决策并简要说明原因

如果没有记录存在:说明情况,并提议根据已知信息或对话草拟一个。

轻量级变体

用于无需完整ADR格式的快速日志:

## [日期] [一行决策描述]

- **上下文**:[1句]
- **选项**:A, B, C
- **选定**:A。**原因**:[1句]
- **后续**:[任何]

语气和风格

  • 中立且事实性
  • 用过去时描述已决定的内容
  • 清晰表达“我们选择了X因为Y”
  • 不指责;专注于理由和权衡

反模式

  • ❌ 记录每个微小选择;保留用于有意义的决策
  • ❌ 只陈述结果而不提选项或理由
  • ❌ 没有日期或状态(难以知道是否仍然有效)
  • ❌ 在一个记录中混合多个决策