Architecture Decision Recorder

Records one architecture decision with alternatives

by levnikolaevich · MIT license · ★ 568 on GitHub

Architecture Decision Recorder cover

Records one architecture decision with alternatives, consequences and status; does not design the whole system.

---
name: ln-24-architecture-decision-recorder
description: "Records one architecture decision with alternatives, consequences and status; does not design the whole system."
---

# Architecture Decision Recorder

**Goal:** Preserve the context, forces, alternatives, decision, and consequences of one architecturally significant choice in a compact durable record. Change only approved decision documentation; do not design the whole system, approve a decision silently, delete history, audit code, or implement the choice.

**Execution contract:** The checklist defines completion. Track each item internally as `PENDING`, `PROVEN` with evidence, `CLEARED` with evidence its condition is absent, or `UNPROVEN` with a gap; reading, delegation, tool failure, a zero exit status, or a self-reported success is not proof; only the observed outcome is. Reconcile after each section. Before returning, resolve all `PENDING`, count only `PROVEN` and `CLEARED`, and apply verdict and approval rules to every gap.
Preserve intent, scope, and existing authorization. Continue authorized work; ask only for consequential unresolved choices or required external approval. When no one can answer during the run, state the exact question and apply the skill's verdict for the remaining gap instead of waiting or guessing. Scale depth to material risk without skipping checks. Preserve dependency and safety order; otherwise choose an appropriate verification method.
Accept equivalent user or repository evidence; no other skill, named artifact, or complete lifecycle is required. Preserve source requirement and decision IDs. Bind reused evidence to relevant source versions, dirty changes, configuration, and environment; invalidate only affected claims.
On continuation, reconcile task, authorization, current state, and unresolved evidence. For long work, return a compact continuation record or update an already authorized artifact; read-only skills do not persist it. Distinguish artifact readiness, verified behavior, and external-action authority.
Prepare authorized work before required approval. If blocked by an instruction, cite its exact source and unresolved boundary; do not invent approval gates from caution.


## Tool Routing

Overview

Goal: Preserve the context, forces, alternatives, decision, and consequences of one architecturally significant choice in a compact durable record. Change only approved decision documentation; do not design the whole system, approve a decision silently, delete history, audit code, or implement the choice.

What you get

  • ResultThe exact skill-specific verdict token first, then the supported outcome.
  • ScopeReviewed/changed scope, exclusions, baseline, and material assumptions.
  • EvidenceSkill-specific fields below; distinguish facts, inferences, and unverified claims. Link artifacts; use tables when useful.
  • VerificationChecks/results, unavailable evidence, and applicable cleanup/external state.
  • CompletionChecklist: X/Y complete; Incomplete: None or each UNPROVEN item's reason, outcome impact, and exact next action; residual risks and required decisions.
Manual install (npx, ZIP)
Claude Codenpx skills add levnikolaevich/claude-code-skills --skill ln-24-architecture-decision-recorder -g -a claude-code
Claude Code (degit)npx degit levnikolaevich/claude-code-skills/plugins/architecture-suite/skills/ln-24-architecture-decision-recorder#master ~/.claude/skills/ln-24-architecture-decision-recorder
Claude.ai / desktopZip the folder and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md9.0 KB
Read SKILL.md here
levnikolaevich/master1 file shown
SKILL.md
Show the full text100 lines

Architecture Decision Recorder

Goal: Preserve the context, forces, alternatives, decision, and consequences of one architecturally significant choice in a compact durable record. Change only approved decision documentation; do not design the whole system, approve a decision silently, delete history, audit code, or implement the choice.

Execution contract: The checklist defines completion. Track each item internally as PENDING, PROVEN with evidence, CLEARED with evidence its condition is absent, or UNPROVEN with a gap; reading, delegation, tool failure, a zero exit status, or a self-reported success is not proof; only the observed outcome is. Reconcile after each section. Before returning, resolve all PENDING, count only PROVEN and CLEARED, and apply verdict and approval rules to every gap. Preserve intent, scope, and existing authorization. Continue authorized work; ask only for consequential unresolved choices or required external approval. When no one can answer during the run, state the exact question and apply the skill's verdict for the remaining gap instead of waiting or guessing. Scale depth to material risk without skipping checks. Preserve dependency and safety order; otherwise choose an appropriate verification method. Accept equivalent user or repository evidence; no other skill, named artifact, or complete lifecycle is required. Preserve source requirement and decision IDs. Bind reused evidence to relevant source versions, dirty changes, configuration, and environment; invalidate only affected claims. On continuation, reconcile task, authorization, current state, and unresolved evidence. For long work, return a compact continuation record or update an already authorized artifact; read-only skills do not persist it. Distinguish artifact readiness, verified behavior, and external-action authority. Prepare authorized work before required approval. If blocked by an instruction, cite its exact source and unresolved boundary; do not invent approval gates from caution.

