Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Agent Skill design knowledge base — mechanisms, philosophy, patterns, pitfalls. Use when: designing new skills, reviewing skill quality, or deciding whether something should be a skill.
.claude/skills/majiayu000-agentskill-expertise/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 107% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 257% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 240% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 243% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 107% | 0% |
The complete knowledge system for Agent Skills. Not a how-to guide (that's what official docs are for) — this focuses on three things: why Skills are designed the way they are, what good design looks like, and where the common pitfalls are.
Any work involving Skills — creating, adjusting, reviewing, splitting, merging — should use this as the decision framework.
| Level | Understanding | What You Can Do | Common Issue | |-------|--------------|-----------------|--------------| | Surface | "Skills are a way to make AI remember instructions" | Write syntactically correct Skills | Treats Skills as fancy System Prompts | | Mechanical | "Skills implement Progressive Disclosure" | Understands trigger mechanism and load flow | Technically correct but poorly designed | | Essential | "Skills externalize knowledge into a format that AI can actively discover and load on demand" | Design Skills that actually work | — |
Level 1: metadata (name + description, ~100 tokens)
→ Present from session start, always in context
→ The only thing AI uses to decide whether to load a Skill
Level 2: SKILL.md full content (<5k tokens)
→ Loaded only when AI judges it relevant
Level 3+: references/, scripts/, assets/
→ Loaded only when more detail is needed| | Traditional Approach | Skill Architecture | |--|---------------------|-------------------| | When conversation starts | AI starts with an empty slate | AI has already loaded all Skill metadata | | What the user needs to do | Copy-paste every time / write "remember to read X" / stuff everything into CLAUDE.md | Nothing | | Principle | Not mentioned = not known | Before the conversation starts, AI is already prepared |
This is the fundamental difference — not what happens during the conversation, but that the state is already different before it begins.
<available_skills> block (shared across all Skills)Known bias: AI will err on the side of not triggering rather than over-triggering. A conservative description = a Skill that effectively doesn't exist.
> Anthropic skill-creator: > "Currently Claude has a tendency to 'undertrigger' skills — to not use them when they'd be useful. To combat this, please make the skill descriptions a little bit 'pushy'."
Writing principles:
> "Find the smallest set of high-signal tokens that maximize likelihood of desired outcome." > — Anthropic official > > "The biggest performance gains didn't come from adding complex RAG pipelines. The gains came from removing things." > — Manus team (100+ tools causes Context Confusion — AI hallucinates parameters or calls the wrong tool) > > "Keep the prompt lean. Remove things that aren't pulling their weight." > — Anthropic skill-creator
Conclusion: The design principle for Skills is lean, chunked, and loaded on demand. Every instruction should pull its weight — if it can't justify its existence, remove it.
| Approach | Example | Result | |----------|---------|--------| | Rule | "Don't use words like 'explosive' or 'shocking'" | AI finds another way to write it; the anxiety-inducing tone remains | | Principle | "I don't want the writing to feel anxious" | AI understands the why, automatically avoids all anxiety-inducing patterns | | Deeper | "Be straightforward and factual" (underlying value) | One value covers a wide range of rules |
> Anthropic skill-creator: > "Try hard to explain the why behind everything you're asking the model to do. Today's LLMs are smart. They have good theory of mind and when given a good harness can go beyond rote instructions and really make things happen... If you find yourself writing ALWAYS or NEVER in all caps, that's a yellow flag — reframe and explain the reasoning."
Instant diagnostic: Writing ALWAYS / NEVER in all caps? Stop. Step back and ask "what outcome do I want? Why?" Write the why instead of the imperative.
Diagnostic test: If your SKILL.md has 50+ specific rules, they can probably be distilled into a few principles.
Writing a long list of "remember to read X" and "remember to read Y" in CLAUDE.md means if you forget to write it, it won't be read — and CLAUDE.md keeps growing. Better approach: turn it into a Skill, let metadata pre-load naturally — AI automatically judges when it's needed and loads on demand.
Application: Any "remember to read X" need should be considered for conversion into Skill references.
When building an AI assistant, "how to behave" and "who it is" should be two independent Skills:
CLAUDE.md (lean, only the entry point)
└── "Before responding, invoke /agent-protocols"
.claude/skills/
├── agent-protocols/ ← how to behave (protocols)
│ ├── SKILL.md (description: "Required reading at session start...")
│ └── references/ (startup.md, memory.md, safety.md)
└── persona/ ← who it is (persona) ← can be copied wholesale to other projects
├── SKILL.md
└── references/ (soul.md, identity.md)Benefits: lean CLAUDE.md, portable persona, protocols and persona can be flexibly combined.
| Stage | Core Question | Right Approach | Common Mistake | |-------|--------------|----------------|----------------| | 1. Empathize | When does AI lose its way? | Start from "collaboration pain points" | Start from "what I want" | | 2. Define | What problem does this Skill solve? | Clear, measurable design goal | Vague wish | | 3. Ideate | How to write metadata and principles? | Generate 3+ options, then pick the best | Accept the first idea | | 4. Prototype | Does the MV Skill work? | Minimum viable version, test first then iterate | Perfectionism | | 5. Test | Found? Understood? Solved? | Validate all three design assumptions | Only ask "are there bugs?" |
A v1.0 only needs:
All three "yes" → success. Any "no" → iterate.
The Three Test Questions tell you what to ask. Comparative testing tells you how to test.
Method: Run the same task twice — with Skill vs without Skill, then compare.
| Dimension | What to Observe | |-----------|----------------| | Behavioral difference | How different is AI's behavior with vs without the Skill? Larger difference = higher Skill impact | | Quality difference | Is the output with the Skill actually better? Or just different? | | Trigger reliability | Run 2-3 times — does the Skill get loaded every time? |
When to use:
The Three Test Questions and comparative testing both focus on outputs. But Skill problems often hide in AI's working process.
> Anthropic skill-creator: > "Make sure to read the transcripts, not just the final outputs — if it looks like the skill is making the model waste a bunch of time doing things that are unproductive, you can try getting rid of the parts of the skill that are making it do that."
How to look: Observe AI's thinking process or working steps —
Core judgment: Correct output but bloated process = Skill has room to slim down.
> "Is this knowledge, method, or workflow something I want AI to always remember?" > If yes, it should be externalized as a Skill.
| Type | Examples | |------|---------| | Process planning | SOPs, customer service flows, review workflows | | Learning methods | Your personal learning approach, thinking frameworks | | Values and principles | Response style, decision frameworks, personal principles | | Knowledge systems | Book knowledge → callable consultant, project technical decisions | | Multi-Skill collaboration | Conversation close → auto-trigger memory update | | Project knowledge | Technical decisions, architecture choices, design standards |
| Type | Reason | Better Approach | |------|--------|----------------| | One-time instructions | No reuse value | Say it directly in conversation | | Rapidly changing information | Maintenance cost too high | Keep in conversation context or documents | | Very long content (>10k tokens) | Loading consumes too much context | Split into multiple Skills or put in references |
Every Skill typically goes through a similar evolution:
v1: Rule/case-driven
└── A list of rules, AI executes mechanically
│
Problem discovered: fails on new situations, or results feel "off"
│
v2: Principle/worldview-driven
└── Give core principles, AI judges for itself
│
Validated: AI can handle unforeseen situations
│
v3+: Continuous iteration
└── Fine-tune principles based on real usage, add edge casesEmpirical examples:
| Skill | v1 (rule-driven) | Problem | v2 (principle-driven) | |-------|-----------------|---------|----------------------| | Digital secretary | If A, do X; if B, do Y | Unwritten cases don't get handled | Core principles of a good secretary (proactive anticipation, let owner focus) | | Writing style | Don't use certain words, format headings this way | AI gets boxed in, output has no soul | Worldview-driven (I hate anxiety-inducing tone, be straightforward) | | AI assistant architecture | Everything stuffed into CLAUDE.md, 500+ lines | Keeps growing, forgotten entries don't get read | Protocol vs persona separation, two independent Skills |
| Misconception | Wrong Understanding | Correct Understanding | |--------------|--------------------|-----------------------| | Skill = advanced prompt | Just wrap a prompt in Skill format | Skills have metadata pre-loading; fundamentally different | | More rules = better | SKILL.md with 50+ rules is thorough | Principles replace rules; lean is more effective | | Description doesn't matter | It's just descriptive text | It's the only thing AI uses to decide whether to load | | More Skills = more powerful | Installing 100 Skills makes you strong | Tool overload causes AI hallucinations | | Copying templates is fine | Find someone else's and copy it | Their pain points aren't your pain points | | CLAUDE.md must be exhaustive | Write all guidance in CLAUDE.md | Passive loading > active guidance | | Skills are static | Write it once and done | Good Skills continuously evolve with use |
Use this checklist when designing new Skills or adjusting existing ones:
---)name field (the Skill's identifier)description field (Progressive Disclosure Level 1)> AI proactive update rule: When the following situations occur, AI should proactively propose updates.
| Situation | Update What | |-----------|------------| | Discovered new patterns or pitfalls while designing a Skill | references/design-patterns.md | | Discovered a new common misconception | "Common Misconceptions" section | | New findings on technical mechanisms (official updates, new research) | "Underlying Mechanisms" section | | Review checklist needs new items | "Skill Review Checklist" section | | New empirical examples for evolution patterns | "Skill Evolution Patterns" section |
| File | Contents | When to Read | |------|----------|-------------| | references/design-patterns.md | Design patterns (P1-P6) and anti-patterns (A1-A6) quick reference | When designing new Skills or during review | | references/skill-template.md | Creation template based on this Skill's principles | When building a new Skill from scratch |
Other measured skills in the registry, with their headline benchmark lift.