← ClaudeAtlas

skill-writinglisted

How a skill earns its place here, and how one is written so it fires - a three-question admission test, one protocol per skill, a description priced against the CI budget before the body, and an activation test proving it triggers from a cold session. Use when the retrospective proposes a new skill or rewrites one.
jjanczur/tyran · ★ 48 · AI & Automation · score 77
Install: claude install-skill jjanczur/tyran
# Writing a skill for this plugin > The retrospective may commit a new skill without asking — it is AUTO class. > That is only safe if there is a standard for what a skill is. This is the > standard, and the first rule is the one that keeps the library small. **Every description is loaded into EVERY session, whether the skill fires or not.** That is the price, it is paid by every user on every turn, and it is the one cost a skill cannot avoid by being well written. `scripts/desc-budget.mjs` enforces the ceiling in CI. Read that number before you write anything. ## The admission test — all three, or it is not a skill 1. **Is there a dangling reference?** Does the conductor, an agent or another skill already *demand* this protocol without carrying it? A skill nothing points at is a library entry, and nobody reads a library. 2. **Was it paid for?** If a competent engineer would find it in five minutes of searching, it is documentation. Skills encode what a failure taught: decisions, constraints, the trap that is not obvious until it costs a day. 3. **Is it portable and does it belong to us?** No foreign runtime, no path from another tool, no agent this repo does not ship, and **no model name** — routing has exactly one source, and a test fails the build on a model name anywhere in `skills/` or `agents/`. Failing any one of them is not a reason to write it shorter. It is a reason to put the content where it belongs: a rule in the caller, a fact in `.tyra