Design effective Claude Code skills with optimal descriptions, progressive disclosure, and error prevention patterns. Covers freedom levels, token efficiency, and quality standards. Use when: creating new skills, improving skill descriptions, optimizing token usage, structuring skill content, or debugging why skills aren't being discovered.
View on GitHubSelect agents to install to:
npx add-skill https://github.com/jezweb/claude-skills/blob/main/skills/skill-creator/SKILL.md -a claude-code --skill skill-creatorInstallation paths:
.claude/skills/skill-creator/# Skill Creator **Status**: Production Ready **Last Updated**: 2026-01-09 **Dependencies**: None **Reference**: [Anthropic's skill-creator](https://github.com/anthropics/skills/tree/main/skill-creator) --- ## Quick Start **To scaffold a new skill**, use the `/create-skill` command: ``` /create-skill my-new-skill ``` **To design an effective skill**, continue reading this guide. --- ## Core Principles ### 1. The Context Window is a Public Good Every token in your skill competes with conversation context. Be ruthlessly concise. **Ask for each paragraph:** - Does Claude genuinely need this? - Could this be in `references/` instead of main SKILL.md? - Is this duplicating information Claude already knows? ### 2. Progressive Disclosure Load information in layers: | Layer | When Loaded | Target Size | Content | |-------|-------------|-------------|---------| | **Metadata** | Always | 40-55 tokens | name + description | | **SKILL.md** | When triggered | <5k words | Instructions, patterns | | **Resources** | As needed | Variable | scripts/, references/, assets/ | ### 3. Freedom Levels Match instruction specificity to error probability: **High Freedom** (text instructions) - For flexible approaches where multiple solutions work - Example: "Structure components for reusability" **Medium Freedom** (pseudocode/patterns) - For preferred patterns with some flexibility - Example: Show a pattern with `[CUSTOMIZE]` placeholders **Low Freedom** (specific scripts/templates) - For fragile operations where exact steps matter - Example: Exact wrangler.jsonc configuration for D1 binding --- ## Writing Effective Descriptions The description is **the most critical part** - it determines if your skill gets discovered. ### Target: 250-350 Characters ```yaml # Too short (loses context): description: "A skill for Tailwind" # ❌ 25 chars # Too long (wastes tokens): description: "This comprehensive skill provides detailed knowledge..." # ❌ 500+ chars # Just right: descrip