How to Set Up Skills in Claude Code [Complete Beginner's Guide]
Want to use skills in Claude Code but unsure where to put files or how to invoke them?
This article walks through setting up and using skills in Claude Code, written for beginners.
Prerequisites
Make sure Claude Code is installed. If not, install it with:
npm install -g @anthropic-ai/claude-code
Requires Node.js 18 or higher.
Where to Place Skills
Skills can go in two locations, depending on your use case.
Project-Specific Skills
your-project/
└── .claude/
└── skills/
└── my-skill/
└── SKILL.md
Active only in this project. Use for project-specific workflows and rules.
Global Skills
~/.claude/
└── skills/
└── my-skill/
└── SKILL.md
Active in all projects. Use for general-purpose skills like code review or documentation.
How to Install Skills
Method 1: Manual Download
- Find a skill on the Skills list
- Download the SKILL.md file from the GitHub repository
- Copy to the appropriate location above
Method 2: Command Installation
Use this command within Claude Code:
/install-skill https://github.com/owner/repo
Automatically downloads and places skills from the repository.
Method 3: Git Clone
cd ~/.claude/skills/
git clone https://github.com/owner/skill-repo my-skill
Advantage: easily update with git pull when changes are available.
SKILL.md Structure
The skill's core is the SKILL.md file. Understanding its structure helps with troubleshooting and creating your own.
---
name: code-review
description: Review pull request code changes
---
## Steps
1. Check changed files
2. Evaluate code quality, security, and performance
3. Point out issues with specific suggestions
Frontmatter (Required)
The section between --- markers is the frontmatter.
- name: Skill name. Becomes the slash command (
/code-review) - description: Skill description. Claude uses this to decide when to apply the skill
Body (Required)
Below the frontmatter, write instructions in Markdown. Claude follows this content when executing tasks.
How to Invoke Skills
Method 1: Slash Command
Use the skill name as a slash command:
/code-review
This is the most direct invocation method.
Method 2: Natural Language
Claude reads skill descriptions and automatically applies relevant skills when you request related tasks:
Review the code in this PR
If the description says "Review pull request code changes," Claude automatically uses the code-review skill.
Method 3: Explicit Specification
To explicitly use a skill instead of auto-application:
Use /skill code-review to review this
Common Issues and Solutions
Skill Not Recognized
Check these:
- Is the directory structure correct (
skills/skill-name/SKILL.md)? - Is the frontmatter
nameproperly set? - Is the file encoding UTF-8?
Skill Not Auto-Applied
The description may not relate to the task. Since Claude uses the description as keywords for skill selection, write it specifically.
Improvement example:
# ❌ Vague
description: Check code
# ⭕ Specific
description: Review pull request changes for security, performance, and maintainability
Multiple Skills Conflicting
When multiple skills have similar descriptions, it's unclear which gets used. Set clear purposes for each skill and differentiate descriptions.
Managing Skills
List Installed Skills
/skills
Shows currently active skills.
Disable a Skill
To temporarily disable a skill, rename the SKILL.md file or move the directory elsewhere.
mv ~/.claude/skills/my-skill ~/.claude/skills/_disabled_my-skill
Next Steps
Once skills are set up, check out these articles:
Browse the Skills list to find skills that match your workflow.
Related Articles
- What Are Agent Skills? - Understand the basics
- How to Use Skills with Codex CLI - For other tools
- How to Use Skills with Cursor - For IDE users
- Troubleshooting Agent Skills - When things don't work