How to Create Your First Claude Skill
Create your first Claude Skill in 15 minutes. This tutorial covers everything from folder structure to deployment.
Prerequisites
- Claude Pro/Max/Team/Enterprise account
- Basic programming knowledge
- Text editor
Step 1: Create Folder Structure
bash1my-first-skill/ 2├── SKILL.md 3├── scripts/ 4│ └── process.py 5└── resources/ 6 └── examples.md1my-first-skill/ 2├── SKILL.md 3├── scripts/ 4│ └── process.py 5└── resources/ 6 └── examples.md
Step 2: Write SKILL.md
Following the official format:
markdown1--- 2name: text-formatter 3description: Format and clean text content by removing extra whitespace, fixing capitalization, and correcting punctuation 4--- 5 6# Text Formatter 7 8When asked to format text: 91. Remove extra whitespace (replace multiple spaces with single space) 102. Fix capitalization (capitalize first letter of sentences) 113. Correct punctuation (ensure proper ending punctuation) 124. Return cleaned text 13 14## Examples 15 16**Input**: "hello world" 17**Output**: "Hello world." 18 19**Input**: "this is a test" 20**Output**: "This is a test." 21 22## Guidelines 23- Preserve intentional formatting (line breaks, paragraphs) 24- Don't change technical terms or proper nouns 25- Maintain original language and tone1--- 2name: text-formatter 3description: Format and clean text content by removing extra whitespace, fixing capitalization, and correcting punctuation 4--- 5 6# Text Formatter 7 8When asked to format text: 91. Remove extra whitespace (replace multiple spaces with single space) 102. Fix capitalization (capitalize first letter of sentences) 113. Correct punctuation (ensure proper ending punctuation) 124. Return cleaned text 13 14## Examples 15 16**Input**: "hello world" 17**Output**: "Hello world." 18 19**Input**: "this is a test" 20**Output**: "This is a test." 21 22## Guidelines 23- Preserve intentional formatting (line breaks, paragraphs) 24- Don't change technical terms or proper nouns 25- Maintain original language and tone
Step 3: Add Executable Script
python1# scripts/process.py 2def format_text(text): 3 # Remove extra whitespace 4 text = ' '.join(text.split()) 5 6 # Capitalize first letter 7 text = text.capitalize() 8 9 # Add period if missing 10 if not text.endswith(('.', '!', '?')): 11 text += '.' 12 13 return text1# scripts/process.py 2def format_text(text): 3 # Remove extra whitespace 4 text = ' '.join(text.split()) 5 6 # Capitalize first letter 7 text = text.capitalize() 8 9 # Add period if missing 10 if not text.endswith(('.', '!', '?')): 11 text += '.' 12 13 return text
Step 4: Test Your Skill
Load in Claude and test:
Please format this text: "hello world"
Claude should use your skill and return: "Hello world."
Step 5: Document Use Cases
Add to resources/examples.md:
markdown# Use Cases - Clean user input - Standardize content - Prepare text for processing# Use Cases - Clean user input - Standardize content - Prepare text for processing
Best Practices
- Clear Instructions: Be specific about execution steps
- Error Handling: Include what to do when tasks fail
- Examples: Provide input/output samples
- Dependencies: List all required packages
Next Steps
Reading Time: 3 minutes
Author: ClaudeSkills Team