Create Architectural Decision Record

SkillDocs & knowledge

Create an Architectural Decision Record (ADR) document for AI-optimized decision documentation.

Available today. Use it from your connected AI after setup.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the Create Architectural Decision Record skill

What this skill tells your AI

The instructions your AI receives, as published by jmrplens/gitlab-mcp-server in .github/skills/create-architectural-decision-record/SKILL.md and read by ahel’s review.

Create an ADR document for ${input:DecisionTitle} using structured formatting optimized for AI consumption and human readability.

Inputs

  • Context: ${input:Context}
  • Decision: ${input:Decision}
  • Alternatives: ${input:Alternatives}
  • Stakeholders: ${input:Stakeholders}

Input Validation

If any of the required inputs are not provided or cannot be determined from the conversation history, ask the user to provide the missing information before proceeding with ADR generation.

Requirements

  • Use precise, unambiguous language
  • Follow standardized ADR format with front matter
  • Include both positive and negative consequences
  • Document alternatives with rejection rationale
  • Structure for machine parsing and human reference
  • Use coded bullet points (3-4 letter codes + 3-digit numbers) for multi-item sections

The ADR must be saved in the /docs/development/adr directory using the naming convention: adr-NNNN-[title-slug].md, where NNNN is the next sequential 4-digit number (e.g., adr-0001-database-selection.md).

Required Documentation Structure

The documentation file must follow the template below, ensuring that all sections are filled out appropriately. The front matter for the markdown should be structured correctly as per the example following:

---
title: "ADR-NNNN: [Decision Title]"
status: "Proposed"
date: "YYYY-MM-DD"
authors: "[Stakeholder Names/Roles]"
tags: ["architecture", "decision"]
supersedes: ""
superseded_by: ""
---

# ADR-NNNN: [Decision Title]

## Status

**Proposed** | Accepted | Rejected | Superseded | Deprecated

## Context

[Problem statement, technical constraints, business requirements, and environmental factors requiring this decision.]

## Decision

[Chosen solution with clear rationale for selection.]

## Consequences

### Positive

- **POS-001**: [Beneficial outcomes and advantages]
- **POS-002**: [Performance, maintainability, scalability improvements]
- **POS-003**: [Alignment with architectural principles]

### Negative

- **NEG-001**: [Trade-offs, limitations, drawbacks]
- **NEG-002**: [Technical debt or complexity introduced]
- **NEG-003**: [Risks and future challenges]

## Alternatives Considered

### [Alternative 1 Name]

- **ALT-001**: **Description**: [Brief technical description]
- **ALT-002**: **Rejection Reason**: [Why this option was not selected]

### [Alternative 2 Name]

- **ALT-003**: **Description**: [Brief technical description]
- **ALT-004**: **Rejection Reason**: [Why this option was not selected]

## Implementation Notes

- **IMP-001**: [Key implementation considerations]
- **IMP-002**: [Migration or rollout strategy if applicable]
- **IMP-003**: [Monitoring and success criteria]

## References

- **REF-001**: [Related ADRs]
- **REF-002**: [External documentation]
- **REF-003**: [Standards or frameworks referenced]

Signals

GitHub stars
39
Forks
5
Last commit
Sep 2026
Advanced
Item type
skill
Key
create-architectural-decision-record-jmrplens
Source
github.com/jmrplens/gitlab-mcp-server