Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when choosing between alternatives with trade-offs — X-or-Y decisions or a weighted decision matrix / gewichtete Entscheidungsmatrix ('score my options'); ADR via `adr-create`.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Shape the thinking behind an architectural decision: list the options, expose trade-offs, lock the chosen variant, and wire the supersession chain. Hands off to
adr-createfor file mechanics (numbering, index, frontmatter). This skill does not write the ADR file itself.
supersede:
the older ADR with explicit rationale.Do NOT use when:
adr-create.docs/contracts/mental-models.md § 4.mental-models.md § 6.mental-models.md § 10.
Corollary — a shortcut through a one-way door is a decision, not a
defer. The cheap-and-simple option is preferred where the choice can
be walked back later. Where it cannot — a public API shape, a DB schema,
a migration, a wire format, a published identifier — "we can simplify
this later" is false, so it never ships as a deferred note; it lands
here as a recorded decision with its consequences named. The one-way
categories are enumerated so the call is not left to a judgement about
what feels important."We need to decide X because Y." If you cannot, the decision
is not ripe — surface that and stop.
Each option gets:
Add an explicit "do nothing" option whenever it is plausible — forces the user to compare the change against the status quo.
| Criterion | Option 1 | Option 2 | ... |
|---|---|---|---|
| Implementation cost | |||
| Operational cost | |||
| Reversibility | |||
| Blast radius | |||
| Time-to-value |
Pick criteria that separate the options. Criteria where every option scores the same are noise — drop them.
Write:
<Option name>."decision-revisit-gate for
what happens when a later change is blocked by it without one.
It is an externally observable condition, never a cadence and never
permanence under a field name: terminal, none, "never" and "forever"
are invalid, and unclassified is legal only on an existing record
during the migration — never on the one you are locking now.file:line, a URL, a
docs/CLAIMS.md claim id, a benchmark id — or is labelled an
assumption. There is no third state. Cite nothing and the record grades
E0, which is honest and publishable; a confident grade over no citations
is not. Agreement is not evidence: the council converging, or two
models liking the same option, is provenance: agentic with
agentic_mode: council — sources and measurements raise the grade,
consensus does not. A human product call records E0 plus
authority_basis: owner_intent rather than a faked grade. Vocabulary:
adr-layout § Provenance and evidence.If this decision overrides a prior ADR:
supersedes: linkage to adr-create.Classify before handing off. A locked choice earns an ADR only when it is architecturally significant on at least one axis:
None of the three → no ADR. The record still exists; it lands as a
decision note in agents/decisions/, a config value, a measurement record in
docs/CLAIMS.md, an experiment, or a roadmap item. Explicitly not ADRs: a
temporary numeric threshold · a benchmark value · a model mapping · one-off
release sequencing · a reversible local implementation detail.
The reference case is in this tree. ADR-002 encodes 25 000 → 26 000 and
a 4.0k override ceiling as architecture law (ADR-002:55, :62), and
ADR-114 then had to add another override while recording that 7 of 9 kernel
rules already carry them (ADR-114:74). The principle — a kernel budget
exists, is measured, and is capped — is the ADR. The numbers belong in a
versioned budget contract with a regression gate, so a recalibration stops
needing an architecture supersession.
Gate passed → output the structured payload (below). The user — or
adr-create — turns it into the file.
Optional numeric variant of step 3. Gate — fire only when ALL hold:
≥ 3 options · no single dominant criterion · costly / hard-to-reverse
decision · commensurable criteria (no values conflict). A 2-option or
reversible choice gets a one-line redirect: just decide, or use the
qualitative matrix above. Full procedure, anchors, worked example:
references/weighted-matrix.md.
(AI-suggested).
Never propose criteria first (anchoring).adversarial-review, scoped: "attack
the winner, using the losing options' strongest criteria" (the
premortem delegation pattern — never reimplemented inline).Output appends matrix + sensitivity block + attack summary + the intuition
caveat (resistance to the result signals a wrong weight or unquantified
information — surface it, don't ignore it). The score is a structured
argument, not a verdict. Hand-off to adr-create is unchanged.
WHEN to use this
WHEN NOT to use this
stakeholder-tradeoff;
this skill locks the choice after the human cost is mapped.adr-create; this skill produces the
payload, not the file.risk-officer first, then return.rice-prioritization;
the weighted-matrix mode here is for ONE choice on custom criteria.Decision: <one sentence>
Options:
1. <name> — <sketch>
Pros: ...
Cons: ...
Reversibility: easy | costly | one-way
2. ...
N. Do nothing — <sketch>
Trade-off matrix:
| Criterion | <opt 1> | <opt 2> | ... |
| ...
Locked: <chosen option name>
Consequences:
+ <becomes true>
- <becomes harder>
✗ <becomes impossible>
Assumptions:
~ <load-bearing claim with no basis ref>
Evidence:
<basis ref> — file:line | URL | CLAIMS id | benchmark id (or: none — E0)
Provenance: human | agentic | mixed | unknown (agentic_mode: single | council | delegated)
Grade: E0 | E1 | E2 | E3 | E4 (authority_basis: evidence | owner_intent)
Supersedes: <ADR-XYZ "title"> (if any)
Trigger: <what changed> (if superseding)
Revisit-if: <observable condition>
Admission gate: ADR | decision note | config value | measurement | experiment | roadmap item
Next: /adr-create with the payload above (only when the gate says ADR)
E0 — write it.adr-create owns
filenames, numbering, and index regeneration.Replacing the in-house cron runner with a managed scheduler:
+ on-call gets paged on scheduler infra, not
application code. – job definitions move to a vendor format,
raising migration cost if we leave. ✗ we cannot run jobs in the
app process anymore — assumes vendor uptime./adr-create with the payload, append supersedes: ADR-014.まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.
日本語の概要は準備中です。原文の説明を表示しています。
Adversarial critique — devil's advocate, stress-test, honest teardown ('poke holes', 'be brutal', 'was hältst du davon'); explicit request only. Routine code or design review → code-review.
日本語の概要は準備中です。原文の説明を表示しています。
Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.
日本語の概要は準備中です。原文の説明を表示しています。
Use for an adversarial red-team / blue-team / auditor review of an AI agent's CONFIG + behaviour (rules, skills, MCP, hooks, permissions) — attack-chain → defensive-gap list, not a code audit.
日本語の概要は準備中です。原文の説明を表示しています。