— Skill
<Intro paragraph: one short paragraph. Name the layer this skill owns in plain
terms, and the language or framework the examples use.>
Builds on. <sibling-a> () and <sibling-b> (). On a conflict, <which skill wins on which axis — e.g.
"architecture-and-design decides the design and this skill decides the
framework API">. The Ruleset below is complete on its own; load a named skill
only when the task turns on its layer, not by default. If a named sibling
skill is not loaded, apply that layer from general knowledge and do not block.
This SKILL.md is self-sufficient: the Ruleset below is the complete,
enforceable list. Each references/<topic>.md holds that group's reasoning and
❌ / ✅ code, and references/worked-example.md a full review pass; open them
for depth when your runtime allows.
How to Use This Skill
Pick the mode that matches the task. Do the steps in order.
| Mode |
Steps |
| <Generate / Write> — |
1. <first step, naming a topic>. 2. . 3. . 4. Run the Ruleset as a checklist. Fix each fail before you hand off. |
| Review — check a pull request or a diff |
1. Run the Ruleset against the diff. 2. Write one finding per fail, in the Output Format below. 3. Order the findings: must-fix first, then consider. 4. If nothing fails, say so in one line. Do not invent findings. |
| <Migrate / Triage / Configure> — |
1. . 2. . 3. . |
Output Format
Write one finding per line:
<severity> · <topic> · <file>:<line> — <what is wrong>. <the fix as an action>.
<severity> is must-fix (breaks a rule in this skill<, or the build / a lint rule>) or consider (safe, but a rule prefers another form).
<topic> is a Ruleset topic slug (<topic-a>, <topic-b>, <topic-c>, …).
Rules for Every Mode
- Name the Ruleset topic when you enforce a rule.
- State the reason, not only the rule.
Ruleset
→ references/<topic-a>.md
→ references/<topic-b>.md
Limits
This skill is . It does not cover:
- <A neighbouring concern, and which skill owns it.>
- <Another.>
This skill states . It is not a substitute for running the
build or the suite and reading what actually fails.
References
This skill composes with:
- <
sibling-a> — <what it owns, and who wins on a conflict>.
- <
sibling-b> — .
- <
sibling-c> — <the sibling framework or lens skill, if any>.
1---2name: skill-name3description: <One or two sentences: what this skill governs and the form of guidance it gives — write, review, refactor, migrate.> <One sentence: the task types it serves.> Builds on <`sibling`, `sibling`>. Use it when the user mentions <keyword>, <keyword>, <keyword>, or <keyword>.4license: CC-BY-4.05---67<!--8 Copy this directory layout for a new skill:910 skills/<skill-name>/11 SKILL.md # this file, filled in12 references/<topic-a>.md # one file per Ruleset group13 references/<topic-b>.md14 references/worked-example.md # always present — see templates/worked-example.md1516 Fill every <placeholder>. Delete every HTML comment before you commit.17 `description` is <= 1024 characters and ends with the trigger keywords.18 Keep this file under 500 lines and under its token budget (see CONTRIBUTING.md).19 Sibling skills are named in bare backticks (`react`), never with a path or an20 installer command. No tool, vendor, or model name appears anywhere in the body.21-->2223# <Title> — <Kind> Skill2425<!-- Kind is one of: Base Engineering Skill · Framework Skill · Review Skill ·26 Engineering Skill. A framework skill extends `core-typescript` and27 `architecture-and-design`; a lens (Review Skill) composes over UI or test28 work. Title is a short human name, not the slug. -->2930<Intro paragraph: one short paragraph. Name the layer this skill owns in plain31terms, and the language or framework the examples use.>3233> **Builds on.** <`sibling-a`> (<what that skill owns>) and <`sibling-b`> (<what34> that skill owns>). On a conflict, <which skill wins on which axis — e.g.35> "`architecture-and-design` decides the design and this skill decides the36> framework API">. The Ruleset below is complete on its own; load a named skill37> only when the task turns on its layer, not by default. If a named sibling38> skill is not loaded, apply that layer from general knowledge and do not block.3940<!-- A base skill with no siblings writes exactly:41 "> **Builds on.** Nothing — this is a base skill."42 and drops the conflict and fallback sentences. -->4344This SKILL.md is self-sufficient: the **Ruleset** below is the complete,45enforceable list. Each `references/<topic>.md` holds that group's reasoning and46`❌ / ✅` code, and `references/worked-example.md` a full review pass; open them47for depth when your runtime allows.4849---5051## How to Use This Skill5253Pick the mode that matches the task. Do the steps in order.5455| Mode | Steps |56|---|---|57| **<Generate / Write>** — <write new code this skill governs> | 1. <first step, naming a `topic`>. 2. <second step>. 3. <third step>. 4. Run the Ruleset as a checklist. Fix each fail before you hand off. |58| **Review** — check a pull request or a diff | 1. Run the Ruleset against the diff. 2. Write one finding per fail, in the Output Format below. 3. Order the findings: `must-fix` first, then `consider`. 4. If nothing fails, say so in one line. Do not invent findings. |59| **<Migrate / Triage / Configure>** — <the third task type this skill serves> | 1. <first step>. 2. <second step>. 3. <third step>. |6061<!-- Every skill has a Review mode with these exact steps. The other two modes62 are named for what the skill does (Generate, Write, Migrate, Triage,63 Configure, Characterize). Drop the third row if the skill has only two. -->6465### Output Format6667Write one finding per line:6869```70<severity> · <topic> · <file>:<line> — <what is wrong>. <the fix as an action>.71```7273- `<severity>` is `must-fix` (breaks a rule in this skill<, or the build / a lint rule>) or `consider` (safe, but a rule prefers another form).74- `<topic>` is a Ruleset topic slug (`<topic-a>`, `<topic-b>`, `<topic-c>`, …).7576<!-- The finding line above is fixed — copy it verbatim. A skill may add one77 bracketed tag per finding for an external standard it cites (e.g.78 accessibility appends "[WCAG 1.4.1]"); note that convention here if so. -->7980### Rules for Every Mode8182- Name the Ruleset topic when you enforce a rule.83- State the reason, not only the rule.84- <One or two skill-specific always-on rules: the judgment calls that precede every mode.>8586<!-- Optional: one `### <Named>` explainer subsection may sit between Output87 Format and Rules for Every Mode when the skill rests on a small model the88 reader needs first (e.g. test-quality's four properties, accessibility's89 POUR table). Keep it short. Most skills do not need one. -->9091---9293## Ruleset9495### <topic-a> → `references/<topic-a>.md`9697- [ ] <One enforceable rule: a reviewer can point at a line and call pass or fail from this sentence alone. No rationale — that lives in the reference file.>98- [ ] <Another rule in this group.>99- [ ] <Another rule.>100101### <topic-b> → `references/<topic-b>.md`102103- [ ] <rule>104- [ ] <rule>105106<!-- One `###` group per Ruleset topic; 5-12 topics is typical. Every topic107 slug named here MUST have a matching references/<topic>.md, and every file108 in references/ (except worked-example.md) MUST be named by a group here. -->109110---111112## Limits113114This skill is <its one-line scope>. It does not cover:115116- <A neighbouring concern, and which skill owns it.>117- <Another out-of-scope area.>118- <Another.>119120This skill states <what it decides>. It is not a substitute for running the121build or the suite and reading what actually fails.122123---124125## References126127This skill composes with:128129- **<`sibling-a`>** — <what it owns, and who wins on a conflict>.130- **<`sibling-b`>** — <what it owns>.131- **<`sibling-c`>** — <the sibling framework or lens skill, if any>.