From manifest-dev-tools
Synthesizes Architecture Decision Records from Claude Code session transcripts via multi-agent pipeline. Extracts decisions and writes MADR files to a directory after /define or /do sessions.
How this skill is triggered — by the user, by Claude, or both
Slash command
/manifest-dev-tools:adrThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Extract ADR-worthy decisions from a completed manifest workflow session and write individual MADR files. Operates as post-processing — runs AFTER the manifest workflow completes, not during it.
Extract ADR-worthy decisions from a completed manifest workflow session and write individual MADR files. Operates as post-processing — runs AFTER the manifest workflow completes, not during it.
$ARGUMENTS = <manifest-path> <output-dir> --session <transcript-path>
All three are required:
/define outputs this path at completion)If any required argument is missing: error and halt with usage:
Usage: /adr <manifest-path> <output-dir> --session <transcript-path>
Example: /adr /tmp/manifest-1234.md docs/adr/ --session ~/.claude/projects/.../session.jsonl
Optional:
/do runs — supplementary input for implementation decisions. Pass as additional positional arguments after output-dir.Spawn three extraction agents in parallel, each analyzing the session transcript through a different decision lens:
Architecture Lens — Identify technology choices, component structure decisions, integration approaches, and pattern selections. Look for: "we should use X", "the architecture is Y", structural decisions with alternatives discussed.
Trade-off Lens — Identify tensions where competing concerns were weighed. Look for: "A vs B", preference statements with reasoning, rejected approaches with "because", T-* items from the manifest's Approach section that trace back to transcript deliberation.
Scope & Constraints Lens — Identify deliberate inclusions/exclusions that shape system boundaries, key constraint decisions where alternatives existed. Look for: "out of scope", "we need to include", "the constraint is", INV-G* items from the manifest that arose from deliberation (not just mechanical quality gates).
Each extraction agent receives:
Each agent outputs a list of candidate decisions with:
A synthesis agent receives all candidates from Phase 1 and:
Deduplicates — Merge candidates that describe the same decision from different lenses. Prefer the version with richer context and alternatives.
Applies ADR-worthiness criteria — Read references/ADR_FORMAT.md in this skill's directory. Apply the decision test to each candidate: "Would a new team member joining in 6 months benefit from knowing WHY this was decided this way?" Remove candidates that fail.
Writes ADR files — For each surviving candidate, generate a MADR file at <output-dir>/YYYYMMDD-kebab-title.md using the template from references/ADR_FORMAT.md. Create the output directory if it doesn't exist. Use today's date for the YYYYMMDD prefix.
If the session transcript at --session <path> is unreadable or missing:
If no ADR-worthy decisions are found after synthesis:
On completion, output:
ADRs written to: <output-dir>/
| # | Title | File |
|---|-------|------|
| 1 | [title] | YYYYMMDD-kebab-title.md |
| 2 | [title] | YYYYMMDD-kebab-title.md |
Total: N ADR(s) from M candidate decisions.
/define runs, /adr processes the full transcript. ADRs may reflect decisions from any run in the session. Review output for relevance to your specific task.~/.claude/projects/<dir>/<id>.jsonl) is stable. If the format changes, extraction agents may need updating.npx claudepluginhub doodledood/manifest-dev --plugin manifest-dev-toolsGenerates Architecture Decision Records from the current session: extracts decisions via subagent, confirms with user, writes parallel ADRs, and validates output.
Captures architectural decisions as structured ADR files during development sessions. Detects decision moments, records context and trade-offs, and maintains a searchable decision log.
Captures architectural decisions in Claude Code sessions as structured ADRs. Auto-detects choices between alternatives and maintains a docs/adr log for codebase rationale.