How to Add Skills to Claude Code: Install, Use and Manage Them
You add skills to Claude Code by placing a skill folder in a skills directory. Use ~/.claude/skills/ for every project or .claude/skills/ for one repository. Plugin skills arrive through /plugin install, and skills on your Claude account sync in when you sign in. Each step below follows Anthropic's Claude Code docs, checked on 2026-10-21.
Which skills earn a place in that folder is a separate question. Our hub lists the best Claude Code skills, ranked by verdict, with each safety grade beside the score.
How do you add skills to Claude Code?
You add skills to Claude Code by placing a skill folder in a skills directory. Use ~/.claude/skills/ for every project or .claude/skills/ for one repository. Plugin skills install with /plugin install instead.
Pick the route that matches where the skill comes from:
| Route | When | Command | Scope |
|---|---|---|---|
| Skill folder | You have the files, or you wrote them | Copy <name>/SKILL.md into a skills directory |
Personal or project1 |
| Plugin marketplace | The skill ships inside a plugin | /plugin install <plugin>@<marketplace> |
User, project or local2 |
| GitHub marketplace repo | The repository is a plugin marketplace | /plugin marketplace add owner/repo |
Set at plugin install2 |
| Community CLI | The README offers it | npx skills add <owner/repo> |
Set by the tool; not in Anthropic's docs |
The folder route is the simplest. It needs no plugin, no marketplace and no network call. The plugin route suits skills that ship with hooks, agents or MCP servers. A plugin installs them together and updates them as one unit. The GitHub route depends on the repository's layout. A repository with a marketplace file works with /plugin, and a plain folder of skills works with a copy.
~/.claude/skills/<name>/SKILL.md # personal: every project on this machine
.claude/skills/<name>/SKILL.md # project: this repository only
/skills # check: lists every skill the session loaded
Add a skill folder (personal or project)
- Create
~/.claude/skills/<skill-name>/for personal use, or.claude/skills/<skill-name>/inside a repository. - Save the skill's SKILL.md file in that folder, with any supporting files beside it.
- Ask a question that matches the description, or type
/<skill-name>1.
Claude Code watches these directories, so a new skill appears without a restart1. A skill folder can be a symlink to a directory elsewhere on disk1. On Windows, the personal folder sits at C:/Users/<user>/.claude/skills.
Install skills from a plugin marketplace
A plugin is a package that bundles skills with other Claude Code extensions. /plugin install <plugin>@<marketplace> opens the plugin's details, so you review it and pick a scope2. Claude Code adds Anthropic's official marketplace, claude-plugins-official, on your first interactive terminal session2.
/plugin install skill-creator@claude-plugins-official # inside a session
claude plugin install <name>@<marketplace> --scope project # from your shell
The shell form installs at user scope by default. Pass --scope project or --scope local to change it2. User scope covers every project on this machine. Project scope covers everyone in the repository, and local scope covers only you there2. Plugin skills run under a namespace, as /plugin-name:skill-name1. The namespace keeps two plugins with a review skill from clashing. Open /plugin and its Installed tab to see what each plugin added2.
Install a skill from GitHub, and check it first
A GitHub repository that is a marketplace adds with /plugin marketplace add owner/repo2. Append #ref to pin a branch or tag2. Its plugins then install with /plugin install.
A repository that holds only skill folders takes two steps. Clone it, then copy or symlink the skill folder into a skills directory. That route follows from Anthropic's location and symlink rules1.
git clone https://github.com/owner/repo.git ~/src/repo
ln -s ~/src/repo/skills/my-skill ~/.claude/skills/my-skill
The community Skills CLI, npx skills add <owner/repo>, appears on chrislema.com and welcomedeveloper.com. Anthropic's Claude Code docs do not document it (checked 2026-10-21).
Read a repository skill before you enable it. Anthropic's Help Center says to review a skill before enabling it, and to treat it like installing software3. Project skills keep their allowed-tools grants even when claude -p runs in an untrusted folder1. Our checklist shows how to check a skill before you install it. Community scanners such as the Bitdefender AI Skills Checker and NVIDIA SkillSpector exist; we have not reviewed them.
What are skills in Claude Code?
Skills in Claude Code are folders with a SKILL.md file that Claude loads when a request matches the description. You can run one directly with /skill-name. Claude Code follows the Agent Skills open standard.
| Fact | Value |
|---|---|
| Format | A folder with SKILL.md: YAML frontmatter plus Markdown instructions1 |
| Trigger | Automatic from the description, or manual with /skill-name1 |
| Context cost | Description always in context; the body loads on use1 |
| Standard | Agent Skills open standard1 |
Custom commands merged into skills. A file at .claude/commands/deploy.md and a skill at .claude/skills/deploy/SKILL.md both create /deploy1. Skills add supporting files, invocation control and automatic loading on top. Anthropic's Academy lesson separates the three tools by job. CLAUDE.md holds standing project context, while skills hold task instructions that load on demand4.
A skill folder holds one required file and any helpers. SKILL.md carries YAML frontmatter at the top and Markdown instructions below it. Supporting files sit beside it: scripts, reference notes, templates or examples. Claude reads those helpers only when the instructions point to them. That design keeps a large skill cheap until the moment it runs.
Claude Code ships bundled skills, such as /doctor, /code-review and /batch1. Others include /debug, /loop and /claude-api. Our explainer covers how Claude decides which skill to load. Claude Code skills follow the Agent Skills open standard. Claude Code extends it with invocation control and dynamic context injection1.
Do skills work in Claude Code?
Yes, with no setup. Bare mode (--bare) skips skill auto-discovery, except skills in an --add-dir folder5. Skills synced from claude.ai need a /login sign-in with your Claude account1.
Where are Claude Code skills stored?
Claude Code skills are stored in ~/.claude/skills/ for personal use and .claude/skills/ for one repository. Enterprise, nested, plugin and claude.ai-synced locations add more skills. On a name clash, enterprise beats personal, and personal beats project.
Anthropic's docs list seven locations1:
| Location | Path | Loads in |
|---|---|---|
| Enterprise | .claude/skills/<name>/SKILL.md in the managed settings directory |
All users on machines where your organisation deploys it |
| Personal | ~/.claude/skills/<name>/SKILL.md |
All your projects on this machine, but not Cowork or cloud sessions |
| Project | .claude/skills/<name>/SKILL.md |
Sessions in this repository |
| Nested | <subdir>/.claude/skills/<name>/SKILL.md |
Sessions in or below <subdir>, or once Claude works on files there |
| Additional directory | .claude/skills/ inside a folder passed with --add-dir |
That session |
| Plugin | <plugin>/skills/<name>/SKILL.md |
Wherever the plugin is enabled, as /plugin-name:skill-name |
| claude.ai account | Synced into ~/.claude/skills/synced/ |
Cowork, cloud and signed-in terminal sessions |
Personal and project folders are the two you create by hand. Nested folders help in a monorepo, where each package keeps its own skills. Plugin and enterprise folders arrive through installs and administrators, not by hand.
Claude Code reserves the folder names synced and anthropic-skills1. Its docs list no .agents/skills/ location (checked 2026-10-21).
Personal vs project vs nested skills
Personal skills are the global option. They load in every project on one machine1. Project skills load from .claude/skills/ in the start directory and every parent up to the repository root1. Nested skills load once Claude reads or edits a file in that subdirectory1. Running /add-dir with the subdirectory's path loads them sooner, on v2.1.257 or later1.
Which skill wins when two share a name?
Anthropic's precedence table settles each clash1:
| Clash | Result |
|---|---|
| Enterprise vs personal vs project | Enterprise wins, then personal, then project |
| Your skill vs a bundled command | Your skill replaces it, but not its aliases |
Skill vs a .claude/commands/ file |
The skill wins |
| Plugin skill vs local skill | Both load, because plugin skills are namespaced |
| Local skill vs synced claude.ai skill | The local skill keeps the short name |
How do you invoke a skill in Claude Code?
You invoke a skill in Claude Code by typing /skill-name at the start of a message. Claude invokes skills automatically when a request matches the description. Setting disable-model-invocation: true leaves the call to you.
| Where you type the name | Example | What happens |
|---|---|---|
| At the start of the message | /deploy staging |
Claude Code runs the skill directly1 |
| After plain text | go ahead and /deploy to staging |
The name grants Claude permission to run it1 |
Arguments reach the skill through the $ARGUMENTS placeholder, so /fix-issue 123 passes 123 in1. You stack skills at the start of one terminal message, up to six6. A claude -p run loads only the first stacked skill1. Automatic loading depends on the description, and our page on how skill matching works explains the match.
Control who can invoke a skill
| Frontmatter | You can invoke | Claude can invoke | Description in context |
|---|---|---|---|
| (default) | Yes | Yes | Always1 |
disable-model-invocation: true |
Yes | No | No1 |
user-invocable: false |
No | Yes | Always1 |
Skill permissions in Claude Code
Denying the Skill tool in /permissions disables all skills1. Skill(name) matches one skill exactly. Skill(name *) matches a prefix with any arguments1.
# Allow only specific skills
Skill(commit)
Skill(review-pr *)
# Deny specific skills
Skill(deploy *)
The allowed-tools frontmatter field pre-approves its tools for the invoking turn only. The grant clears when you send your next message1.
How do you list and manage skills with /skills in Claude Code?
The /skills command lists every skill in your Claude Code session and filters by name, description or source. Press t to sort by token count. Press Space to cycle visibility and Esc to save.
| Key | Action in /skills |
|---|---|
| Type text | Filter by name, description or source6 |
t |
Sort by token count6 |
Space or Enter |
Cycle the skill's visibility to Claude and the / menu6 |
Esc |
Save and close6 |
Three kinds of skill don't cycle. These are plugin skills, skills with disable-model-invocation: true and skills under a managed skillOverrides entry6. Skills synced from claude.ai appear in a claude.ai sync group3.
The menu saves your choices to .claude/settings.local.json under skillOverrides. Each skill takes one of four states: on, name-only, user-invocable-only or off1. /skill-doctor reports each skill's context cost and usage, on v2.1.252 or later16. Use it to spot skills that cost context and never run.
How do you check that a skill loaded?
- Run
/skillsand look for the name. - Ask Claude "What skills are available?".
- Invoke it directly with
/skill-name1.
A skill absent from both lists did not load. Frontmatter YAML that fails to parse still loads the skill, with no fields set1.
Turn a skill off or remove it
| Source | How to remove |
|---|---|
| Personal or project skill | Delete ~/.claude/skills/<name>/ or .claude/skills/<name>/1 |
| Enterprise skill | An administrator deletes it from the managed settings directory1 |
| Plugin skill | /plugin uninstall <plugin>@<marketplace>, or disable the plugin1 |
| Synced claude.ai skill | Turn it off on claude.ai; the next sync removes it1 |
| Bundled skill | disableBundledSkills: true, or off for one skill in skillOverrides1 |
Update skills
- Run
claude plugin update <plugin>@<marketplace>for a plugin skill2. - Leave auto-update on for
claude-plugins-official, where it is the default2. - Start a new session, or run
/reload-plugins, to load the updated plugin2. - Replace the files of a folder skill; live detection picks up the edit1.
How do you use Claude skills in Claude Code?
You use Claude skills in Claude Code by signing in with the same claude.ai account. Enabled account skills sync into ~/.claude/skills/synced/ on v2.1.273 or later. Anthropic's pdf and xlsx skills always sync.
Claude skills here means the skills you enable on claude.ai, in the Claude app. Those include Anthropic's own document skills and any custom skill you upload there. Claude Code downloads them, so your account's skills reach the terminal too.
Claude Code checks for changes about every 10 minutes while active and every 40 minutes while idle1. Set CLAUDE_CODE_SYNC_SKILLS=1 to make a -p run wait for synced skills1.
Sync stays off in these conditions1:
- Sign-in with an API key or
ANTHROPIC_AUTH_TOKENinstead of your Claude account. - Amazon Bedrock as the provider.
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICset in the environment.- Bare mode or safe mode.
Sync runs one way: Claude Code downloads account skills and never uploads them1. Edits under synced/ vanish at the next sync, so change the skill on claude.ai. A synced skill runs as /anthropic-skills:<name> when a local skill holds its short name1. Setting syncClaudeAiSkills to false stops syncing1.
Anthropic's sources disagree on two points. The Help Center's "What are skills?" says custom skills do not sync across surfaces7. It says Anthropic's pre-built document skills are unavailable in Claude Code7. The Claude Code docs describe account sync, and they say pdf and xlsx always sync1. We follow the Claude Code docs here, as the more specific source. The app side has its own guide to turn skills on in the Claude app.
How do you create custom skills for Claude Code?
You create custom skills for Claude Code in three steps. Make a folder such as ~/.claude/skills/summarize-changes, then save a SKILL.md with a description and instructions. Test it with a matching question or /summarize-changes.
- Create the folder with
mkdir -p ~/.claude/skills/summarize-changes. - Save a SKILL.md with a
descriptionand a!`git diff HEAD`line that injects the live diff. - Test it with "What did I change?" or
/summarize-changes1.
---
description: Summarizes uncommitted changes and flags anything risky. Use when the user asks what changed, wants a commit message, or asks to review their diff.
---
## Current changes
!`git diff HEAD`
## Instructions
Summarize the changes above in two or three bullet points, then list any risks you notice.
Claude Code treats every frontmatter field as optional and recommends description1. The Agent Skills specification makes name and description required. Set both, and the skill stays portable to other agents.
Anthropic's skill-creator plugin drafts skills and runs evals against them. It installs with /plugin install skill-creator@claude-plugins-official1. Our verdict on it reads:
- Skill
- Skill Creator (Anthropic)
- Verdict
- Conditional
- Score
- 57/100
- Safety grade
- C
- Confidence
- Moderate
- Files
- run_eval.py and improve_description.py shell out to claude -p, default 10 parallel workers, 3 runs per query
- Reviewed
- 2026-09-30 (commit 8a1541c)
The full Skill Creator review explains the Conditional label. Our tutorial shows how to create an Agent Skill end to end. The field reference lists every SKILL.md frontmatter field.
How do you reload skills in Claude Code?
You reload skills in Claude Code without a restart: edits under ~/.claude/skills/ or .claude/skills/ apply at once. Run /reload-skills only when you create a top-level skills directory after the session starts.
Live change detection covers SKILL.md text only1. Plugin hooks, .mcp.json and agents need /reload-plugins1. Live reload is off in bare mode1. To test an edit, change the description, save the file and ask a matching question in the same session.
Anthropic's troubleshooting list gives five checks for a skill that does not run1:
- Check that the description holds words users say.
- Ask "What skills are available?" and look for the skill.
- Invoke it directly with
/skill-name. - Run
claude plugin validate ~/.claude/skillsto find broken frontmatter, on v2.1.233 or later. - Look in
~/.claude/skills/.trash/for personal skills that disappeared.
Descriptions get cut short when many skills compete for the listing. The listing budget scales at 1% of the context window1. Each entry caps at 1,536 characters1. A typed /name that matches no skill returns an unknown command message8. Deeper fixes sit in our guide to fix a Claude Code skill that won't trigger.
Skills now load, list and run. Which skills deserve a place in that folder?
Where can you download Claude Code skills?
You can download Claude Code skills from GitHub repositories, plugin marketplaces such as claude-plugins-official, and community registries. Check the verdict first: some skills are verified in Claude Code, while others only claim support.
GitHub collections such as alirezarezvani/claude-skills and ComposioHQ/awesome-claude-skills also list Claude Code skills. We have not reviewed those collections as a whole.
These five score highest among the skills we have reviewed that are verified in Claude Code. Each was reviewed on 2026-09-30.
| # | Skill | Verdict · score | Confidence | Safety grade | Type | Verified in | Work |
|---|---|---|---|---|---|---|---|
| 1 | Designer Skills Collection verdict | Recommended · 78 | Moderate | B | Plugin or bundle | Claude Code | UI/UX & frontend design |
| 2 | Remotion Best Practices review | Recommended · 77 | Moderate | B | Plugin or bundle | Claude Code | React & web development |
| 3 | Emil Kowalski Animate verdict | Recommended · 77 | Low | A | Single skill | Claude Code (claude-haiku-4-5) | Animation |
| 4 | Emil Design Engineering review | Recommended · 76 | Moderate | A | Single skill | Claude Code (Sonnet 4.6, Tessl eval) | Animation |
| 5 | Anthropic Frontend Design verdict | Recommended · 76 | Moderate | A | Single skill | Claude Code (Sonnet 4.6, Opus 5.5) | UI/UX & frontend design |
The verdict label and score sum up the review. Confidence says how much dated public evidence backed that score. Animate scores 77 with Low confidence, so its score rests on thinner evidence than its neighbours. The safety grade comes from our review of the skill's files at the reviewed commit. Verified in names the agent and, where known, the model that public evidence showed it running on.
Plugin or bundle rows install with /plugin, and single-skill rows install as a folder. The full ranking covers every Claude Code skill we've reviewed.
Our methodology page explains what verified means in our verdicts.
How do you use skills in Claude Code desktop?
You use skills in the Claude Code desktop app through the / menu or + > Slash commands. Local sessions load ~/.claude/skills/ from your machine. SSH sessions read that folder on the remote host.
Cloud sessions load account skills and committed project skills, and they skip ~/.claude/skills/19. Plugins install from the + button's plugin menu2.
Skills in the terminal and headless mode (claude -p)
- Put
/skill-namein the-pprompt string to run a skill5. - Expect only the first stacked skill to load in
-p1. - Use
claude pluginshell commands, because/plugindoes not run in-p2. - Pass
--bareto skip skill discovery, except--add-dirskills5.
Skills in VS Code
The terminal, the desktop app and the VS Code extension share user-scope plugins2.
How do you share Claude Code skills with your team?
You share Claude Code skills with your team by committing .claude/skills/ to the repository. Plugins carry skills further, and managed settings reach every machine in an organisation. Each scope widens the audience.
| Scope | Mechanism | Path | Who gets it |
|---|---|---|---|
| Project | Commit to version control | .claude/skills/ |
Everyone who works in the repository1 |
| Plugin | A skills/ directory in a plugin |
<plugin>/skills/<name>/SKILL.md |
Everyone who installs the plugin1 |
| Managed | Organisation-wide deployment | .claude/skills/ in the managed settings directory |
Every user on machines where it is deployed1 |
Pick the narrowest scope that reaches the people who need the skill. A committed folder suits one team on one codebase. A plugin suits skills that several repositories reuse, since one update reaches every install. Managed settings suit rules an organisation enforces on every machine.
Project-scope plugins go into .claude/settings.json. Each collaborator still runs claude plugin install <name>@<marketplace> --scope project once2. Cloud sessions load committed project skills but skip user-only plugins1.
Where is the official Claude Code skills documentation?
The official Claude Code skills documentation is Anthropic's Extend Claude with skills page at code.claude.com/docs/en/skills. It covers creation, locations, frontmatter, invocation, permissions, sharing and troubleshooting. It does not rate third-party skills.
- Skills page: Extend Claude with skills covers locations, sync, frontmatter, invocation, permissions and sharing.
- Plugins page: Discover and install plugins covers
/plugin install, scopes, marketplaces and updates. - Commands reference: Commands covers
/skills,/reload-skills,/skill-doctorand/plugin. - Desktop page: Desktop covers the
/menu, plus local, SSH and cloud loading. - Headless page: Headless mode covers bare mode and skills in
-p. - Errors page: Errors covers unknown command messages.
- Academy lesson: Claude Code 101: Skills is Anthropic's short video lesson.
- Authoring guide: The Complete Guide to Building Skills for Claude is Anthropic's PDF on building skills.
Anthropic's docs explain the mechanics. Our verdicts judge the skills themselves, with a score and a safety grade for each.
Common questions
Does Claude Code have a skills library?
Yes. Bundled skills ship with Claude Code, and the official claude-plugins-official marketplace is added automatically12.
Can Claude skills be global?
Yes. A skill in ~/.claude/skills/ loads in all your projects, but not in Cowork or cloud sessions1.
There is no skills folder: where do I create it?
Create it with mkdir -p ~/.claude/skills/<name>. A running session needs /reload-skills once to see the new directory16.
Does Claude Code read .agents/skills/?
No. Anthropic's Claude Code docs list no such location (checked 2026-10-21).
Can you use several skills at once?
Yes. Stack up to six at the start of a terminal message, while -p loads only the first16.
Can you install a skill from a ZIP?
No. Anthropic documents no ZIP import for skill folders, so unzip the folder into a skills directory. Marketplace sources do accept a zip archive with a sha256 checksum10.
Do skills hot-reload?
Yes. SKILL.md edits apply in the running session, except in bare mode1.
Are skills the same as slash commands?
Yes, for custom commands: they merged into skills, and both create /name1.
- Claude Code docs, "Extend Claude with skills", https://code.claude.com/docs/en/skills (accessed 2026-10-21).
- Claude Code docs, "Discover and install plugins", https://code.claude.com/docs/en/discover-plugins (accessed 2026-10-21).
- Claude Help Center, "Use skills in Claude", https://support.claude.com/en/articles/12512180-use-skills-in-claude (accessed 2026-10-21).
- Anthropic Academy, "Claude Code 101: Skills", https://academy.claude.com/courses/claude-code-101/skills (accessed 2026-10-21).
- Claude Code docs, "Headless mode", https://code.claude.com/docs/en/headless (accessed 2026-10-21).
- Claude Code docs, "Commands", https://code.claude.com/docs/en/commands (accessed 2026-10-21).
- Claude Help Center, "What are skills?", https://support.claude.com/en/articles/12512176-what-are-skills (accessed 2026-10-21).
- Claude Code docs, "Errors", https://code.claude.com/docs/en/errors (accessed 2026-10-21).
- Claude Code docs, "Desktop", https://code.claude.com/docs/en/desktop (accessed 2026-10-21).
- Claude Code docs, "Plugin marketplace reference", https://code.claude.com/docs/en/plugins/marketplace-reference (accessed 2026-10-21).
