Help us improve
Share bugs, ideas, or general feedback.
From devrunway
Create a numbered Architecture Decision Record in docs/adr/ using the Nygard format. Links the ADR back to the dev-brainstorm doc if one exists. Usage — /adr <title> [issue-number]
npx claudepluginhub manikumarkv/devrunway-claude-plugin --plugin devrunwayHow this skill is triggered — by the user, by Claude, or both
Slash command
/devrunway:adr <decision-title> [issue-number]<decision-title> [issue-number]This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Parse `$ARGUMENTS[0]` as the decision title (convert to kebab-case for filename).
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
Parse $ARGUMENTS[0] as the decision title (convert to kebab-case for filename).
Parse $ARGUMENTS[1] as an optional GitHub issue number.
# Count existing ADRs to get the next sequential number
find docs/adr/ -name '[0-9]*.md' 2>/dev/null | wc -l
If docs/adr/ does not exist, create it.
Next number = count + 1, zero-padded to 4 digits: 0001, 0002, etc.
Filename: docs/adr/<NNNN>-<kebab-slug>.md
If an issue number was provided:
gh issue view <number> --json title,body | head -50
find docs/dev-brainstorm/ -name "<number>.md" | head -1
Read both the issue and the dev-brainstorm doc (if exists) to pre-fill the ADR with the actual context and decision from the exploration.
ultrathink
Before writing, confirm the core decision with the user:
ADR #:
I'll need a few things to write this accurately:
- What was the decision? (one sentence — what did you choose?)
- What were the alternatives you rejected?
- What is the key consequence to be aware of? (positive or negative)
(If a dev-brainstorm doc exists for this issue, I'll pre-fill from there — just confirm or correct.)
Wait for answers. If a brainstorm doc exists, pre-populate the answers from it and ask for confirmation instead.
Write to docs/adr/<NNNN>-<slug>.md:
# ADR <NNNN>: <Title>
**Date:** <YYYY-MM-DD>
**Status:** Accepted
**Author:** <git config user.name>
**Related:** <GitHub issue link if provided> · <dev-brainstorm doc link if exists>
---
## Context
<What is the issue or problem that motivates this decision? What forces are at play — technical, team, timeline, cost? What constraints exist? Write 2–5 sentences. This section should stand alone — a new team member reading this 2 years from now should understand why a decision was needed.>
## Decision
<What is the change or approach being adopted? State it clearly and specifically. "We will use X" not "We considered X." 1–3 sentences.>
## Alternatives Considered
### Option A: <Name> _(chosen)_
<Brief description. Why this was chosen.>
### Option B: <Name> _(rejected)_
<Brief description. Why this was rejected.>
### Option C: <Name> _(rejected)_
<Brief description. Why this was rejected.>
## Consequences
### Positive
- <What becomes easier or better?>
- <What new capability does this enable?>
### Negative / Trade-offs
- <What becomes harder? What cost is accepted?>
- <What technical debt is being incurred knowingly?>
### Risks
- <What could go wrong? What would trigger revisiting this decision?>
## Revisit Triggers
This ADR should be revisited if:
- <specific condition — e.g., "DynamoDB costs exceed $X/month">
- <specific condition — e.g., "query patterns require joins that DynamoDB cannot support">
Update (or create) docs/adr/README.md with the new entry:
# Architecture Decision Records
| # | Title | Date | Status |
|---|---|---|---|
| [0001](0001-use-dynamodb-for-sessions.md) | Use DynamoDB for sessions | 2025-01-15 | Accepted |
| [<NNNN>](<filename>.md) | <title> | <today> | Accepted |
If a dev-brainstorm doc exists for the related issue, append a line to it:
**ADR:** [ADR <NNNN>: <title>](../adr/<filename>.md)
git add docs/adr/
git commit -m "docs(adr): ADR <NNNN> — <title>"
✅ ADR saved to
docs/adr/<NNNN>-<slug>.mdIndex updated:docs/adr/README.mdStatus: Accepted — change to
SupersededorDeprecatedif this decision is later reversed by running/adragain and referencing this one.
Related skills — apply together:
dev-brainstorm — the recommended approach from a brainstorm becomes an ADRdev-design — the design doc links to the ADR for architectural contextconventional-commit — ADR commits use docs(adr): prefix