What is a Skill?
A Skill is a reusable set of instructions and procedures (checklists, multi-step workflows, specialized behaviors) that extend what Claude knows how to do. They follow the open Agent Skills standard plus Claude Code extensions.
Claude loads a Skill automatically when it's relevant (based on its description), or you invoke it manually with /skill-name. It can include auxiliary files: scripts, templates, reference documents.
Structure of a Skill
A Skill is a folder with a SKILL.md file inside. That file has two parts: YAML frontmatter (metadata) and a Markdown body (the instructions).
.claude/skills/
└── deploy/
├── SKILL.md ← instructions + metadata
├── checklist.md ← auxiliary file (optional)
└── scripts/
└── deploy.sh ← auxiliary script (optional)SKILL.md example
--- name: deploy description: Deploy the application to production. Use it when the user asks to "upload", "deploy", or "push to production". disable-model-invocation: true argument-hint: "[environment]" --- Deploy the application to the $ARGUMENTS environment following these steps: 1. Run the tests. If they fail, stop and report back. 2. Check that the branch is 'main' and up to date. 3. Run the production build. 4. Launch the deploy with the scripts/deploy.sh script. 5. Verify the site responds and summarize the result.
Frontmatter fields
Where they are stored
- Personal (all your projects): ~/.claude/skills/<name>/SKILL.md
- Project (recommended, versionable): .claude/skills/<name>/SKILL.md
- Via plugin: inside the plugin, with a namespaced name like /plugin:skill
- Monorepos: in subdirectories, qualified as /apps/web:deploy
How to invoke a Skill
Manually
# No arguments /deploy # With arguments (passed as $ARGUMENTS) /deploy production
Automatically
If you don't set disable-model-invocation: true, Claude will activate the skill on its own when your request matches its description. That's why the description is so important: write it with when it should be used in mind.
Create your first Skill (without knowing how)
Let Claude Code create it for you:
Included official Skills
Claude Code comes with ready-to-use skills. Some you'll see available:
- /code-review — code review of the current diff.
- /security-review — security review of your changes.
- /init — generates your project's CLAUDE.md.
There is also a skill-creator plugin that helps you create, iterate on, and evaluate your own skills.
Live editing
You can edit a SKILL.md while Claude Code is open and the changes take effect immediately, without restarting. Ideal for refining a skill while you test it.