Architecture Decision Writer
SkillDev toolsWrite Architecture Decision Records (ADRs) following the Michael Nygard format. Captures context, options considered, decision rationale, and consequences. Use when making technology choices, framework selections, or any architectural decision that future developers need to understand.
Use Architecture Decision Writer in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Architecture Decision Writer and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Architecture Decision Writer skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by hoavdc/codexkit in skills/codexkit-architecture-decision-writer/SKILL.md and read by Ahel’s review.
When to Use
- When choosing between technology options (framework, database, API style)
- When making structural changes that affect multiple teams
- When a decision needs to be documented for future reference
- When onboarding new developers who ask "why did we do it this way?"
Procedure
Step 1 — Status & Context
Set the ADR status:
- Proposed — under discussion
- Accepted — decision made, implementation in progress
- Superseded by ADR-XXX — replaced by a later decision
- Deprecated — no longer relevant
Write the context:
- What is the current situation?
- What forces are at play? (technical constraints, business requirements, team skills)
- What problem triggers this decision?
Step 2 — Decision Drivers
List the factors influencing this decision:
- Must-haves (non-negotiable requirements)
- Nice-to-haves (preferences)
- Constraints (timeline, budget, team expertise)
Step 3 — Options Considered
For each option:
| Criteria | Option A | Option B | Option C |
|---|---|---|---|
| [Criterion 1] | ✅ Good | ⚠️ Partial | ❌ Poor |
| [Criterion 2] | ⚠️ Partial | ✅ Good | ✅ Good |
| Learning curve | Low | Medium | High |
| Community & Ecosystem | Large | Medium | Small |
| Long-term viability | Stable | Growing | Uncertain |
Step 4 — Decision
State the decision clearly:
We will use [Option X] because [concise rationale].
The rationale should reference:
- Which decision drivers tipped the balance
- What trade-offs were accepted
- What was explicitly rejected and why
Step 5 — Consequences
| Type | Consequence |
|---|---|
| ✅ Positive | [Benefit of this decision] |
| ⚠️ Risk | [Risk accepted, with mitigation] |
| ❌ Trade-off | [What we lose by choosing this] |
| 🔄 Follow-up | [Actions needed as a result] |
Step 6 — Review
Set a review date (6–12 months) and conditions that would trigger reconsideration:
- Technology landscape changes significantly
- Team composition changes
- Performance requirements change
Inputs
| Input | Required | Format |
|---|---|---|
| Decision topic | Yes | What architectural question is being decided |
| Options | Yes | At least 2 options considered |
| Constraints | Yes | Technical, business, or team constraints |
| Stakeholders | Recommended | Who is affected by this decision |
Output
# ADR-007: Use PostgreSQL for Primary Data Store
**Status:** Accepted
**Date:** 2024-03-15
**Deciders:** Engineering Lead, Platform Team
## Context
We are building a new order management system that requires ACID transactions,
complex joins across 15+ tables, and support for JSON documents for flexible
order metadata. Expected write volume: ~500 TPS peak.
## Decision Drivers
- Must support ACID transactions for financial data
- Must handle mixed relational + document workloads
- Team has strong SQL expertise (8/10 engineers)
- Must integrate with existing data warehouse (Snowflake)
## Options Considered
| Criteria | PostgreSQL | MongoDB | CockroachDB |
|----------|-----------|---------|-------------|
| ACID | ✅ Full | ⚠️ Document-level | ✅ Full |
| JSON support | ✅ JSONB | ✅ Native | ✅ JSONB |
| Team expertise | ✅ Strong | ⚠️ Moderate | ❌ Low |
| Operational cost | ✅ Low | ⚠️ Medium | ❌ High |
| Horizontal scaling | ⚠️ Read replicas | ✅ Native | ✅ Native |
## Decision
We will use **PostgreSQL 16** with JSONB columns for flexible metadata.
## Consequences
- ✅ Leverage existing team SQL expertise — no ramp-up time
- ✅ Mature ecosystem, extensive tooling
- ⚠️ Horizontal write scaling limited — acceptable for projected 500 TPS
- 🔄 Set up read replicas for reporting workloads
- 📅 Review in 12 months if write volume exceeds 2,000 TPS
Definition of Done
- Context clearly describes the situation and forces
- At least 2 options compared with criteria
- Decision stated clearly with rationale
- Consequences include positives, risks, and trade-offs
- Review date and trigger conditions set
Quality Criteria
- All claims reference specific frameworks, standards, or quantifiable data
- Content matches the stated audience's expertise level
- Recommendations are actionable — each includes a concrete next step
- No unsupported assertions or generic filler language
Verification (4C)
| Check | Question |
|---|---|
| Correctness | Do referenced frameworks and standards match their official definitions? |
| Completeness | Are all key concepts covered without significant gaps for the stated audience? |
| Context-fit | Would this be useful for someone new to this domain, or is it too advanced/too basic? |
| Consequence | If a stakeholder acted on this immediately, what could they misinterpret? |
Edge Cases
- Conflicting frameworks — State which framework takes precedence and why. Document the trade-off explicitly.
- Rapidly changing domain — Note information currency date. Flag sections likely to need updates.
- Audience has mixed expertise levels — Provide a glossary and mark advanced sections as optional.
Changelog
- v1.0.0 — Initial release
Signals
- GitHub stars
- 25
- Forks
- 13
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
codexkit-architecture-decision-writer- Source
- github.com/hoavdc/codexkit
Related picks
Skill · baekenough
The pick for Postgresoptimizing-snowflake-workloads
Skill · unknown-333
The pick for SnowflakeSnowflake Automation
Skill · composio-community
The pick for Snowflakelark-markdown
Skill · larksuite
The pick for Markdownmarkdown-formatter
Skill · nvidia
The pick for Markdownscaffold-snowflake-connector
Skill · linuxfoundation
The pick for Snowflake