agentsclimarketplace

Adr review

Skill rjmurillo/ai-agents/.claude/skills/adr-review

Multi-agent debate orchestration for Architecture Decision Records. Automatically triggers on ADR create/edit/delete. Coordinates architect, critic, independent-thinker, security, analyst, and high-level-advisor agents in structured debate rounds until consensus. Use when you say "review this ADR", when an ADR is created/edited/deleted, or when reviewing, accepting, or updating a decision file under .agents/architecture/, docs/architecture/, docs/decisions/, docs/adr/, or architecture/decisions/, including intent like "review this decision record" or "check this rationale for future maintainers". Do NOT use to author a new ADR (use adr-generator).From its SKILL.md

Install
npx -y skills add rjmurillo/ai-agents --skill adr-review

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its file declares

Copied from the file, not written here

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

11.9 KB, as published. Nobody here has run it

ADR Review

Multi-agent debate pattern for rigorous ADR validation. Orchestrates 6 specialized agents through structured review rounds until consensus or 10 rounds maximum.

Triggers

Trigger PhraseOperation
review this ADRFull 6-agent debate on specified ADR
validate ADR-005Targeted review of specific ADR by number
review this decision recordADR review for durable architecture/design decision records
delete ADR-NNNDeletion review with dependency and supersession checks
ADR file created, modified, or deletedAuto-triggered via detect_adr_changes.py

Quick Start

# Manual triggers:
/adr-review .agents/architecture/ADR-005-api-versioning.md
"review this ADR"
"validate ADR-005"
"review this decision record under docs/decisions"

Automatic Detection: A Claude Code hook runs at session start and detects ADR changes, prompting you to invoke this skill. The pre-commit hook also detects staged ADR files and displays a reminder.

InputOutputConsensus Required
ADR file pathDebate log + Updated ADR6/6 Accept or D&C

File Triggers

PatternLocationEvents
ADR-*.md.agents/architecture/create, update, delete
ADR-*.mddocs/adr/create, update, delete
ADR-*.mddocs/architecture/create, update, delete
ADR-*.mddocs/decisions/create, update, delete
ADR-*.mdarchitecture/decisions/create, update, delete

Detection: from the skill directory, run python3 scripts/detect_adr_changes.py --base-path <repo-root>. From repo root, run .claude/skills/adr-review/scripts/detect_adr_changes.py for the Claude skill tree or src/copilot-cli/skills/adr-review/scripts/detect_adr_changes.py for the Copilot CLI mirror.

When to Use

MANDATORY Triggers (automatic):

  • Architect creates or updates an ADR
  • ANY agent modifies .agents/architecture/ADR-*.md, docs/adr/ADR-*.md, docs/architecture/ADR-*.md, docs/decisions/ADR-*.md, or architecture/decisions/ADR-*.md

User-Initiated Triggers (manual):

  • User requests ADR review ("review this ADR", "validate this decision")
  • User asks to review a durable design decision record or rationale for future maintainers
  • User requests multi-perspective validation for strategic decisions

Agent Roles

AgentFocusTie-Breaker Role
architectStructure, governance, coherence, ADR complianceStructural questions
criticGaps, risks, alignment, completenessNone
independent-thinkerChallenge assumptions, surface contrarian viewsNone
securityThreat models, security trade-offsNone
analystRoot cause, evidence, feasibilityNone
high-level-advisorPriority, resolve conflicts, break tiesDecision paralysis

Process

PhasePurposeDetails
Phase 0Related work researchSearch issues/PRs for context
Phase 1Independent reviewEach agent reviews ADR using Zimmermann 7-question checklist
Phase 2ConsolidationIdentify consensus and conflicts; flag review anti-patterns
Phase 3ResolutionPropose updates for P0/P1 issues
Phase 4Convergence checkAgents vote: Accept/D&C/Block

Consensus: All 6 agents Accept OR Disagree-and-Commit. Max 10 rounds.

See references/debate-protocol.md for full phase details.

Deletion Workflow

PhasePurpose
D1Detection - identify deleted ADR
D2Impact assessment - find dependencies
D3Archival decision - archive accepted ADRs
D4Cleanup - update references

See references/deletion-workflow.md for full workflow.

Issue Resolution

PriorityRequirementGate
P0Must resolveBLOCKING
P1Resolve OR defer with issueBLOCKING
P2DocumentNon-blocking

See references/issue-resolution.md for deferral protocol.

Phase 4: Strategic Review (Principal-Level Validation)

After structural and technical review, apply strategic lenses:

Strategic Validation Checklist

Chesterton's Fence (Change Justification)

  • If removing/changing existing patterns: Original purpose documented
  • Investigation evidence provided (git archaeology, interviews, documentation)
  • Confirmation original problem no longer exists
  • Assessment: [PASS | FAIL | N/A]

Path Dependence (Irreversibility Recognition)

  • Historical constraints identified and documented
  • Reversibility assessment complete (rollback capability, vendor lock-in)
  • Migration/exit strategy defined if adding dependencies
  • Irreversible decisions explicitly flagged and justified
  • Assessment: [PASS | FAIL | N/A]

