About create-adr
create-adr is a skill for developers documenting significant architectural decisions. It guides code review, trade-off research, and creation of numbered ADRs using a provided template.
Key features
- 01Identify decisions worth documenting
- 02Review code and related context
- 03Create sequentially numbered ADRs
- 04Structure decisions with a template
- 05Record alternatives and consequences
Use cases
- 01Document a technology choice
- 02Capture design trade-offs after implementation
- 03Record architectural changes during refactoring
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ majesticlabs-dev/ majestic-marketplace --skill create-adrAfter installing, type/create-adrin Claude Code to confirm it loaded.
Bundled filesassets/adr-template.md
Details
From the project READMECreate ADR Skill
Purpose: Document architectural decisions to provide context for future developers and maintain institutional knowledge about why technical choices were made.
When to Use This Skill
Trigger this skill when:
- Making significant architectural decisions
- Choosing between competing technologies or approaches
- Designing new system components or APIs
- Refactoring that changes system structure
- After implementing a feature that involved design trade-offs
Skip ADR Creation If
- Only minor bug fixes or refactoring
- Documentation or test-only changes
- Configuration tweaks without architectural impact
- Trivial changes with obvious implementation
Workflow
1. Gather Context
Review the implementation to understand:
- What technical decisions were made
- Why this approach was chosen
- What alternatives existed
- What trade-offs were accepted
If reviewing existing code:
git diff main...HEAD
git log --oneline main..HEAD
2. Investigate Further
If the diff doesn't provide enough context:
- Read referenced files/functions
- Check configuration files
- Review related tests
- Look at dependencies added
3. Create the ADR
Location: docs/adr/NNNN-descriptive-title.md
Naming convention:
- Sequential number (0001, 0002, etc.)
- Lowercase with hyphens
- Descriptive but concise
Examples:
0001-use-jwt-for-authentication.md0002-adopt-event-sourcing-for-orders.md0003-postgres-over-mysql.md
4. Use the Template
Use the template from assets/adr-template.md to structure the document.
Key sections to complete:
- Status: Proposed, Accepted, Deprecated, or Superseded
- Context: The problem or opportunity driving the decision
- Decision: What was decided and the technical approach
- Consequences: Positive, negative, and risks
- Alternatives: What else was considered and why it wasn't chosen
Quality Guidelines
Good ADRs have:
- Specific technical details (not vague descriptions)
- Concrete examples and code snippets where helpful
- Honest assessment of trade-offs
- Links to relevant resources or prior art
Avoid:
- Vague justifications ("it's better")
- Missing alternatives section
- No discussion of consequences
- Too much implementation detail (that belongs in code comments)
Example
User: "Document the decision to use Redis for caching"
Skill activates:
- Review caching implementation
- Identify alternatives considered (Memcached, in-memory, etc.)
- Document trade-offs (complexity vs performance)
- Create
docs/adr/0005-redis-for-application-cache.md
Integration
Works well with:
- Major feature implementations
- System refactoring efforts
- Technology migrations
- API design decisions