Install and verify
How to install Claude skills in Claude Code
Claude Code loads skills from folders on your computer, so installing one means putting a SKILL.md folder in a directory Claude Code already reads, then checking that it appears. This guide covers the documented locations, the documented install paths, and the verification step. Every command and path here was checked against the linked documentation on 16 August 2026.
- Publisher
- Skills Board
- Published
- Updated
Core principle
Installing a skill is a file placed at a chosen scope, followed by a check that Claude Code read it.
Quick answer
Claude Code reads skills from the filesystem. Put the folder at ~/.claude/skills/<skill-name>/SKILL.md to use the skill in every project, or at .claude/skills/<skill-name>/SKILL.md to scope it to one repository and commit it with the code. A plugin, enterprise managed settings, and a claude.ai sync run are the other documented sources. Run /skills to confirm Claude Code sees it.
For what a skill actually is, the frontmatter fields in full, and the surfaces beyond Claude Code that read the same folder, see Claude skills: what they are and how to use them.
The problem behind the query
The searches behind this page ask for a command: add skills to Claude Code, install Claude skills, where are Claude skills stored. Anthropic documents no CLI subcommand that installs a bare skill folder, so people copy folders into a directory Claude Code does not read, or into the right directory at a scope that another copy overrides, and then have no way to tell whether anything loaded. Knowing the documented locations and the one verification step removes both failures.
01 / Decision
Choose the scope before you copy the folder
Where the folder goes decides who gets the skill. Claude Code documents four locations, plus a synced directory it fills from your claude.ai account. When the same skill name exists at more than one level, enterprise overrides personal and personal overrides project, and a skill at any of those levels overrides a skill synced from claude.ai.
| Scope | Documented path | Who gets it | Choose it when |
|---|---|---|---|
| Personal | ~/.claude/skills/<skill-name>/SKILL.md | You, across all your projects. | The skill is part of how you work rather than part of a codebase. |
| Project | .claude/skills/<skill-name>/SKILL.md | Anyone working in that repository, once the folder is committed. | The skill belongs to the codebase and should arrive with a clone. |
| Plugin | <plugin>/skills/<skill-name>/SKILL.md | Everyone who installs and enables the plugin. | You are distributing several skills, or skills together with agents, hooks, and MCP servers. |
| Enterprise | Managed settings, as documented for your platform. | Every user in the organization. | The organization needs the skill present without each person installing it. |
| claude.ai sync | ~/.claude/skills/synced/ | Your own account, after a non-interactive run with CLAUDE_CODE_SYNC_SKILLS set. | You already enabled the skill on claude.ai and want it in local sessions too. |
02 / Workflow
Install a skill and confirm Claude Code loaded it
The manual path is worth learning first, because the plugin path and the sync path produce the same result: a SKILL.md folder in a directory Claude Code reads. Commands below are quoted from the documentation cited beside each step.
- 01
Read the skill before you install it
Anthropic's guidance is to use skills only from sources you trust, because a skill gives an agent new instructions and executable code, and a malicious one can direct the agent to call tools in ways its stated purpose does not suggest. Review SKILL.md, every bundled script, and anything the skill fetches from an external URL. Treat the decision the way you would treat installing software.
Output: A skill you have read in full, from a source you are willing to run.
- 02
Create the skill directory at the scope you chose
For a personal skill the documentation creates the folder directly, with mkdir -p ~/.claude/skills/summarize-changes. For a project skill, create .claude/skills/<skill-name>/ inside the repository instead. The directory name becomes the command you type, so that example is invoked as /summarize-changes.
Output: One folder named after the skill, at one scope.
- 03
Put SKILL.md inside the folder
SKILL.md is the entry point and the only required file. It opens with YAML frontmatter and continues with the Markdown instructions Claude follows. Claude Code treats every frontmatter field as optional and recommends description, because that is the text it matches a request against. The Agent Skills specification is stricter: name and description are required, and name has to match the parent directory name, stay within 64 characters, and use lowercase letters, numbers, and single hyphens. Optional scripts, references, and assets sit beside SKILL.md and load only when the task reaches them.
Output: A folder whose SKILL.md says what the skill does and when to use it.
- 04
Commit it when the whole team works in that repository
Project skills load from .claude/skills/ in the directory where you start Claude Code and in every parent directory up to the repository root, so starting in a subdirectory still picks up skills defined at the root. Skills in nested .claude/skills/ directories below your starting directory are not loaded at startup: they load the first time Claude reads or edits a file inside that subdirectory. To load skills from a directory outside that path at startup, pass it with --add-dir.
Output: A skill that arrives with a clone instead of a paste.
- 05
Or install a plugin that bundles the skills
Add a marketplace with /plugin marketplace add owner/repo, then install from it with /plugin install plugin-name@marketplace-name. Anthropic's public skills repository is registered with /plugin marketplace add anthropics/skills. Plugin skills live in the plugin's skills/ directory and are namespaced by the plugin, so a skill named review inside my-plugin is invoked as /my-plugin:review. When the install summary says to run /reload-plugins, run it to activate the plugin in the current session.
Output: Several skills installed and updated through one source.
- 06
Verify that Claude Code sees the skill
Run /skills to open the menu of what is loaded, and ask what skills are available as a second check inside the session. The Skills row in /context reports the size of the skill listing the model actually receives, and /doctor estimates its context cost. Claude Code watches skill directories, so adding, editing, or removing a skill under ~/.claude/skills/, the project .claude/skills/, or a .claude/skills/ inside an --add-dir directory is picked up within the session, without a restart. Creating a top-level skills directory that did not exist when the session started does need a restart.
Output: The skill listed by name, before anyone relies on it.
- 07
Invoke it, and decide who is allowed to
A skill is available as a slash command named after its directory, and Claude can also load it on its own when a request matches the description. Set disable-model-invocation: true when only you should trigger it, which is the sensible default for anything that deploys, commits, or sends a message. Set user-invocable: false for background knowledge that only Claude should reach for.
Output: A skill that runs when you expect it and stays quiet when you do not.
Teammates who run a different agent need their own install path for the same folder, which is the subject of manage skills across Claude Code, Codex, and Cursor.
Make the recommendation findable
What a team still has to hand over
None of the locations above records the part teammates keep asking about: which skill to use for this task, and why this one. A personal folder is invisible to everyone else, a repository only reaches the people working in it, and a plugin distributes files rather than a recommendation. Skills Board is a shared library for that layer. It is free and MIT licensed, and it gives a teammate four ways to act on a saved entry.
- Open the original source
- Every saved skill records the repository and path it came from, so a teammate can read SKILL.md before creating any directory.
- Copy an install command
- For the teammates whose setup the command fits, without claiming it fits everyone.
- Download a ZIP
- The latest skill files available from the source at download time, for anyone who would rather place the folder themselves.
- Connect an agent over MCP
- An authenticated endpoint lets a compatible agent search the same library and retrieve install commands. Sign-in happens in the browser, with no API key to copy.
- A saved skill is a team recommendation, not a security review, an approval, or a compatibility certification.
- Skills Board follows the latest version available from the saved source. It does not pin or preserve historical versions.
- It does not create directories, place files, or run skills inside your agent. The steps above stay yours to run.
03 / Record
The install note worth keeping
Write this once per skill, beside the recommendation. It answers the questions the next person would otherwise ask in chat, and it records when the path was last checked, because product behavior changes.
- Skill and source
- The skill name plus the repository and path the folder came from.
- Scope
- Personal, project, plugin, or managed, and the reason that scope was chosen.
- Install path
- The exact directory the folder goes in, written out rather than described.
- Verification
- The command that proves it loaded, and the output the reader should see.
- Reviewed at
- Who checked the path, on what date, against which documentation page.
- Re-review trigger
- The source changed, the skill failed a run, or the documented locations changed.
Copyable starting point
Skill: <skill-name>
Source: <repository URL and path to the skill folder>
Scope: personal (~/.claude/skills/<skill-name>/) or project (.claude/skills/<skill-name>/)
Install
1. Read SKILL.md and every bundled script at the source.
2. mkdir -p ~/.claude/skills/<skill-name>
3. Copy SKILL.md and any scripts, references, and assets into that folder.
Verify
1. Run /skills and confirm <skill-name> is listed.
2. Invoke /<skill-name> and confirm the expected output.
Reviewed by: <name>, <date>
Re-review when: the source changes, a run fails, or the documented skill locations change.04 / Pitfalls
Where installs go wrong
Waiting for an install command
Anthropic documents no CLI subcommand that installs a bare skill folder. The documented paths are a directory you create, a plugin you install, managed settings, and the claude.ai sync run. A catalog can ship its own installer, and that installer is documented by the catalog rather than by Anthropic.
Installing the same name at two scopes
When a skill name exists at more than one level, enterprise overrides personal and personal overrides project. A forgotten copy in ~/.claude/skills/ quietly wins over the one your team committed to the repository.
Expecting a nested project skill at startup
Skills in .claude/skills/ directories below your starting directory load only after Claude reads or edits a file inside that subdirectory. Until then they do not appear in autocomplete and cannot be invoked by name.
Naming a folder synced
The folder name synced is reserved in the enterprise, personal, and project skill locations, in any capitalization, because Claude Code writes skills downloaded from claude.ai there. A skill you author at that name is skipped.
Leaving malformed frontmatter in place
If the YAML is malformed, Claude Code loads the skill body with empty metadata. The slash command still works, but Claude has no description to match against, so the skill never triggers on its own. Run with --debug to see the parse error.
Assuming a personal skill follows you everywhere
Cowork sessions and cloud sessions do not read ~/.claude/skills/ on your machine. They load the skills enabled for your claude.ai account, and cloud sessions additionally load project skills committed to the cloned repository.
05 / Checklist
Ready to share with the team?
- The skill came from a source you were willing to read in full.
- The folder sits at one scope, and you can say why that scope.
- SKILL.md stays inside the specification fields if the folder also has to load outside Claude Code.
- Running /skills in a fresh session lists the skill by name.
- Invoking the skill produced the output you expected, not a near miss.
- The next teammate can find the source, the scope, and the verification step without asking you.
06 / Questions
Frequently asked questions
- Where are Claude skills stored?
- Claude Code documents four locations: ~/.claude/skills/<skill-name>/SKILL.md for personal skills, .claude/skills/<skill-name>/SKILL.md for a project, a skills directory inside a plugin, and enterprise managed settings. Skills you enable on claude.ai are downloaded into ~/.claude/skills/synced/ during a run with CLAUDE_CODE_SYNC_SKILLS set. A symlink at any of those paths is followed too.
- How do I add a skill to Claude Code without a plugin?
- Create the directory, then write the file. The documentation creates a personal skill with mkdir -p ~/.claude/skills/summarize-changes and saves SKILL.md inside that folder. For a project skill, use .claude/skills/<skill-name>/ and commit it with the code. The directory name becomes the slash command you type.
- Do I have to restart Claude Code after adding a skill?
- Usually not. Claude Code watches skill directories, so a skill added, edited, or removed under ~/.claude/skills/, the project .claude/skills/, or a .claude/skills/ inside an --add-dir directory is picked up within the session. Restart when you create a top-level skills directory that did not exist at startup.
- Why does my skill not show up?
- Check the scope, then the frontmatter. A skill with the same name at a higher level wins, a nested project skill loads only after Claude touches a file in its directory, and malformed YAML loads the body with empty metadata so nothing matches your request. Run with --debug to see parse errors.
- Can I install a skill for a whole team in one step?
- Not through the skill format itself. Anthropic documents three distribution scopes: commit the folder to the repository's .claude/skills/, ship a skills directory inside a plugin, or deploy through managed settings. Each one is set up separately, and each teammate still ends up with skill files on disk.
- Are Claude Code skills the same as claude.ai skills?
- Same file format, separate installs. Anthropic documents that custom skills do not sync across surfaces: a claude.ai upload is not available through the API, an API skill is not on claude.ai, and Claude Code skills are filesystem based. Claude Code can download the ones you enabled on claude.ai into a synced folder.
Primary sources
Editorial method: Skills Board synthesizes the first-party and standards sources cited below into a practical workflow. Product behavior can change, so verify the linked sources before rollout.
- Claude Code: skills documentation
The four skill locations and their exact paths, the name conflict precedence, project and nested discovery, --add-dir, the reserved synced folder, live change detection, the /skills, /context, /doctor, and --debug checks, and the invocation control fields. Checked 16 August 2026.
- Anthropic: Agent Skills overview
Progressive disclosure and its token costs, the sharing scope of each surface, the statement that custom skills do not sync across surfaces, and the security guidance on installing skills from sources you do not trust. Checked 16 August 2026.
- Agent Skills specification
The required name and description fields, the name constraints including the match with the parent directory name, the optional scripts, references, and assets directories, and the length guidance for SKILL.md. Checked 16 August 2026.
- Claude Code: plugins
The skills/ directory inside a plugin, the plugin-name:skill-name namespace, and the /reload-plugins step reported by the install summary. Checked 16 August 2026.
- Claude Code: discover and install plugins
The /plugin marketplace add command and its accepted sources, and the /plugin install plugin-name@marketplace-name syntax. Checked 16 August 2026.
- anthropics/skills on GitHub
Anthropic's public Agent Skills repository, the marketplace command it publishes, and the licensing note separating the Apache 2.0 skills from the source-available document skills. Checked 16 August 2026.
More resources
Keep exploring
Give the next teammate one trusted place to start.
Save the reviewed skill, document the path that works, and keep the recommendation visible to the whole team.
Skills Board updates
Follow the build
An occasional email when Skills Board ships a new feature or publishes a new guide.
Only Skills Board updates. Unsubscribe anytime.