skills/adr/SKILL.md
Create, update, review, triage, and adopt Architecture Decision Records (ADRs) using MADR-style Markdown templates and senior ADR practice. Use when the user mentions ADR, Architecture Decision Record, decision record, MADR, architectural decision, docs/decisions, supersede ADR, stale ADRs, ADR review, or wants to record a technical decision in a repository.
npx skillsauth add mgajewskik/opencode-config adrInstall 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.
Help create and maintain lean Architecture Decision Records in repositories. Default to MADR-style Markdown structure, but do not require MADR tooling. Treat MADR as a template and convention source, not as a mandatory generator or lifecycle system.
docs/decisions or MADR if the repository already has a clear ADR conventiondocs/decisions/NNNN-title-with-dashes.md.Choose one mode, then load the smallest reference needed.
| Mode | Use when | Load |
|---|---|---|
| triage | deciding ADR vs no ADR vs RFC/design doc first | references/senior-practice.md |
| create | new ADR from notes, issue, chat, or chosen option | references/madr-workflow.md, template from assets/ |
| update | status change, supersession, consequences, confirmation, metadata, links | references/madr-workflow.md |
| review | user asks if an ADR is good, complete, too vague, or ready | references/review-checklist.md; add references/senior-practice.md for high-risk/systemic issues |
| adopt | repo needs an ADR convention or initial ADR | references/madr-workflow.md, assets/madr-adoption-adr.md |
| system | stale/noisy ADR logs, indexes, governance, scale, findability, maintenance | references/senior-practice.md |
| source | user asks why this format, what MADR says, or license/provenance | references/source-map.md |
If the repo has no stronger convention, use this structure:
# {short title, representative of solved problem and found solution}
## Context and Problem Statement
## Considered Options
## Decision Outcome
### Consequences
Use the full template when the decision needs explicit drivers, detailed option tradeoffs, confirmation checks, metadata, or links.
0001.NNNN-title-with-dashes.md.For ADR drafting/editing, report:
Files changedDecision captured - one sentenceStatus - proposed/accepted/rejected/deprecated/superseded or local equivalentAssumptions - only if any were neededValidation - checklist or command evidenceNext step - review, accept, supersede, or link from docsFor ADR reviews, use:
VerdictBlockersRisks / weak spotsSuggested fixesEvidenceDecision Outcome above detailed option analysis.Confirmation with formal verification; it can be a practical review, test, metric, or observable invariant.Pass when all are true:
Fail when any are true:
| Scenario | Detection | Fallback |
|---|---|---|
| No local ADR convention | No ADR directory/template/index found | Use docs/decisions/NNNN-title-with-dashes.md and MADR minimal/full templates |
| Decision not actually made | User provides only exploration or alternatives | Draft as proposed, or ask for the chosen option before marking accepted |
| Missing rationale | Chosen option exists but drivers/tradeoffs are absent | Ask targeted questions or label rationale assumptions |
| Existing ADR should not be edited | Decision changed materially | Create a new ADR and supersede/deprecate the old one |
| Tooling requested by implication | User mentions MADR repo/tool but not installation | Use templates only; ask before adding tooling |
| ADR flood | Request documents trivial reversible choices | Recommend code comment, ticket, or no artifact; preserve ADR signal |
| Zombie decision | Accepted ADR conflicts with implementation or strategy | Diagnose whether code is wrong, ADR is stale, or social adoption failed; supersede if context changed |
development
Guide technical communication for software developers. Covers email structure, team messaging etiquette, meeting agendas, and adapting messages for technical vs non-technical audiences. Use when drafting professional messages, preparing meeting communications, or improving written communication.
development
Senior-level Helm and Helm chart guidance for Kubernetes. Use when creating, reviewing, debugging, or operating Helm charts/releases: Chart.yaml, values.yaml, templates, dependencies, CRDs, hooks, RBAC, helm install/upgrade/rollback, OCI/provenance, Argo CD/Flux Helm workflows.
testing
Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".
documentation
Use when writing or improving README files. Not all READMEs are the same — provides templates and guidance matched to your audience and project type.