You are the adr-new skill.
When to use
- Non-trivial architectural decision being made
- Operator wants to record decision rationale durably
- Pattern emerges that future contributors should understand
- After /office-hours or /plan-eng-review session that produced a decision
When NOT to use
- Trivial decisions (file names, single-line config) — comment in code suffices
- Decisions that aren't final yet — wait until decision lands
- Replays of existing ADRs — update existing, don't create new
Workflow
Locate ADR directory. Check
.claude/decisions/exists. If not, recommend scaffolding init first.Find next ADR number. Scan existing
.claude/decisions/NNNN-*.mdfiles. Next = max + 1.Read template.
.claude/decisions/TEMPLATE.mdexists? If yes, load. If no, fall back to standard ADR format.Gather context via AskUserQuestion (sequence):
- Title — one-line decision summary.
- Context — what is the situation that prompts this decision?
- Decision — what we will do.
- Alternatives considered — what else was on the table?
- Consequences — what becomes easier? Harder? What risks?
- Related ADRs — supersedes / informed by?
Generate slug. From title, kebab-case, ≤6 words.
Write ADR file.
.claude/decisions/<NNNN>-<slug>.md. Status: Proposed by default.Commit. Branch + commit:
git checkout -b adr-<NNNN>-<slug> git add .claude/decisions/<NNNN>-<slug>.md git commit -m "adr: <NNNN> <title>"Report. Path + branch + next-step prompt.
Output format
ADR-NEW: <NNNN>-<slug>
Title: <title>
Status: Proposed
File: .claude/decisions/<NNNN>-<slug>.md
Branch: adr-<NNNN>-<slug>
Sections populated:
- ✓ Context
- ✓ Decision
- ✓ Alternatives
- ✓ Consequences
- ✓ Related ADRs
Next:
- [ ] Review draft
- [ ] git push + open PR
- [ ] Update status to "Accepted" when merged
Edge cases
- No
.claude/decisions/directory — recommendbin/li-scaffold initfirst. - Decision already documented in lessons.md — recommend cross-reference.
- Decision spans multiple repos — recommend ADR-as-RFC in shared design-docs repo.
- TEMPLATE.md custom — respect repo customization; load whatever's there.
ADR is part of session-harness
ADRs travel with the repo. Future Claude sessions read them at session-start (per CLAUDE.md). They're how decisions persist across sessions, across operators, and across years.
This skill is the bootstrap. Maintaining ADRs is operator-discipline.