How to Create Skills
A custom skill is a single Markdown file — SKILL.md — that teaches Claude a repeatable workflow. Write it once, and Claude applies it consistently every time the skill is triggered.
The SKILL.md file
Every custom skill is a directory containing one required file: SKILL.md. It has two parts — a YAML frontmatter block that Claude reads at startup, and a Markdown body that Claude reads only when the skill is triggered. This two-part design means dozens of skills can be installed without bloating the context window.
Annotated anatomy of a SKILL.md file — hover over the three panels on the right to see what each level loads.
Frontmatter field rules
| Field | Limit | Guidance |
|---|---|---|
| name | max 64 chars | Lowercase letters, numbers, hyphens only. No reserved words ("anthropic", "claude"). |
| description | max 1024 chars | Describe what the skill does AND when Claude should activate it. Be specific — vague descriptions cause missed triggers. |
Creating a skill: step by step
Blank template
Copy this and fill in the placeholders. The frontmatter is the only required part — the body sections are a recommended structure, not a strict requirement.
Working example: meeting-notes-formatter
A complete, ready-to-use skill. Drop it into a folder called meeting-notes-formatter/ and it works immediately. Notice how the description tells Claude both what the skill does and exactly which user requests should activate it.
Where to save your skill
- Create the folder: ~/.claude/skills/meeting-notes-formatter/
- Save SKILL.md inside that folder
- Claude discovers it automatically — no restart needed
- Zip the skill folder: meeting-notes-formatter.zip
- Open claude.ai/customize/skills
- Click '+ Upload .zip' and select the file
Skill folder structure
The structure below mirrors the real Anthropic skill-creator skill directory (from the screenshot). Only SKILL.md is required. All subfolders are optional — add them as your skill grows:
agents/Sub-agent SKILL.md files for multi-step workflowsassets/Images, icons, data files referenced in instructionseval-viewer/Tooling to run and view skill evaluationsreferences/Additional .md files with API docs, schemas, examplesscripts/Executable Python/shell helpers Claude runs via bashLICENSE.txtInclude if distributing your skill publiclyHow it looks in Claude.ai after upload
Mockup of the claude.ai/customize/skills panel with a custom skill installed.
description. Include the specific words a user would naturally type — "meeting notes", "transcript", "format my notes" — so Claude's auto-detection has clear signals to match against.What's Next
Creation basics done. Next: building a complete skill folder from scratch — SKILL.md, supporting files, and a test run.