Claude Code Skills Examples: Real SKILL.md Files to Copy
Real Claude Code skill examples: pdf, docx, xlsx, mcp-builder. See the SKILL.md anatomy, copy the structure, and ship your own agent skills.

Your Claude Code setup keeps making you repeat the same steps. The fix is a skill, and the best examples are all open source. Most write-ups either dump the full spec or just name winners. This is the version that shows real SKILL.md files and rebuilds one for a small-business job.
A Claude Code skill is a folder with a SKILL.md file. The file has YAML frontmatter (name, description) plus step-by-step instructions Claude loads only when relevant. Real examples: pdf extracts and fills PDF forms, while docx, pptx, and xlsx create real Office files. mcp-builder scaffolds MCP servers. summarize-changes reviews a git diff.
TL;DR
- A skill is a folder with a SKILL.md file that Claude loads when a task matches.
- Anthropic publishes 19 example skills, all open, from pdf to mcp-builder.
- Copy any example’s structure, then tune the description so it fires on the right job.
- Keep it to one skill, one job. A broad skill misfires more than it helps.
Where the good examples live
Three places hold real skills you can copy. The docs explain the format, the open repo ships 19 working examples, and one roundup field-tested 100 skills and ranked the winners.
| Source | What it gives you | Best for |
|---|---|---|
| Claude Code skills documentation | The full SKILL.md spec, storage paths, and the bundled skills | Learning how the format works |
| Anthropic’s open skills repository | 19 finished skills you can open and copy | Stealing a proven structure |
| The skills worth installing roundup | A ranked list with a five-axis scoring method | Picking what to try first |
What is a Claude Code skill?
A Claude Code skill is a folder with a SKILL.md file. The YAML frontmatter gives the skill a name and a description. The markdown body holds the steps. Claude reads the description first and loads the full body only when they match.
The skill pattern is a name, a description, and instructions, per the Claude Code skills documentation. The description earns the trigger. Claude uses a skill when it is relevant, or you call one directly with /skill-name.
The description controls when the skill fires. A broad one loads the skill on the wrong task. A tight one keeps it quiet until the job fits.
That load-on-demand behavior is the point. Progressive disclosure means Claude only reads what it needs, when it needs it, per the skills worth installing roundup. A skill can hold a 200-page playbook without burning tokens until the moment it matters.
What do real Claude Code skills look like?
Real skills are plain folders you can open and copy. Anthropic’s repo ships 19 of them. Each one is a SKILL.md plus a folder of supporting files. You can read every line, and you can copy any of them.
| Example skill | What it does | Source |
|---|---|---|
pdf |
Extracts text and fills PDF forms | Anthropic’s open skills repository |
docx, pptx, xlsx |
Create real Office files | Anthropic’s open skills repository |
mcp-builder |
Scaffolds MCP servers | Anthropic’s open skills repository |
webapp-testing |
Runs checks against a web app | Anthropic’s open skills repository |
brand-guidelines |
Enforces a brand’s voice and style | Anthropic’s open skills repository |
summarize-changes |
Reviews what changed in a git diff | Claude Code skills documentation |
A real SKILL.md stays short. Look at the frontmatter pattern from any example in the repo:
name: summarize-changes description: Review the changes in a git diff and summarize what each one does.
The body below it holds the steps Claude follows. Long reference detail goes in a separate reference.md file, so the description stays short and the trigger stays fast. That lean-SKILL.md pattern is what the skills worth installing roundup rewards on its token-economy axis.
An example skill is a short instruction file plus a folder of supporting files. Copy that shape and you are most of the way to your own.
How do you write a custom skill?
Create a folder named for the skill. Add a SKILL.md with YAML frontmatter and a markdown body. Put long reference detail in a separate reference.md file. Keep the description specific so Claude loads the skill only when the job matches.
I learned the description rule the hard way on my own pipeline. The first skill I wrote had a description that matched half my tasks, so Claude fired it on everything. I narrowed it to one job, and the misfires stopped. My rule now is one skill, one job.
Give the skill the tools it needs in the frontmatter. The allowed-tools field names what the skill may run, per the Claude Code skills documentation. Scripts live in a scripts/ subfolder, and the body points at them.
A vague description breaks auto-loading. Give each skill one job, and say that job in the description.
How do you install a skill?
Copy the skill folder into ~/.claude/skills for personal use, or .claude/skills inside a project. Claude picks it up automatically. For a whole library at once, register a plugin marketplace with /plugin marketplace add anthropics/skills.
Personal skills in ~/.claude/skills are available across all your projects, per the Claude Code skills documentation. Project skills live in .claude/skills and stay with that codebase. Either way, Claude loads them when relevant.
Custom commands have folded into this same system. A file at .claude/commands/deploy.md and a skill at .claude/skills/deploy/SKILL.md both create /deploy, per the Claude Code skills documentation. Your existing commands keep working, and skills just add the auto-load and the supporting-folder features.
To install an entire library, add the repo as a plugin marketplace. The command /plugin marketplace add anthropics/skills registers the repo so you can pull in any skill it ships, per Anthropic’s open skills repository.
You install one skill by copying its folder into the right path. You install a library by adding a plugin marketplace once.
Where do you find more skills to try?
Start with the 19 in Anthropic’s open repo. Read the roundup that tested 100 skills for field-tested picks. The docs list the bundled skills that ship with Claude Code. All three are free to copy.
The repo holds the Agent Skills open standard in its spec/ directory and a blank starter in template/, per Anthropic’s open skills repository. Claude Code follows that standard and extends it with features like invocation control and subagent execution, per the Claude Code skills documentation. Many of the example skills are Apache 2.0 licensed, so you can copy and adapt them freely.
Claude Code also ships its own bundled skills, like /doctor, /code-review, /batch, /debug, /loop, /verify, and /claude-api. You invoke one the same way as any other skill, per the Claude Code skills documentation.
The fastest path is to copy one finished example and change the description. That is how the starter set I’ve bundled on the skills page came together.

AutomateReal skills
Frequently asked questions
What is the SKILL.md format for Claude Code skills?
A SKILL.md file has two parts. YAML frontmatter between --- markers holds the name and the description. A markdown body holds the steps Claude follows when the skill runs.
How is a skill different from a prompt or a slash command?
A prompt is a one-off instruction you paste. A slash command runs a stored procedure. A skill is a folder with a description, so Claude can load it on its own when a task matches. Custom commands have merged into skills and behave the same way now.
Where are Claude Code skills stored on disk?
Personal skills live in ~/.claude/skills. Project skills live in .claude/skills inside the project folder. Put a skill in either place and Claude picks it up.
Do skills work with Claude Code subagents?
Yes. Skills run in subagent contexts just as they do in the main session. A preloaded skill injects its full content into the subagent at startup.
How do I write a skill that calls a tool or a script?
Name the permitted tools in the allowed-tools frontmatter field. Put scripts in a scripts/ subfolder. Then the skill body tells Claude when and how to run them.
Start with one skill
Copy one example, change the description, and ship it. That is the whole method. You will learn more from one working skill than from reading the spec twice.
If you want help wiring your first skill into a live workflow, a discovery call maps it in about thirty minutes. Or browse the skills bundle to see the starter set I already shipped. The AI services page is there if you want a managed agent built for you.

AutomateReal services