Core vs Context (Investment Prioritization)

  • Capability classified as Core (differentiating) or Context (commodity)
  • If building Context: Justification for not buying/outsourcing
  • If Core: Competitive differentiation explained
  • Assessment: [PASS | FAIL | N/A]

Second-System Effect (Over-Engineering Detection)

  • If replacing existing system: Scope boundaries explicit
  • Feature list justified (not "everything we didn't do last time")
  • Simplicity preservation strategy documented
  • Assessment: [PASS | FAIL | N/A]

Strategic Review Verdict

Overall Strategic Assessment: [APPROVED | CONCERNS | REJECTED]

Blocking Issues:

  • [Strategic issue 1 with required mitigation]
  • [Strategic issue 2 with required mitigation]

Recommendations:

  • [Strategic improvement 1]
  • [Strategic improvement 2]

Scripts

ScriptPurpose
.claude/skills/adr-review/scripts/detect_adr_changes.pyDetect ADR file changes for the Claude skill tree
src/copilot-cli/skills/adr-review/scripts/detect_adr_changes.pyDetect ADR file changes for the Copilot CLI mirror
# Basic detection from repo root
uv run python .claude/skills/adr-review/scripts/detect_adr_changes.py

# Skill-relative detection from the Claude skill directory
cd .claude/skills/adr-review
python3 scripts/detect_adr_changes.py --base-path ../../..
cd ../../..

# Compare to specific commit
uv run python .claude/skills/adr-review/scripts/detect_adr_changes.py --since-commit abc123

# Include untracked ADR files
uv run python .claude/skills/adr-review/scripts/detect_adr_changes.py --include-untracked

# Copilot CLI mirror from repo root
uv run python src/copilot-cli/skills/adr-review/scripts/detect_adr_changes.py --include-untracked

# Skill-relative detection from the Copilot CLI mirror
cd src/copilot-cli/skills/adr-review
python3 scripts/detect_adr_changes.py --base-path ../../../..
cd ../../../..

Verification Checklist

Before marking complete, run the bundled detector to check for pending ADR changes:

uv run python .claude/skills/adr-review/scripts/detect_adr_changes.py --include-untracked
echo "exit=$?"   # must be 0; non-zero means git error or I/O failure
  • The detector script exited 0 (no git or I/O errors)
  • If skill was auto-triggered by a file change, HasChanges should be true; if skill was manually invoked on an existing committed ADR, HasChanges: false is expected and acceptable

After skill invocation:

  • Debate log exists at .agents/critique/ADR-NNN-debate-log.md
  • ADR status updated using the frontmatter enum below; use prose for review nuance
  • Frontmatter status field present and a valid enum value: one of proposed | accepted | rejected | deprecated | superseded (ADR-073). A missing or out-of-enum status is a P1 blocker; the frontmatter enum is authoritative for tooling, the prose ## Status carries the human nuance.
  • If this review transitions status to accepted: the same change carries adr-review debate-log evidence at .agents/critique/ADR-NNN-debate-log.md (ADR-073 Phase-3 acceptance gate). A hand-edit to accepted with no debate-log artifact is a forgeable approval signal and MUST be rejected.
<!-- vendor-portability: declared. adr-review checks accepted-transition evidence under .agents/critique/; a consumer repo without it reports missing evidence, not a silent pass. Issue #2050. -->
  • All P0 issues addressed or documented
  • Dissent captured for Disagree-and-Commit positions
  • Recommendations provided to orchestrator

Anti-Patterns

Process Anti-Patterns

AvoidWhyInstead
Single-agent ADR reviewMisses domain expertiseUse full 6-agent debate
Skipping Phase 0Duplicates existing workAlways research first
Ignoring D&C dissentLoses important contextDocument all reservations
Manual ADR monitoringError-proneUse detect_adr_changes.py
Deleting accepted ADRs without archiveLoses knowledgeAlways archive accepted ADRs

Review Anti-Patterns (Zimmermann)

Each agent should self-check against these. Phase 2 consolidation flags violations.

Anti-PatternProblemDetection
Pass ThroughFew/no comments, document barely readAgent produces no substantive findings
Copy EditFocuses on wording, ignores contentAll findings editorial, none architectural
Siding/Dead EndComments switch topic, deviate from ADRAgent drifts from decision at hand
Self PromotionRecommends reviewer's preferred solutionAgent pushes technology without objective rationale
Power GameAuthority claims instead of technical argumentsAgent uses position over evidence
Offended ReactionDefends criticized position subjectivelyAgent reacts emotionally to rationale
Groundhog DaySame message repeated across roundsAgent re-raises resolved issues

See zimmermann-review-guidance.md for full practices and pledges.

References

DocumentContent
debate-protocol.mdFull Phases 0-4 workflow
deletion-workflow.mdPhases D1-D4 workflow
issue-resolution.mdP0/P1/P2 handling and deferral
artifacts.mdOutput formats and templates
agent-prompts.mdDetailed agent prompt templates
zimmermann-review-guidance.mdReview practices, 7 anti-patterns, checklist, reviewer pledge (Zimmermann 2023)

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.