skills/adr/SKILL.md
Record and consult Architecture Decision Records (ADRs) — short Markdown notes in `docs/adr/` capturing *that* a hard-to-reverse decision was made and *why*. Use whenever a real architectural trade-off is being made or has just been settled (tech choice with lock-in, context boundaries, integration patterns, a deliberate deviation from the obvious path, a constraint invisible in the code), when a decision is being reversed or superseded, when the user mentions ADR / architecture decision record / decision log, or before changing code in an area so you read and respect prior decisions rather than re-litigating them. Trigger even when the user doesn't say "ADR" but describes locking in a decision they'll want future engineers to understand.
npx skillsauth add shihyuho/skills 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.
An ADR records that a decision was made and why, so a future reader (human or agent) doesn't undo it by accident or burn a week rediscovering the reasoning. It is not a spec, a design doc, or a task list. The value is in the reasoning, not in filling out sections.
This skill covers the full lifecycle: deciding whether a decision deserves an ADR, writing it, reading existing ones before you touch code, and maintaining them as decisions get revisited.
docs/adr/ at the repo root.src/<context>/docs/adr/. Root docs/adr/ holds system-wide decisions; per-context dirs hold local ones.When you're about to work in an area, read the ADRs that touch it before writing anything. They tell you which decisions are settled. Two rules follow:
Don't re-litigate. If an ADR already settled something, build on it — don't re-propose the alternative it rejected.
Surface conflicts, don't silently override. If your plan contradicts an existing ADR, say so explicitly and let the human decide:
Contradicts ADR-0007 (event-sourced orders) — but worth reopening because the projection lag now breaks the 200ms SLA.
Only raise it when the friction is real enough to justify reopening the decision. Don't list every theoretical change an ADR forbids.
Most decisions don't need an ADR. Write one only when all three hold:
Keep it to the minimum that carries the reasoning. The template, numbering rules, optional sections, and worked examples live in references/format.md — read it when you're about to create or revise an ADR.
The short version: a title line plus 1–3 sentences (context, decision, why) is a complete ADR. Add optional sections only when they pull their weight.
Decisions get revisited. Rather than editing history into something that never happened, record the change:
superseded by ADR-NNNN (a status frontmatter field — see format reference). The new one should say what changed and why the original reasoning no longer holds.status of proposed | accepted | deprecated | superseded is only worth adding once decisions in the repo actually start getting revisited. Don't add ceremony before it earns its keep.development
--- name: artifact-anatomy description: Defines where spec-driven working artifacts — the spec (e.g. `SPEC.md`), the plan, and the task list (e.g. `tasks/plan.md`, `tasks/todo.md`) — live on disk under `docs/specs/<id>-<slug>/`, and how those directories are numbered, scoped, and resolved so multiple specs can run in parallel without overwriting one another. Use this BEFORE creating, locating, or updating any spec, plan, or task/todo file: whenever a spec/plan/build workflow writes these artifac
development
Write a short author's briefing to hand to a code reviewer whose agent already has its own review skill, so it supplies the context that skill can't see instead of repeating how to review. Right after you finish a piece of work, it mines this session (and any kickoff implementation-notes) for what the reviewer most needs flagged — the easy-to-miss changes, the parts you're least sure about, the looks-wrong-but-intentional bits, and the blast radius — plus the exact commit range to review. Use when you've just finished work and want to hand the review off to another agent, chat, or teammate, when you want a "heads-up for the reviewer", or when packaging a change for review elsewhere. It does not perform the review and does not re-specify severity tiers or output format — that's the reviewer's own skill's job.
testing
Use when creating, rewriting, pruning, or reviewing `AGENTS.md` or `CLAUDE.md`, especially to remove repo summaries, stale rules, and other low-signal global instructions. Trigger when deciding what belongs in always-on agent files versus a task-specific skill.
development
Drive a structured tutoring workflow that turns Claude into a learning onramp accelerator — consultative diagnosis → custom syllabus → unit-by-unit guided lessons with notes/whiteboard → dynamic adjustment from an accumulating learner profile. Use when the user states a learning goal ("I want to systematically learn X", "teach me Y", "help me prep for Z exam"), uploads study materials and asks for a course plan, or signals sustained guided study (mentions tutor, syllabus, course, lessons, study plan, curriculum, 家教, 學習路徑). Skip for one-shot factual Q&A or quick code-context explanations.