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'.
The English summary is being prepared. Showing the original description.
Use when deciding 'should this be a skill or a rule?', creating/improving/reviewing agent skills, SKILL.md frontmatter, or procedure sections — even without saying 'skill-writing'.
The English summary is being prepared. Showing the original description.
See how to installReview the instructions the agent will receive before you install.
Use this skill when:
Typical examples:
Do not use this skill when:
Before creating anything, classify the content:
| If the content is... | Then it is... | Action |
|---|---|---|
| An always-true constraint ("never X", "always Y") | Rule | Create/update .augment/rules/ |
| A step-by-step workflow with decisions and validation | Skill | Create/update .augment/skills/ |
| A coding convention or reference material | Guideline | Create/update .augment/guidelines/ |
Baseline model knowledge (how jq works, what docker exec does) | Nothing | Do not create anything |
| Simple tool usage without complex workflow | Nothing | Do not create anything |
| Already covered by an existing skill/rule/guideline | Update | Extend the existing file |
Ask: "Does the model need this to do its job correctly?"
.claude/skills/ namespaceSkills in src/skills/{name}/SKILL.md AND commands in
src/domains/{domain}/{name}/command.md both project into
.claude/skills/ (see scripts/condense.ts →
generate_claude_skills + generate_claude_commands). Claude treats
the whole directory as native skills.
Implications for skill authors:
generate_claude_commands honors this).
Don't reuse a command's slug for a skill unless the command should
retire.description for routing. A weak skill
description is shadowed by a stronger same-domain command — and vice
versa. Make trigger phrasing precise (§ 1b below)./foo" path AND a "model
picks this up from intent" path, author the skill first and let the
command delegate (skills: frontmatter). Two artifacts with the same
trigger surface fight each other in the router.Do NOT create a skill or rule for:
→ See docs/guidelines/agent-infra/size-and-scope.md for full limits.
templates/skill.md
applies: entry head (when-to-use · mode table · routing) plus one tasks/ or
references/ file per mode, and the head never inlines more than one mode's
procedure. Gated by lint_skill_router_head with a shrink-only allowlist.references/, pluralWhen a skill needs depth the workflow does not, the depth goes in a
references/ subdirectory beside SKILL.md — that exact name, plural. It
was two spellings across nine skills until 2026-08-12 because nothing here
named one; the split cost a rename, not a decision.
When to use, Gotcha,
Procedure, Output format, Do NOT); only step execution moves out.references/: corpora, lookup tables, long schemas, worked examples —
read on the path that needs them, never on every activation.Split for one of two reasons only: the material is genuinely consulted on demand, or a procedure needs to be handed out in order. Never split to hit a number. The measured estate (n=289, 2026-08-12): median 1,077 words, p90 1,867, only 6 skills above 2,500 and 4 above 3,000 — a skill at 1,500 words is ordinary, and the load-bearing part stays in the body even when that leaves the file long.
A references/ split does not change the gates that already apply: a
token_budget_class: rich skill still meets its 3,500-token ceiling on the
body alone.
references/. It stays one level deep: a reference file links no sibling
reference of its own skill, so the head reaches every one.
lint_skill_link_reach holds today's sibling links as a shrink-only ratchet.requires_skills is co-availability — the named skill ships wherever this
one does. It states no order.SKILL.md that names only files of the same skill.This skill is a router head. The decision layer above — what goes where, the
critical test, the namespace note, the size and progressive-disclosure hints —
is true across every mode and stays here, as do the Frugality Standards below.
The procedure body and the section-pattern catalogue live in references/; load
the one the task calls for.
| Task | Mode body | Covers |
|---|---|---|
| Author a new skill, or rewrite one end to end | references/procedure.md | Steps 0 → 7: inspect + Drafting Protocol, skill-growth gate, trigger definition, pushy description, trigger-eval stub, procedure, validation, safe/unsafe example, output format, quality checklist, eval loop |
| Pick or write an optional / required section pattern | references/section-patterns.md | Description-optimizer loop, self-QA loop, known-pitfalls, rationalizations-to-reject, non-negotiable-deliverable, destructive-operation gates, upstream-version-notes, security-constraints, action-reference split, mechanism-teaching, illustrative-not-verbatim, headline metric, contrastive-example |
| Ship a script inside a skill | references/read-only-scripts.md | The read-only-by-default rule and its allowlist, whose violation fails the build |
references/procedure.md and follow steps 0 → 7
in order. The steps are sequenced, not a menu.references/section-patterns.md and use
the one pattern that matches; the catalogue is not a checklist to satisfy.references/procedure.md § 6, the Frugality
Standards below, and ./scripts-run src/scripts/skill_linter at 0 FAIL.../../docs/guidelines/<group>/<name>.md,
../../docs/contracts/<name>.md). The condense-time rewriter
resolves them to depth-aware single-up form — do not pre-rewrite in
source.load_context: / load_context_eager:;
those frontmatter keys are rule-only. If a skill needs to point at a
context, link to it inline ([context-name](../../contexts/<area>/<file>.md))..agent-src.uncondensed/ in any skill body link or
example — it ships into .augment/skills/ and breaks consumer
resolution. See rule-writing § 3b for the canonical reference.Skills may declare an execution frontmatter block (type, handler,
timeout_seconds, safety_mode, allowed_tools). Default is manual
(instructional only). See docs/guidelines/agent-infra/runtime-layer.md for
the full specification and assisted / automated semantics.
project-analysis-* skillOnly if the framework has its own lifecycle producing unique debugging
patterns that project-analysis-core cannot explain (e.g. Laravel,
Symfony, Express, React, Next.js). Not for Tailwind, CSS frameworks,
utility libs, or simple state managers.
### sub-headings./scripts-run src/scripts/skill_linter before saving — 0 FAIL requiredApply the Frugality Charter to every skill you author.
Examples in this artifact:
## Procedure
opens with the action ("Run the linter"), not "Let me walk you
through…".## Status / ## Summary block.Scope-exclusion clause. A skill can shed assumed-knowledge prose without
losing correctness by naming what it does NOT cover: "this skill covers only
<X>; standard <Y> is assumed". One sentence replaces the paragraph that
would otherwise re-teach <Y>, and it is stronger than silence — a reader who
does not have <Y> learns that from the clause instead of from a wrong result.
Pre-save self-check:
The thirteen optional and required section patterns moved verbatim to
references/section-patterns.md. Two of them
are marked required for a named population — security-constraints for
script-bearing skills, and the action-reference split for safety_mode: strict
skills — so a skill in either population reads that file rather than skipping it.
The read-only-by-default script rule moved to
references/read-only-scripts.md.
docs/guidelines/agent-infra/size-and-scope.md)Workflow sequencing, preconditions, ID/output provenance ("copy ids verbatim,
never from memory"), a mandatory "why" intent field, and turn-end contracts
belong INSIDE this artifact's description/frontmatter — where they fire at the
decision point — not in always-on prose. See
tool-description-as-policy.
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
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'.
The English summary is being prepared. Showing the original description.
Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.
The English summary is being prepared. Showing the original description.
Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.
The English summary is being prepared. Showing the original description.
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.
The English summary is being prepared. Showing the original description.
Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.
The English summary is being prepared. Showing the original description.
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.
The English summary is being prepared. Showing the original description.