Tool Routing

Need Preferred capability Fallback
Existing decision convention Repository search and direct document reads Use the default path and compact format
Decision drivers Requirements, architecture artifacts, implementation evidence, and stakeholder statements Mark unsupported drivers UNKNOWN
Alternatives and external claims Repository evidence plus current official sources Mark time-sensitive claims UNVERIFIED
Sequence and supersession Existing filenames, indexes, and decision links Return BLOCKED rather than reuse a number
Document mutation Minimal patch to one approved decision record and necessary supersession links Return BLOCKED if authority or path is unclear

One record captures one decision. If the request contains independent decisions with different drivers or lifecycles, split them only with explicit approval.

Artifact Rules

  • Reuse the repository's established ADR convention when one exists.
  • Otherwise use docs/architecture/decisions/NNNN-<slug>.md with the next unused monotonic number.
  • Never renumber, delete, or rewrite the decision and rationale of historical records. Permit scoped status and supersession-link updates under the rules below; distinguish evolving proposed drafts from accepted history.
  • Default a new record to Proposed.
  • Use Accepted only after explicit confirmation from an authorized decision-maker.
  • A proposed replacement links to the current decision without changing its effective status. Mark the old record Superseded and link both directions only after the replacement is explicitly accepted; preserve historical content.
  • Keep the record short enough to review as a single decision.
  • Preserve the rationale a future maintainer needs to reconsider it safely.
  • Label retrospective records explicitly; do not imply that documentation created after implementation was prior approval.
  • Separate evidence needed before acceptance from monitoring required after adoption.
  • Prefer stable repository references over conversation, branch-local, or ephemeral links.

Checklist

1. Establish the Decision Contract
  • Resolve the exact decision, scope, owner or deciders, affected system, and why the choice is architecturally significant.
  • Read repository instructions, Git state, and existing decision conventions.
  • Search for duplicate, conflicting, deprecated, or superseding decisions before allocating a new record.
  • Confirm the request is one decision rather than a broad design or implementation plan.
  • Resolve the approved status; default to Proposed when acceptance is not explicit.
2. Gather Context and Forces
  • State the current context and problem in value-neutral language.
  • Extract business drivers, quality attributes, constraints, assumptions, and decision horizon from available evidence.
  • Identify affected boundaries, contracts, data, security, operations, cost, ownership, and migration implications.
  • Separate present facts from forecasts and preferences.
  • Record contradictions or missing evidence that could change the choice.
3. Evaluate Alternatives
  • Include the status quo and the simplest credible option unless they are demonstrably infeasible.
  • For an open choice, compare materially different credible alternatives; for retrospective records, include only evidenced historical options and mark missing rationale unknown.
  • Compare options against the same drivers: correctness, quality targets, complexity, reversibility, cost, operations, team fit, and evolution.
  • State why each rejected alternative loses in this context without claiming universal inferiority.
  • Record sensitivity or review triggers that would make a rejected option preferable later.
4. Record the Decision
  • Write title, status, date, deciders or owner, context, drivers, considered options, decision, consequences, validation, and review triggers.
  • State the decision in active, testable language and name what remains deliberately undecided.
  • Record positive, negative, and neutral consequences plus accepted risks.
  • Link affected requirements, designs, diagrams, interfaces, migration documents, or issues by stable repository reference.
  • Apply the Artifact Rules for proposed or accepted supersession; verify links and preserve prior rationale.
