Create Skills
Build skills that trigger correctly, execute reliably, and stay concise.
Core Principles
-
Use progressive disclosure:
-
Frontmatter (name , description ) for trigger selection.
-
SKILL.md body for core workflow.
-
references/ for deep details loaded only when needed.
-
Keep skills composable: avoid assumptions that this is the only active skill.
-
Prefer deterministic scripts for fragile validation logic.
Workflow
-
Define 2-3 concrete use cases.
-
Draft trigger-strong frontmatter.
-
Design reusable resources (scripts/ , references/ , assets/ ).
-
Write actionable instructions and error handling.
-
Run triggering/functional/performance tests.
-
Iterate based on under-trigger/over-trigger signals.
- Define Use Cases
Capture for each use case:
-
User phrasing (what they actually say)
-
Intended result
-
Multi-step workflow and required tools (built-in and/or MCP)
-
Failure points that need guardrails
If use cases are vague, ask targeted follow-up questions before authoring.
- Frontmatter Design (Most Important)
Write only what is needed to trigger correctly.
Required fields:
-
name : kebab-case, matches folder name
-
description : include BOTH
-
What the skill does
-
When to use it (trigger phrases/context/file types)
Description formula:
- [What it does] + [When to use it] + [Key capabilities]
Good pattern:
- "Processes PDF legal documents for contract review. Use when users ask for clause extraction, risk flags, or redline summaries from .pdf contracts."
Bad pattern:
- "Helps with projects."
Precision controls:
-
Add negative triggers to reduce over-triggering.
-
Mention relevant file types when applicable.
-
Keep wording aligned with real user phrases from use cases.
- Resource Plan
-
scripts/ : deterministic checks/transforms used repeatedly
-
references/ : large docs, domain logic, variant-specific guidance
-
assets/ : templates and artifacts used in outputs
Rules:
-
Keep SKILL.md compact; link to references/ .
-
Avoid extra docs in skill folder (README.md , changelog, etc.).
- Instruction Writing
Write imperative, testable steps.
Include:
-
Clear step order and dependencies
-
Validation checkpoints
-
Common errors with concrete fixes
-
Example user inputs and expected outputs
For critical checks, prefer scripts over prose-only checks.
- Test Protocol
Run these three test groups.
A. Triggering Tests
-
Should trigger on obvious requests
-
Should trigger on paraphrased requests
-
Should NOT trigger on unrelated requests
Target benchmark:
- Trigger on ~90% of relevant prompts in a 10-20 prompt suite
B. Functional Tests
Validate:
-
Correct outputs
-
Tool/API call success
-
Error handling paths
-
Edge cases
C. Performance Comparison
Compare with vs without skill:
-
Number of clarification turns
-
Failed tool/API calls
-
Token usage
-
End-to-end completion quality
- Iteration Rules
Under-triggering signals:
-
Skill does not load when expected
-
Users keep manually invoking it
Fix:
- Add clearer trigger phrases and technical terms to description .
Over-triggering signals:
- Skill loads for unrelated requests
Fix:
- Add negative triggers and tighten scope language.
Execution issues:
- Inconsistent outputs, retries, user corrections
Fix:
- Tighten instructions, add explicit validations, and script critical checks.
Troubleshooting Quick Guide
-
Upload fails with missing SKILL.md : file must be exactly SKILL.md .
-
Invalid frontmatter: verify YAML delimiters --- and valid syntax.
-
Invalid skill name: use lowercase kebab-case.
-
Skill not followed: move critical instructions to top and make them concrete.
-
Slow behavior: move long content to references/ ; reduce enabled skills.
Scaffolding
Scaffold a new skill directory:
Use default path (.agents/skills)
bash scripts/new_skill.sh <skill-name>
Place in .claude/skills directory
bash scripts/new_skill.sh <skill-name> --path .claude/skills
References
-
references/checklist.md
-
references/prompt-templates.md
-
references/patterns.md
-
references/source.md : source PDF and extracted principles
-
references/trigger-examples.md : trigger/non-trigger examples for description tuning
-
references/failure-remedies.md : failure patterns and minimum effective fixes