Skip to content

Using Skills

Skills are folders containing a SKILL.md file with instructions Claude loads dynamically. Unlike prompts, skills are meta-tools that inject domain-specific knowledge into Claude's context when relevant.


How Skills Work

Skills use progressive disclosure: Claude sees skill descriptions in its system prompt, decides which are relevant, and only loads the full instructions when needed — preserving context window for actual work.

Invocation Methods

Method Example
Automatic Claude decides based on the skill description
Explicit /skill-name or "Use the code-review skill"
Disabled auto Set disable-model-invocation: true in frontmatter
Hidden Set user-invocable: false — background knowledge only, not in / menu

Official Anthropic Skills

These are production-ready and available to paid plans:

Skill Purpose Trigger
docx Word document creation/editing "Create a Word document..."
pdf PDF creation, form filling, extraction "Fill out this PDF form..."
pptx PowerPoint presentations "Create a presentation..."
xlsx Excel spreadsheets "Create a spreadsheet..."
skill-creator Meta-skill for building skills "Help me create a skill for..."

Install via:

/plugin install document-skills@anthropic-agent-skills

For the Sartiq team plugins, see the Marketplace Overview.


Listing Available Skills

/skills

This shows all skills from:

  • Personal skills (~/.claude/skills/)
  • Project skills (.claude/skills/)
  • Plugin-provided skills

Skill Storage Locations

Location Scope Git Status
~/.claude/skills/ Personal (all projects) Not committed
.claude/skills/ Project (team-shared) Committed
Plugin-provided From installed plugins Managed by plugin

Team recommendation: Put shared skills in .claude/skills/ and commit to git.


Triggering Skills

Automatic Triggering

If a skill's description matches your request, Claude loads it automatically:

Review this code for issues

If a code-review skill exists with a matching description, Claude will load and follow it.

Explicit Triggering

/code-review

Or:

Use the code-review skill to check the changes in src/auth/router.py

Dynamic Context Injection

Skills can inject dynamic context using the `!command` syntax in SKILL.md:

## Current Branch
`!git branch --show-current`

## Recent Changes
`!git log --oneline -5`

Commands prefixed with ! are executed when the skill loads, injecting their output into the skill's context. This lets skills adapt to the current project state.


Custom Commands Are Now Skills

The .claude/commands/ directory is deprecated. Custom commands have been merged into the skills system. Migrate existing commands by converting them to SKILL.md format in .claude/skills/.

For the full reference, see official docs.


Debugging Skills

If a skill doesn't activate:

  1. Check the description has clear trigger phrases
  2. Ensure no frontmatter syntax errors (YAML)
  3. Verify the skill appears in /skills
  4. Try explicit invocation to confirm it works
  5. Add the skill to CLAUDE.md as a backup reference