| name | Create Claude Skill |
| description | Create new Claude skills following Anthropic best practices. Use when building specialized agent capabilities, packaging procedural knowledge, or extending Claude's domain expertise. |
Create Claude Skill
You are an expert at creating Claude Agent Skills - organized folders of instructions, scripts, and resources that agents can discover and load dynamically.
Your task: Help users create well-structured skills that follow Anthropic's best practices for progressive disclosure, composability, and maintainability.
What Are Skills?
Skills extend Claude's capabilities by packaging expertise into composable resources. Think of building a skill like creating an onboarding guide for a new hire - it captures procedural knowledge and organizational context that makes Claude effective at specific tasks.
Core Principle: Progressive Disclosure
Skills use progressive disclosure to load information only as needed:
Level 1: name + description (loaded at startup for all skills)
↓
Level 2: SKILL.md body (loaded when skill is triggered)
↓
Level 3+: Referenced files (loaded only when needed)
This design allows unbounded context to be bundled into a skill while keeping the active context lean.
When to Create a Skill
Create a skill when:
- Claude struggles with specific tasks that require procedural knowledge
- You have domain expertise to capture in reusable form
- A workflow involves multiple steps that benefit from guidance
- You want to share specialized capabilities with others
Skill Anatomy
A skill is a directory containing a SKILL.md file:
.claude/skills/your-skill/
├── SKILL.md # Required: Main entry point with YAML frontmatter
├── reference.md # Optional: Deeper technical details
├── patterns.md # Optional: Common patterns and examples
├── examples/ # Optional: Example files
│ └── example1.md
├── templates/ # Optional: Starter templates
│ └── template.md
└── scripts/ # Optional: Executable code
└── helper.js
SKILL.md Requirements
Every SKILL.md MUST start with YAML frontmatter:
---
name: Your Skill Name
description: Brief description for Claude to decide when to trigger this skill. Be specific about trigger phrases and use cases.
---
Creating a New Skill
Step 1: Identify the Gap
Before creating a skill, identify:
- What task does Claude struggle with? Run Claude on representative tasks and observe failures
- What knowledge would help? Procedural steps, patterns, examples, or code
- When should this skill activate? Define clear trigger conditions
Step 2: Plan the Structure
Read the detailed anatomy guide:
Read: .claude/skills/create-claude-skill/anatomy.md
Step 3: Write the SKILL.md
Start with the template:
Read: .claude/skills/create-claude-skill/templates/SKILL-template.md
Key principles:
- Name: Short, descriptive, hyphenated lowercase
- Description: Specific trigger phrases and use cases (Claude uses this to decide relevance)
- Body: Core instructions that apply to ALL uses of this skill
- References: Link to additional files for specific scenarios
Step 4: Add Supporting Files (If Needed)
Split content into separate files when:
- SKILL.md becomes unwieldy (>200 lines)
- Contexts are mutually exclusive or rarely used together
- Code should be executable vs. read as documentation
Step 5: Register the Skill
Add to .claude/settings.local.json:
{
"permissions": {
"allow": [
"Skill(your-skill-name)"
]
}
}
Step 6: Test and Iterate
# Test the skill
/skill your-skill-name
# Or invoke naturally
"Use the your-skill-name skill to help me..."
Best Practices
For detailed development and evaluation practices:
Read: .claude/skills/create-claude-skill/best-practices.md
Key guidelines:
- Start with evaluation - Build skills to address observed gaps
- Structure for scale - Use progressive disclosure
- Think from Claude's perspective - Monitor how Claude uses the skill
- Iterate with Claude - Ask Claude to capture successful approaches
Examples
See example skill structures:
Read: .claude/skills/create-claude-skill/examples/
Security Considerations
Skills provide Claude with new capabilities through instructions and code. This means malicious skills could introduce vulnerabilities.
Recommendations:
- Install skills only from trusted sources
- Audit skills thoroughly before use
- Review code dependencies and bundled resources
- Be cautious of instructions to connect to external network sources
Quick Reference
| Element | Purpose |
|---|---|
SKILL.md |
Required entry point with name/description |
| YAML frontmatter | Metadata loaded at startup |
| Body content | Instructions loaded when triggered |
| Referenced files | Deeper context loaded on demand |
scripts/ |
Executable code for Claude to run |
templates/ |
Starter files for users |
examples/ |
Reference implementations |
BEGIN
When a user asks to create a skill:
- Understand the need: What capability gap are they addressing?
- Plan the structure: What files and references are needed?
- Create the skill folder:
mkdir .claude/skills/skill-name - Write SKILL.md: Start with the template, customize for their needs
- Add supporting files: Only as needed for progressive disclosure
- Register and test: Add to settings, verify it works
Use the Read tool to access templates and examples as needed.