extract-adrs
Skill34 starsChanged 51 days agoMITView on GitHub
Extract architecture decision records from existing meta documents
1 other project uses a version of this.
Adopted by
Most recently taken up by
- bhoon716/skill-forgetheir own version, first seen Nov 8, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- bhoon716/skill-forge★ 4same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository38 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- hooks/CLAUDE.mdCLAUDE.md
- tasks/CLAUDE.mdCLAUDE.md
- clean-commentsSkill
- raise-prSkill
- configureSkill
- initSkill
- migrateSkill
- pathsSkill
- create-adrSkill
- review-adrSkill
- analyse-design-gapsSkill
- inventory-designSkill
- describe-prSkill
- respond-to-prSkill
- review-prSkill
- create-noteSkill
- create-planSkill
- implement-planSkill
- review-planSkill
- stress-test-planSkill
- validate-planSkill
- conduct-spikeSkill
- research-codebaseSkill
- research-issueSkill
- research-topicSkill
- commitSkill
- visualiseSkill
- create-work-itemSkill
- extract-work-itemsSkill
- list-work-itemsSkill
- refine-work-itemSkill
- rekey-work-itemsSkill
- review-work-itemSkill
- stress-test-work-itemSkill
- sync-work-items-recoverySkill
- sync-work-itemsSkill
- update-work-itemSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
19 rules. About 0 are common, 16 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈16
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 20
If no "Agent Names" section appears above, use these defaults: accelerator:reviewer, accelerator:codebase-locator, …
- Distinctive: line 35
When this command is invoked:
- Distinctive: line 39
If one or more file paths were provided, note them as the target documents
- Distinctive: line 40
If no parameters provided, respond with:
- Distinctive: line 52
Wait for user input.
- Distinctive: line 58
If specific files were provided, read them FULLY
- Distinctive: line 59
If scanning all meta documents:
- Distinctive: line 77
Wait for user selection
- Distinctive: line 116
Wait for user selection.
- Very specific: line 130
Use a placeholder number (e.g., ADR-XXXX) in the draft — final numbers are assigned after approval to avoid gaps from skipped ADRs
- Distinctive: line 142
Wait for approval before proceeding.
- Distinctive: line 155
Create the configured decisions directory if it doesn't exist
- Very specific: line 195
Write each approved ADR to: {decisions directory}/ADR-NNNN-description.md
- Distinctive: line 209
Validate the frontmatter: after writing each ADR, run
- Distinctive: line 215
If it exits non-zero, that ADR violates the canonical frontmatter standard.
- Distinctive: line 225
When populating the template from extracted decisions:
- Distinctive: line 232
References: Always link back to the source document
- Distinctive: line 245
When extracting from a single document, multiple decisions may be found — each becomes a separate ADR.
- Distinctive: line 247
Use sequential numbering: determine the starting number once, then increment for batch creation.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Extract ADRs from Meta Documents
!accelerator config context --skill extract-adrs --fail-safe
!accelerator config agents --fail-safe
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: !accelerator config path decisions --fail-safe
Codebase research directory: !accelerator config path research_codebase --fail-safe
Plans directory: !accelerator config path plans --fail-safe
You are tasked with identifying architectural decisions within existing meta documents and helping the user capture them as formal ADRs.
Initial Setup
When this command is invoked:
- Check if parameters were provided:
- If one or more file paths were provided, note them as the target documents
- If no parameters provided, respond with:
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.
Process Steps
Step 1: Identify Source Documents
- If specific files were provided, read them FULLY
- If scanning all meta documents:
- Spawn a {documents locator agent} agent to find all documents in the configured research, plans, and decisions directories (shown above)
- Present the discovered documents and let the user select which to scan:
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) - Wait for user selection
Step 2: Analyse Documents for Decisions
Spawn {documents analyser agent} agents (one per document, in parallel) with instructions to identify architectural decisions. Look for:
- Explicit decision statements ("We decided...", "We will use...", "The approach is...")
- Option comparisons and tradeoffs ("Option A vs Option B", "We considered...")
- Technology selections ("We chose X", "Using Y because...")
- Pattern/approach choices ("The pattern for this is...", "We'll follow the X approach")
- Constraint acknowledgements ("Due to X, we must...", "Given the constraint of...")
- Recommendations with rationale ("Recommendation: Use X because...")
- 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.
Step 3: Generate ADRs
- Gather metadata by running
accelerator corpus metadata derive. - For each selected decision, generate a draft ADR using the create-adr
template with:
- Context pre-filled from the source document
- Decision drivers extracted from the document's analysis
- Considered options populated if the source discusses alternatives
- Consequences derived from the document's findings
- References linking back to the source document
- Use a placeholder number (e.g.,
ADR-XXXX) in the draft — final numbers are assigned after approval to avoid gaps from skipped ADRs
Present 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:
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.accelerator corpus adr next-number --count N
Step 4: Write ADRs
- 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
accelerator corpus metadata deriveonce for the batch to obtainCurrent Date/Time (UTC):. For each approved ADR, substitute every field below with the indicated value:
type:←adrid:← the ADR identifierADR-NNNN, always quoted as a YAML stringtitle:← the ADR title (without theADR-NNNN:prefix)date:← theCurrent Date/Time (UTC):valueauthor:← the author resolved per the standard chain (config → VCS user → prompt)producer:←extract-adrsstatus:←proposedlast_updated:← the sameCurrent Date/Time (UTC):valuelast_updated_by:← the same value resolved forauthorschema_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.
- Invoke
- 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.
Validate the frontmatter: after writing each ADR, run
accelerator corpus frontmatter validate --file {decisions directory}/ADR-NNNN-description.mdIf it exits non-zero, that ADR violates the canonical frontmatter standard; report the emitted violation and fix the frontmatter before completing.
ADR Template
The ADR template is loaded directly via the template loader so the
shape stays in sync with create-adr:
!accelerator config template adr --fail-safe
When populating the template from extracted decisions:
- Context: Extracted from the source document's forces and constraints
- Decision Drivers: Extracted from the document's analysis
- Considered Options: Populated if the source discusses alternatives
- Decision: Stated or implied decision, rewritten in active voice
- Consequences: Derived from the document's findings
- References: Always link back to the source document
Important Notes
- Decisions should be architecturally significant — not every choice is worth an ADR. Help the user distinguish between significant decisions and routine implementation choices.
- Extracted ADRs always start with status
proposed— extraction is discovery, not acceptance. - Preserve the source document's context faithfully — don't invent rationale that wasn't in the original.
- Cross-reference bidirectionally: the ADR references the source, and the user may wish to note the ADR in the source document.
- When extracting from a single document, multiple decisions may be found — each becomes a separate ADR.
- Use sequential numbering: determine the starting number once, then increment for batch creation.
!accelerator config instructions extract-adrs --fail-safe
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