5. Validate and Report
  • Confirm the record contains one decision and can be understood without conversation history.
  • Confirm consequential claims have evidence or labelled assumptions/unknowns with validation actions; never invent historical rationale or rejected alternatives for a retrospective record.
  • Confirm Accepted was not assigned without explicit authority.
  • Identify the requirements, interfaces, and downstream decisions affected by this decision or its supersession; preserve the accepted/proposed distinction and historical rationale.
  • Use READY when the record and status are valid; use INCOMPLETE when material context or required acceptance authority remains unresolved; a complete explicitly Proposed record does not require acceptance to be READY; use BLOCKED for ambiguous scope, unsafe numbering, conflicting ownership, or no writable destination.

Self-Check

  • Reconcile before returning. Check item-level evidence, requirement coverage, contradictions, scope, verdict, and applicable cleanup. Correct the report or authorized artifacts. Reuse valid evidence; do not automatically rescan the repository or rerun successful commands. Repeat checks only for relevant changes, failures, or unresolved evidence. Disclose remaining gaps.

Output Contract

Report in the user's language, in this order; label all five fields and state each fact once. Use controlled plain language: one fact per sentence, usually under 20 words, active voice, and one term per concept, with no synonyms for verdicts, IDs, or states. Small results may use one line per field; omit empty tables and do not copy linked artifacts:

  1. Result: The exact skill-specific verdict token first, then the supported outcome.
  2. Scope: Reviewed/changed scope, exclusions, baseline, and material assumptions.
  3. Evidence: Skill-specific fields below; distinguish facts, inferences, and unverified claims. Link artifacts; use tables when useful.
  4. Verification: Checks/results, unavailable evidence, and applicable cleanup/external state.
  5. Completion: Checklist: X/Y complete; Incomplete: None or each UNPROVEN item's reason, outcome impact, and exact next action; residual risks and required decisions.

Skill-specific evidence: Artifact path, decision identity/status/owner, selected option, alternatives, consequences, evidence, and acceptance/validation needs. Report links or status changes to historical records, preserving their rationale; identify unresolved choices and review triggers without implying acceptance of a proposal.

