Claude-skill-registry Capturing Decisions
Create and maintain MADR-format Architectural Decision Records in Markdown under `docs/decisions`. Use when the user wants to document important decisions.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/capturing-decisions" ~/.claude/skills/majiayu000-claude-skill-registry-capturing-decisions && rm -rf "$T"
skills/data/capturing-decisions/SKILL.mdMADR ADRs
This skill creates (and keeps tidy) Architectural Decision Records (ADRs) using MADR (Markdown Architectural Decision Records) v4.0.0.
A helpful bar for what "counts" as an architectural decision is Martin Fowler's: "a decision you wish you could get right early." ("Who needs an architect?", IEEE Software, 2003)
Primary reference: Markdown Architectural Decision Records
Repository layout and naming
All ADRs live in:
docs/decisions/NNNN-title-with-dashes.md
Where:
is a zero-padded 4-digit sequence number (NNNN
,0001
, …)0002
is a lowercase slug (letters/digits/hyphens)title-with-dashes
If
docs/decisions/ does not exist yet, create it.
Template
Use this copy of the MADR 4.0.0 long-form template
Create new ADRs by copying the template and replacing placeholders. Optional sections may be removed (the template marks them clearly).
Required metadata
Each ADR must include YAML front matter at the top with:
: one ofstatus
,proposed
,accepted
,rejected
, ordeprecatedsuperseded by ADR-NNNN
:date
(update when the ADR is materially changed)YYYY-MM-DD
Status emoji for the index
Maintain an index at
docs/decisions/README.md that lists all ADRs with:
- status emoji
- ADR title (matching the H1 of the ADR), as a link to the full ADR
- date last updated
Use this mapping:
- 🟡 proposed
- ✅ accepted
- ❌ rejected
- ⚠️ deprecated
- 🔁 superseded
Process
- Pick the next number by scanning existing ADR filenames in
and incrementing the highestdocs/decisions/
. Start atNNNN
if none exist.0001 - Slugify the title into
(lowercase, hyphens, no punctuation).title-with-dashes - Create the ADR from
.ADR_TEMPLATE.md- Default
tostatus
unless the change set includes implementation and agreement to accept.proposed
- Default
- Update
:docs/decisions/README.md- Add the ADR in numeric order.
- Ensure the emoji matches the ADR's
.status
- If an ADR is superseded, keep the old ADR file, set its status to
, and update the index row emoji to 🔁.superseded by ADR-NNNN
Output expectations
- ADR markdown should be clean and readable in GitHub rendering.
- Keep ADRs concise, but include enough context that a new reader can understand why the decision was made.