adr

Document Architecture Decision Records using YAML templating in project specification files.

2|Updated May 19, 2026
One-click install
npx skills add https://github.com/element22llc/e22-plugins --skill adr-element22llc
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: adr
Source: https://github.com/element22llc/e22-plugins/tree/main/plugins/steer/skills/adr
Command: npx skills add https://github.com/element22llc/e22-plugins --skill adr-element22llc

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires python(yamldiff), yaml.

What problem does it solve?

This Skill provides a structured format to document significant architecture decisions, aiding teams in maintaining clear communication and traceable historical decisions.

Core Features & Use Cases

  • Automated Documentation: Streamline the creation of Architecture Decision Records (ADR) directly into the project specification files.
  • Standardization: Ensures consistency and clarity by guiding through required fields like Context, Decision, Alternatives, and Consequences.
  • Version Control: Maintains version integrity by numbering each ADR, with support for superseding previous entries.
  • Use Case: Facilitate documentation for choices like the choice of database or a significant architectural shift.

Quick Start

Execute 'adr create /spec/decisions/0001-initial-choice.md' to initiate an ADR documenting a significant decision in the codebase.

Frequently Asked Questions about adr

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I document architecture decisions for a software project?

Run 'adr create /spec/decisions/0001-initial-choice.md' to initiate an ADR documenting a significant decision. The command uses YAML templating to standardize fields like Context, Decision, Alternatives, and Consequences into your project specification files.

When should I write an Architecture Decision Record instead of inline code comments?

Write an ADR when making major software architectural decisions, such as choosing a database or undergoing a significant architectural shift. ADRs provide structured team communication and traceable historical decisions that inline comments cannot standardize.

Do I need Python to manage Architecture Decision Records?

Yes, you need Python with the yamldiff library and yaml dependency to manage Architecture Decision Records. These dependencies handle YAML templating and maintain version integrity by numbering each ADR and supporting superseded entries.

What's the best way to maintain version control for architecture decision records?

The best way to maintain version control for ADRs is to number each entry sequentially and use the superseding feature to link to previous records. This approach preserves historical context while documenting architectural shifts in your codebase.