SKILL.md
SKILL.md is a file format for packaging a reusable capability — instructions, and optionally supporting scripts or resources — that an agent can load when a matching task comes up.
An agent that's good at many things still benefits from not having every possible instruction loaded into context at once. SKILL.md addresses this by packaging a specific capability — say, how to fill out a particular kind of form, or how to work with a specific file format — as a discrete unit the agent loads only when it's relevant.
It's Anthropic's format for Claude Skills: a file with YAML frontmatter (typically a name and a description that also serves as the trigger condition — what kind of request should cause this skill to load) followed by the actual instructions in the body. The description matters more than it might look, since it's what the agent matches against to decide whether a given skill is relevant to the current task.
A skill can be just the SKILL.md file itself for something simple, or it can bundle supporting scripts, templates, or reference material alongside it for something more involved. Either way, the point is the same: keep specialized instructions out of the agent's default context, and load them only when the task actually calls for them.
Example
---
name: pdf-form-filler
description: Fill out a PDF form's fields from provided values. Use when the user asks to fill in, complete, or populate a PDF form.
---
When filling a PDF form, first list all fillable fields before entering
any values, and confirm field names with the user if a label is ambiguous.Common misconceptions
FAQ
What is SKILL.md used for?
What goes in a SKILL.md's frontmatter?
Can a skill include more than one file?
Last checked: 2026-08-28