Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Creates and structures SKILL.md files for AI coding agents, including YAML frontmatter, trigger phrases, directive instructions, decision trees, code examples, and verification checklists. Use when the user asks to write a new skill, create a skill file, author agent capabilities, generate skill documentation, or define a skill template for Claude Code agents.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 77% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 59% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 385% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 74% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 50% | 0% |
You are authoring a SKILL.md for an AI coding agent. A well-written skill provides clear, actionable guidance that agents can follow consistently.
A skill's description triggers it; the body teaches it.
The description tells the agent WHEN to use the skill. The content tells the agent HOW to execute it.
markdown--- name: [lowercase-hyphenated-name] description: [Concrete actions + "Use when..." clause] version: [Semantic version] triggers: - [keyword 1] - [keyword 2] tags: - [tag 1] --- # [Skill Title] [Introduction paragraph explaining purpose] ## Core Principle **[Single most important rule in bold]** ## [Main Content Sections] ## [Decision Points] ## [Verification Checklist]
| Field | Required | Constraints | |-------|----------|-------------| | name | Yes | Lowercase alphanumeric + hyphens, 1–64 chars | | description | Yes | Must include "Use when..." clause; 1–1024 chars | | version | Yes | Semantic version (e.g. 1.0.0) | | triggers | Recommended | Natural-language phrases that activate the skill | | tags | Recommended | Categorization tags |
Triggers should be phrases users naturally type.
Good triggers:
Bad triggers:
Use second person, present tense, active voice:
| Strength | Examples | |----------|----------| | Strong (critical rules) | "You MUST…", "ALWAYS…", "NEVER…", "Do NOT…" | | Soft (recommendations) | "Prefer…", "Consider…", "When possible…" |
markdown## Decision: [What to Decide] If [condition A]: → [Action for A] If [condition B]: → [Action for B] If uncertain: → [Default action]
markdown### Step 1: [Action] [Detailed explanation] **Verification:** [How to know step is complete] ### Step 2: [Action] ...
typescript// BAD const result = doTheThing(badInput); // GOOD const validated = validate(input); const result = doTheThing(validated);
| Anti-pattern | Problem | Fix | |--------------|---------|-----| | The Encyclopedia | Too much info, agent gets lost | Focus on actionable guidance only | | The Vague Guide | "Consider best practices" | Be specific: "Use Arrange-Act-Assert" | | The Constraint-Free Skill | No clear rules, agent improvises | Include explicit constraints | | The Monologue | Wall of text | Use headers, lists, tables, code blocks | | The Outdated Skill | References deprecated patterns | Version skills and review periodically |
Before publishing, verify:
Group related skills under a named pack directory. See PACKS.md for full pack manifest format and filesystem conventions.
packs/
├── testing/
│ ├── pack.json
│ ├── red-green-refactor/
│ │ └── SKILL.md
│ └── test-patterns/
│ └── SKILL.mdSee MAINTENANCE.md for detailed versioning policy. Quick reference:
Version increments:
Deprecation frontmatter:
yamldeprecated: true deprecatedReason: "Superseded by skill-v2" deprecatedSince: "2024-01-15"
Add a visible notice at the top of the body: > **DEPRECATED:** Use [skill-v2] instead.
Before publishing, confirm:
Other measured skills in the registry, with their headline benchmark lift.