architecture-decision

$npx mdskill add pixel-cellar/Claude-Code-Game-Studios/architecture-decision

当此技能被调用时:

SKILL.md
.github/skills/architecture-decisionView on GitHub ↗
---
name: architecture-decision
description: "创建架构决策记录(Architecture Decision Record, ADR),记录重大技术决策及其背景、备选方案和影响后果。每个重大技术选择都应有对应的 ADR。"
argument-hint: "[标题]"
user-invocable: true
allowed-tools: Read, Glob, Grep, Write
---

当此技能被调用时:

1. **确定下一个 ADR 编号**,通过扫描 `docs/architecture/` 目录中已有的 ADR 文件。

2. **收集上下文**,阅读相关代码和已有 ADR。

3. **引导用户完成决策**,如果仅凭标题不足以明确决策内容,则提出澄清问题。

4. **生成 ADR**,遵循以下格式:

```markdown
# ADR-[NNNN]: [标题]

## 状态
[拟议 | 已采纳 | 已弃用 | 被 ADR-XXXX 取代]

## 日期
[决策日期]

## 背景

### 问题描述
[我们要解决什么问题?为什么现在需要做出这个决策?]

### 约束条件
- [技术约束]
- [时间约束]
- [资源约束]
- [兼容性要求]

### 需求
- [必须支持 X]
- [必须在 Y 预算内执行]
- [必须与 Z 集成]

## 决策

[具体的技术决策内容,描述足够详细以便他人实施。]

### 架构图
[此决策所创建的系统架构的 ASCII 图表或描述]

### 关键接口
[此决策创建的 API 契约或接口定义]

## 备选方案

### 备选方案 1:[名称]
- **描述**:[工作原理]
- **优点**:[优势]
- **缺点**:[劣势]
- **否决原因**:[为何未被采用]

### 备选方案 2:[名称]
- **描述**:[工作原理]
- **优点**:[优势]
- **缺点**:[劣势]
- **否决原因**:[为何未被采用]

## 影响

### 正面影响
- [此决策带来的良好结果]

### 负面影响
- [接受的权衡和代价]

### 风险
- [可能出现的问题]
- [各项风险的应对措施]

## 性能影响
- **CPU**:[预期影响]
- **内存**:[预期影响]
- **加载时间**:[预期影响]
- **网络**:[预期影响(如适用)]

## 迁移计划
[如果此决策涉及现有代码变更,如何从当前状态过渡到目标状态?]

## 验证标准
[如何判断此决策是否正确?采用哪些指标或测试?]

## 相关决策
- [关联 ADR 链接]
- [关联设计文档链接]
```

5. **保存 ADR** 至 `docs/architecture/adr-[NNNN]-[slug].md`。
More from pixel-cellar/Claude-Code-Game-Studios