AgentSkillsCN

architecture-adr

在做出需详细记录的重大架构决策时使用。ARCHITECT-AGENT 亦会频繁调用此技能。

SKILL.md
--- frontmatter
name: architecture-adr
description: When making significant architectural decisions that need to be documented. Used by ARCHITECT-AGENT.
version: 1.0.0
tokens: ~400
confidence: high
sources:
  - https://adr.github.io/
  - https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions
last_validated: 2025-01-10
next_review: 2025-01-24
tags: [architecture, adr, decisions, documentation]

When to Use

When making significant architectural decisions that need to be documented. Used by ARCHITECT-AGENT.

Patterns

ADR Structure

markdown
# ADR-001: {Decision Title}

## Status
Proposed | Accepted | Deprecated | Superseded by ADR-XXX

## Context
{What situation requires a decision?}

## Decision Drivers
- {Driver 1}
- {Driver 2}

## Considered Options
1. **Option A** - {brief description}
2. **Option B** - {brief description}
3. **Option C** - {brief description}

## Decision
We will use **Option B** because {reasoning}.

## Consequences
### Positive
- {benefit 1}

### Negative
- {tradeoff 1}

Option Evaluation

markdown
| Criteria | Option A | Option B | Option C |
|----------|----------|----------|----------|
| Effort | High | Medium | Low |
| Risk | Low | Medium | High |
| Scalability | Good | Good | Poor |
| Team expertise | Low | High | Medium |

When to Write ADR

code
- Technology choice (framework, database, cloud)
- Architecture pattern (monolith vs microservices)
- Integration approach (sync vs async)
- Security model changes
- Breaking changes to APIs

Anti-Patterns

  • Decisions without documented alternatives
  • Missing "why not" for rejected options
  • No consequences section
  • ADR written after implementation
  • Superseded ADRs not linked

Verification Checklist

  • Context explains the problem
  • At least 2 options considered
  • Decision clearly stated with reasoning
  • Both positive and negative consequences
  • Status is current
  • Related ADRs linked