1---
2name: ln-24-architecture-decision-recorder
3description: "Records one architecture decision with alternatives, consequences and status; does not design the whole system."
4---
5 
6# Architecture Decision Recorder
7 
8**Goal:** Preserve the context, forces, alternatives, decision, and consequences of one architecturally significant choice in a compact durable record. Change only approved decision documentation; do not design the whole system, approve a decision silently, delete history, audit code, or implement the choice.
9 
10**Execution contract:** The checklist defines completion. Track each item internally as `PENDING`, `PROVEN` with evidence, `CLEARED` with evidence its condition is absent, or `UNPROVEN` with a gap; reading, delegation, tool failure, a zero exit status, or a self-reported success is not proof; only the observed outcome is. Reconcile after each section. Before returning, resolve all `PENDING`, count only `PROVEN` and `CLEARED`, and apply verdict and approval rules to every gap.
11Preserve intent, scope, and existing authorization. Continue authorized work; ask only for consequential unresolved choices or required external approval. When no one can answer during the run, state the exact question and apply the skill's verdict for the remaining gap instead of waiting or guessing. Scale depth to material risk without skipping checks. Preserve dependency and safety order; otherwise choose an appropriate verification method.
12Accept equivalent user or repository evidence; no other skill, named artifact, or complete lifecycle is required. Preserve source requirement and decision IDs. Bind reused evidence to relevant source versions, dirty changes, configuration, and environment; invalidate only affected claims.
13On continuation, reconcile task, authorization, current state, and unresolved evidence. For long work, return a compact continuation record or update an already authorized artifact; read-only skills do not persist it. Distinguish artifact readiness, verified behavior, and external-action authority.
14Prepare authorized work before required approval. If blocked by an instruction, cite its exact source and unresolved boundary; do not invent approval gates from caution.
15 
16 
17## Tool Routing
18 
19| Need | Preferred capability | Fallback |
20|---|---|---|
21| Existing decision convention | Repository search and direct document reads | Use the default path and compact format |
22| Decision drivers | Requirements, architecture artifacts, implementation evidence, and stakeholder statements | Mark unsupported drivers `UNKNOWN` |
23| Alternatives and external claims | Repository evidence plus current official sources | Mark time-sensitive claims `UNVERIFIED` |
24| Sequence and supersession | Existing filenames, indexes, and decision links | Return `BLOCKED` rather than reuse a number |
25| Document mutation | Minimal patch to one approved decision record and necessary supersession links | Return `BLOCKED` if authority or path is unclear |
26 
27One record captures one decision. If the request contains independent decisions with different drivers or lifecycles, split them only with explicit approval.
28 
29## Artifact Rules
30 
31- Reuse the repository's established ADR convention when one exists.
32- Otherwise use `docs/architecture/decisions/NNNN-<slug>.md` with the next unused monotonic number.
33- Never renumber, delete, or rewrite the decision and rationale of historical records. Permit scoped status and supersession-link updates under the rules below; distinguish evolving proposed drafts from accepted history.
34- Default a new record to `Proposed`.
35- Use `Accepted` only after explicit confirmation from an authorized decision-maker.
36- A proposed replacement links to the current decision without changing its effective status. Mark the old record `Superseded` and link both directions only after the replacement is explicitly accepted; preserve historical content.
37- Keep the record short enough to review as a single decision.
38- Preserve the rationale a future maintainer needs to reconsider it safely.
39- Label retrospective records explicitly; do not imply that documentation created after implementation was prior approval.
40- Separate evidence needed before acceptance from monitoring required after adoption.
41- Prefer stable repository references over conversation, branch-local, or ephemeral links.
42 
43## Checklist
44 
45### 1. Establish the Decision Contract
46 
47- [ ] Resolve the exact decision, scope, owner or deciders, affected system, and why the choice is architecturally significant.
48- [ ] Read repository instructions, Git state, and existing decision conventions.
49- [ ] Search for duplicate, conflicting, deprecated, or superseding decisions before allocating a new record.
50- [ ] Confirm the request is one decision rather than a broad design or implementation plan.
51- [ ] Resolve the approved status; default to `Proposed` when acceptance is not explicit.
52 
53### 2. Gather Context and Forces
54 
55- [ ] State the current context and problem in value-neutral language.
56- [ ] Extract business drivers, quality attributes, constraints, assumptions, and decision horizon from available evidence.
57- [ ] Identify affected boundaries, contracts, data, security, operations, cost, ownership, and migration implications.
58- [ ] Separate present facts from forecasts and preferences.
59- [ ] Record contradictions or missing evidence that could change the choice.
60 
61### 3. Evaluate Alternatives
62 
63- [ ] Include the status quo and the simplest credible option unless they are demonstrably infeasible.
64- [ ] For an open choice, compare materially different credible alternatives; for retrospective records, include only evidenced historical options and mark missing rationale unknown.
65- [ ] Compare options against the same drivers: correctness, quality targets, complexity, reversibility, cost, operations, team fit, and evolution.
66- [ ] State why each rejected alternative loses in this context without claiming universal inferiority.
67- [ ] Record sensitivity or review triggers that would make a rejected option preferable later.
68 
69### 4. Record the Decision
70 
71- [ ] Write title, status, date, deciders or owner, context, drivers, considered options, decision, consequences, validation, and review triggers.
72- [ ] State the decision in active, testable language and name what remains deliberately undecided.
73- [ ] Record positive, negative, and neutral consequences plus accepted risks.
74- [ ] Link affected requirements, designs, diagrams, interfaces, migration documents, or issues by stable repository reference.
75- [ ] Apply the Artifact Rules for proposed or accepted supersession; verify links and preserve prior rationale.
76 
77### 5. Validate and Report
78 
79- [ ] Confirm the record contains one decision and can be understood without conversation history.
80- [ ] Confirm consequential claims have evidence or labelled assumptions/unknowns with validation actions; never invent historical rationale or rejected alternatives for a retrospective record.
81- [ ] Confirm `Accepted` was not assigned without explicit authority.
82- [ ] Identify the requirements, interfaces, and downstream decisions affected by this decision or its supersession; preserve the accepted/proposed distinction and historical rationale.
83- [ ] Use `READY` when the record and status are valid; use `INCOMPLETE` when material context or required acceptance authority remains unresolved; a complete explicitly Proposed record does not require acceptance to be `READY`; use `BLOCKED` for ambiguous scope, unsafe numbering, conflicting ownership, or no writable destination.
84 
85## Self-Check
86 
87- [ ] **Reconcile before returning.** Check item-level evidence, requirement coverage, contradictions, scope, verdict, and applicable cleanup. Correct the report or authorized artifacts. Reuse valid evidence; do not automatically rescan the repository or rerun successful commands. Repeat checks only for relevant changes, failures, or unresolved evidence. Disclose remaining gaps.
88 
89## Output Contract
90 
91Report in the user's language, in this order; label all five fields and state each fact once. Use controlled plain language: one fact per sentence, usually under 20 words, active voice, and one term per concept, with no synonyms for verdicts, IDs, or states. Small results may use one line per field; omit empty tables and do not copy linked artifacts:
92 
931. **Result:** The exact skill-specific verdict token first, then the supported outcome.
942. **Scope:** Reviewed/changed scope, exclusions, baseline, and material assumptions.
953. **Evidence:** Skill-specific fields below; distinguish facts, inferences, and unverified claims. Link artifacts; use tables when useful.
964. **Verification:** Checks/results, unavailable evidence, and applicable cleanup/external state.
975. **Completion:** `Checklist: X/Y complete`; `Incomplete: None` or each `UNPROVEN` item's reason, outcome impact, and exact next action; residual risks and required decisions.
98 
99**Skill-specific evidence:** Artifact path, decision identity/status/owner, selected option, alternatives, consequences, evidence, and acceptance/validation needs. Report links or status changes to historical records, preserving their rationale; identify unresolved choices and review triggers without implying acceptance of a proposal.
100 
View all files on GitHub →

