From accelerator
Extracts ADRs from meta documents (research, plans). Scans for implicit/explicit decisions and converts them into formal ADRs.
How this skill is triggered — by the user, by Claude, or both
Slash command
/accelerator:extract-adrs [research doc paths...] or leave empty to scan all[research doc paths...] or leave empty to scan allThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
!`${CLAUDE_PLUGIN_ROOT}/scripts/config-read-context.sh`
!${CLAUDE_PLUGIN_ROOT}/scripts/config-read-context.sh
!${CLAUDE_PLUGIN_ROOT}/scripts/config-read-skill-context.sh extract-adrs
!${CLAUDE_PLUGIN_ROOT}/scripts/config-read-agents.sh
If no "Agent Names" section appears above, use these defaults: accelerator:reviewer, accelerator:codebase-locator, accelerator:codebase-analyser, accelerator:codebase-pattern-finder, accelerator:documents-locator, accelerator:documents-analyser, accelerator:web-search-researcher.
Decisions directory: !${CLAUDE_PLUGIN_ROOT}/scripts/config-read-path.sh decisions
Research directory: !${CLAUDE_PLUGIN_ROOT}/scripts/config-read-path.sh research_codebase
Plans directory: !${CLAUDE_PLUGIN_ROOT}/scripts/config-read-path.sh plans
You are tasked with identifying architectural decisions within existing meta documents and helping the user capture them as formal ADRs.
When this command is invoked:
I'll help you extract architectural decisions from existing documents.
You can:
1. Specify documents to scan: `/accelerator:extract-adrs @{research directory}/2026-03-18-auth-flow.md`
2. Let me scan all documents in the configured directories for decisions (this may take a moment)
Which would you prefer?
Wait for user input.
I found the following documents:
**Research:**
- `{research directory}/2026-03-18-auth-flow.md` — Authentication flow research
- ...
**Plans:**
- `{plans directory}/2026-03-18-api-redesign.md` — API redesign plan
- ...
Which documents should I scan for decisions? (enter numbers, "all", or
specific paths)
Spawn {documents analyser agent} agents (one per document, in parallel) with instructions to identify architectural decisions. Look for:
Wait for all agents to complete
Present discovered decisions as Y-statement summaries:
I found the following architectural decisions in the scanned documents:
1. **[Short title]** — In the context of [X], facing [Y], we decided for [Z]
to achieve [Q], accepting [D].
Source: `{research directory}/2026-03-18-topic.md`
2. **[Short title]** — In the context of [X], facing [Y], we decided for [Z]
to achieve [Q], accepting [D].
Source: `{plans directory}/2026-03-18-topic.md`
3. ...
Which decisions would you like to capture as ADRs? (enter numbers, "all",
or "none")
Wait for user selection.
Gather metadata by running
${CLAUDE_PLUGIN_ROOT}/scripts/artifact-derive-metadata.sh. Run the bare path
directly as an executable; never prefix it with bash/sh/env (a wrapper
prefix escapes the skill's allowed-tools permission and forces an unnecessary
prompt).
For each selected decision, generate a draft ADR using the create-adr template with:
ADR-XXXX) in the draft — final numbers
are assigned after approval to avoid gaps from skipped ADRsPresent each generated ADR for user review:
Here's draft ADR #N of M:
[ADR content with placeholder number]
Does this look good? (yes / revise / skip / approve all remaining)
Wait for approval before proceeding. If the user selects "approve all remaining", accept all subsequent drafts without further prompts.
Assign final ADR numbers to approved ADRs only, by running:
${CLAUDE_PLUGIN_ROOT}/skills/decisions/scripts/adr-next-number.sh --count N
where N is the number of approved (not skipped) ADRs. Replace placeholder numbers with the assigned sequential numbers. This ensures no gaps from skipped decisions.
Create the configured decisions directory if it doesn't exist
Populate frontmatter for each approved ADR. Before writing the file, capture metadata and substitute the unified base fields into the template's frontmatter block:
Invoke ${CLAUDE_PLUGIN_ROOT}/scripts/artifact-derive-metadata.sh
once for the batch to obtain Current Date/Time (UTC):. Run the bare path
directly as an executable; never prefix it with bash/sh/env (a wrapper
prefix escapes the skill's allowed-tools permission and forces an unnecessary
prompt).
For each approved ADR, substitute every field below with the indicated value:
type: ← adrid: ← the ADR identifier ADR-NNNN, always quoted as a
YAML stringtitle: ← the ADR title (without the ADR-NNNN: prefix)date: ← the Current Date/Time (UTC): valueauthor: ← the author resolved per the standard chain
(config → VCS user → prompt)producer: ← extract-adrsstatus: ← proposedlast_updated: ← the same Current Date/Time (UTC): valuelast_updated_by: ← the same value resolved for authorschema_version: ← 1 (bare integer)Optional linkage / decision-maker keys are omit-by-default:
the template shows each as ""/[], but write a key
into the artifact only when it has a value, and omit it
entirely otherwise (do not carry the empty placeholder through).
parent: ← the owning work item as a typed-linkage ref
("work-item:NNNN"). Fill when the source names an owning work
item; otherwise omit the key.supersedes: ← a YAML list of typed-linkage refs of the form
"adr:ADR-NNNN" to the ADR(s) this one replaces. Fill when the
source records a supersession; otherwise omit the key.relates_to: ← list of typed-linkage refs to loosely related
ADRs (["adr:ADR-NNNN", ...]). Fill when related decisions are
explicit in the source; otherwise omit the key.decision_makers: ← a YAML list of the people who agreed. Fill
when the source names them; otherwise omit the key.Write each approved ADR to:
{decisions directory}/ADR-NNNN-description.md
Present summary:
Created the following ADRs:
- `{decisions directory}/ADR-0001-description.md` — [title]
- `{decisions directory}/ADR-0002-description.md` — [title]
- ...
All ADRs are in "proposed" status. Use `/accelerator:review-adr` to
review and accept them.
The ADR template is loaded directly via the template loader so the
shape stays in sync with create-adr:
!${CLAUDE_PLUGIN_ROOT}/scripts/config-read-template.sh adr
When populating the template from extracted decisions:
proposed — extraction is discovery,
not acceptance.!${CLAUDE_PLUGIN_ROOT}/scripts/config-read-skill-instructions.sh extract-adrs
npx claudepluginhub atomicinnovation/accelerator --plugin acceleratorRecords architectural decisions as ADRs from design documents. Use after brainstorming or planning to capture what was decided, why, and alternatives considered.
Generates Architecture Decision Records from the current session: extracts decisions via subagent, confirms with user, writes parallel ADRs, and validates output.
Writes Architecture Decision Records (ADRs) documenting decisions, rationale, alternatives, and trade-offs from codebases or conversations. Triggers on 'write an ADR' or 'document decision'.