.claude/skills/architecture-decision-records/SKILL.md
Manages the ADR (Architecture Decision Record) registry in docs/decisions/. Use when listing, searching, or creating ADRs, or when the user mentions architectural decisions, ADR, or design records.
npx skillsauth add tranhieutt/software_development_department architecture-decision-recordsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| Write ADR | Skip ADR | |---|---| | New framework/database adoption | Minor version upgrades | | API design patterns | Bug fixes | | Security architecture | Implementation details | | Integration patterns | Routine maintenance |
Proposed → Accepted → Deprecated → Superseded
↓
Rejected
# ADR-NNNN: [Title]
## Status
Accepted | Proposed | Deprecated | Superseded by ADR-XXXX
## Context
[Problem statement, current situation, constraints, scale]
## Decision Drivers
- [Must/Should/Could requirement]
## Considered Options
### Option 1: [Name] — [one-line summary]
Pros: ... | Cons: ...
### Option 2: [Name]
Pros: ... | Cons: ...
## Decision
We will use **[Option N]** because [key rationale].
## Consequences
**Positive:** ...
**Negative:** ...
**Risks:** ... Mitigation: ...
## Related ADRs
- ADR-XXXX: [relationship]
Lightweight ADR (for clear-cut decisions):
# ADR-0012: Adopt TypeScript for Frontend
**Status**: Accepted | **Date**: 2024-01-15 | **Deciders**: @alice, @bob
## Context
50+ React components with prop-type-mismatch bugs. PropTypes are runtime-only.
## Decision
TypeScript for all new frontend code. Migrate incrementally with `allowJs: true`.
## Consequences
Good: Compile-time errors, better IDE support.
Bad: Learning curve, initial slowdown.
Y-Statement (for concise formal record):
In the context of **building a microservices architecture**,
facing **need for centralized auth and rate limiting**,
we decided for **Kong Gateway**
and against **AWS API Gateway and custom Nginx**,
to achieve **vendor independence and plugin extensibility**,
accepting **we manage Kong infrastructure ourselves**.
docs/adr/
├── README.md # Index table
├── template.md
├── 0001-use-postgresql.md
└── 0003-mongodb-deprecated.md # [SUPERSEDED by 0020]
| ADR | Title | Status | Date | |---|---|---|---| | 0001 | Use PostgreSQL | Accepted | 2024-01-10 | | 0003 | MongoDB for profiles | Deprecated | 2023-06-15 |
# With adr-tools
adr init docs/adr
adr new "Use PostgreSQL as Primary Database"
adr new -s 3 "Deprecate MongoDB" # -s supersedes ADR 3
adr generate toc > docs/adr/README.md
testing
Generates high-fidelity architecture diagrams, sequence flows, and component maps for SDD projects. Use when finalizing a design phase, documenting system architecture, or visualizing agentic workflows. Default style: Style 6 (Claude Official).
data-ai
Provides vector database and semantic search patterns for Pinecone, Weaviate, Qdrant, Milvus, and pgvector in RAG and recommendation systems. Use when implementing vector search or when the user mentions vector database, semantic search, embeddings, or similarity search.
development
Updates docs/technical/CODEMAP.md by scanning the current codebase structure. Run after a significant feature merge, refactor, or when CODEMAP feels stale.
development
Unlocks the codebase after a release freeze or incident freeze period to resume normal development. Use when a freeze period ends or when the user mentions unfreezing or lifting the code freeze.