Details

License
MIT
Stars on the repo
★ 568
Checked
Source
levnikolaevich/claude-code-skills ↗
Creator
levnikolaevich · 18 listings
View creator

Similar skills

See all →
SkillChangelog Generatorrunkids/skillshare · by runkidsGenerate CHANGELOG.md entry from recent commits in conventional format. Also syncs the website changelog page. Use this skill whenever the user asks to: generate a changelog, document what changed between tags, or create a new CHANGELOG entry. If you see requests like "write the changelog for v0.17", what changed since last release", this is the skill to use. Do NOT manually edit CHANGELOG.md without this skill — it ensures proper formatting, user-perspective writing, and website changelog sync. For full release workflows (Release PR review, tests, draft assets, publication, announcements), use /release instead.★ 2.7k GitHub starsSkillDocumentation Updaterrunkids/skillshare · by runkidsUpdate website docs to match recent code changes, cross-validating every flag against source. Use this skill whenever the user asks to: update documentation, sync docs with code, document a new flag or command, fix stale docs, or update the README. This skill covers all website/docs/ categories (commands, reference, understand, how-to, troubleshooting, getting-started) plus the built-in skill description and README. If you just implemented a feature and need to update docs, this is the skill to use. Never manually edit website docs without cross-validating flags against Go source first.★ 2.7k GitHub starsSkillArchitecture Decision Recordsaddyosmani/agent-skills · by addyosmaniRecords decisions and documentation. Use when you need to document an architecture decision (ADR) or the reasoning behind a design choice, when changing public APIs, shipping features, or when you need to record context that future engineers and agents will need to understand the codebase.★ 98.7k GitHub starsSkillTreatment Plan ValidatorK-Dense-AI/scientific-agent-skills · by K-Dense-AIFormat and structurally validate local treatment-plan documentation after clinical decisions have already been supplied and verified by authorized licensed professionals. Use for source traceability, clinician-authored intervention records, goals and checkpoints, shared-decision records, reconciliation handoffs, and release gates—not for clinical decision-making.★ 46k GitHub starsSkillCodebase Scannerwshobson/agents · by wshobsonScans the codebase to generate project-doc.md and AGENTS.md. Use when bootstrapping a new agent-driven repo, refreshing project documentation after architectural changes, or running a delta scan to detect drift. Runs a full scan on first use and a smart delta scan on subsequent runs. Uses understand-anything + context-mode when available, falls back to native tools otherwise. Only updates AGENTS.md on detected architectural changes with human confirmation.★ 39.9k GitHub starsSkillHADS Documentation Formatwshobson/agents · by wshobsonUse when writing technical documentation that needs to be readable by both humans and AI models, converting existing docs to HADS format, validating a HADS document, or optimizing documentation for token-efficient AI consumption.★ 39.9k GitHub stars

More from levnikolaevich