Skip to main content

Creating Skills Overview

Skills are folders of instructions, scripts, and resources that Claude loads dynamically to improve performance on specialized tasks. Skills teach Claude how to complete specific tasks in a repeatable way, whether that’s creating documents with your company’s brand guidelines, analyzing data using your organization’s specific workflows, or automating personal tasks.

What is a Skill?

A skill is a self-contained folder containing:
  • SKILL.md - The main file with YAML frontmatter and markdown instructions
  • Bundled resources (optional) - Scripts, reference documents, and assets
Skills use a progressive disclosure loading system:
  1. Metadata (name + description) - Always in context (~100 words)
  2. SKILL.md body - Loaded when skill triggers (<500 lines ideal)
  3. Bundled resources - Loaded as needed (unlimited size)
The description field in your skill’s frontmatter is the primary mechanism that determines whether Claude invokes your skill. Make it comprehensive and include both what the skill does AND specific contexts for when to use it.

Why Create Skills?

Skills are valuable when you need to:
  • Codify workflows: Capture multi-step processes that you perform repeatedly
  • Enforce standards: Apply company branding, formatting, or quality guidelines
  • Share expertise: Package domain knowledge for others to use
  • Improve consistency: Ensure tasks are performed the same way every time
  • Save time: Avoid re-explaining complex processes in every conversation

Skill Creation Process

1

Capture Intent

Define what the skill should enable Claude to do, when it should trigger, and what output format is expected.
2

Research & Interview

Ask questions about edge cases, input/output formats, example files, success criteria, and dependencies.
3

Write SKILL.md

Create the skill file with frontmatter (name, description) and markdown instructions.
4

Test & Iterate

Run test cases, gather feedback, and refine the skill based on real usage.
5

Package & Share

Package the skill as a .skill file for easy distribution and installation.

Minimum Viable Skill

The simplest skill requires only a SKILL.md file with two frontmatter fields:
---
name: my-skill-name
description: A clear description of what this skill does and when to use it
---

# My Skill Name

[Add your instructions here that Claude will follow when this skill is active]

## Examples
- Example usage 1
- Example usage 2

## Guidelines
- Guideline 1
- Guideline 2
Start simple! Many effective skills are just 20-50 lines of instructions. You can always add bundled resources later as needs emerge.

When to Bundle Resources

Consider adding bundled resources when:
  • Scripts - You need deterministic operations or the same helper code appears across multiple test runs
  • References - You have extensive documentation (>300 lines) that shouldn’t always be in context
  • Assets - You need templates, icons, fonts, or other files to include in outputs
See Bundled Resources for detailed guidance.

Real-World Examples

Explore skills in Anthropic’s repository to see different patterns:

skill-creator

Create new skills and iteratively improve them with evaluations and benchmarking

mcp-builder

Guide for creating high-quality MCP servers with comprehensive reference docs

brand-guidelines

Apply corporate brand colors and typography to documents and presentations

docx

Create, read, edit, and manipulate Word documents with advanced formatting

Next Steps

Skill Structure

Learn the anatomy of a skill and how files are organized

Frontmatter

Understand YAML frontmatter fields and metadata

Best Practices

Guidelines for writing effective, maintainable skills

Bundled Resources

Package scripts, references, and assets with your skill

Build docs developers (and LLMs) love