Where Are Claude Code Skills Stored?

Claude Code skills are stored in a skills folder, with one subfolder per skill. Personal skills go in ~/.claude/skills/<skill-name>/SKILL.md, and project skills go in .claude/skills/<skill-name>/SKILL.md inside your project.

Personal skills are available in every project on your computer. Project skills are only available in that project, but you can commit them to git so your whole team gets them.

This article shows every location Claude Code loads skills from, what a SKILL.md file looks like, and what happens when two skills have the same name.

Personal vs project skills

Here are the two locations you’ll use most of the time:

TypeLocationAvailable in
Personal~/.claude/skills/<skill-name>/SKILL.mdAll your projects on this machine
Project.claude/skills/<skill-name>/SKILL.mdOnly this project (commit it to share)

On Windows, ~/.claude means C:\Users\<you>\.claude.

The folder name becomes the skill name. For example, a skill saved at:

~/.claude/skills/summarize-changes/SKILL.md

can be run by typing /summarize-changes in Claude Code.

A skill folder can also hold extra files the skill needs, such as scripts, templates, or reference docs:

~/.claude/skills/
└── summarize-changes/
    ├── SKILL.md
    └── template.md

Other places Claude Code loads skills from

Besides personal and project skills, Claude Code also picks up skills from these locations:

TypeLocation
Nested<subdir>/.claude/skills/<skill-name>/SKILL.md, used when you start Claude Code in or below that subfolder
Plugin<plugin>/skills/<skill-name>/SKILL.md, available as /plugin-name:skill-name
Enterprise.claude/skills/ in your organization’s managed settings directory
Extra directory.claude/skills/ in any folder passed with --add-dir

Skills that come from installed plugins are stored under ~/.claude/plugins/. You manage those with the /plugin command instead of editing them directly.

How to list your installed skills

To see the personal skills on your machine, list the skills folder:

ls ~/.claude/skills

For a project’s skills, run this from the project root:

ls .claude/skills

Inside Claude Code, typing / shows a menu with all available skills and commands, including the ones from plugins.

What goes inside SKILL.md

A SKILL.md file has two parts: YAML frontmatter between --- lines, followed by Markdown instructions for Claude.

Here’s a minimal example:

---
name: summarize-changes
description: Summarize the uncommitted changes in this repository. Use when the user asks what they changed.
---

Run `git diff` and `git status`, then write a short summary of
what changed, grouped by file. Point out anything that looks unfinished.

All frontmatter fields are optional, but you should always write a description. Claude reads the description to decide when to use the skill on its own.

The name field defaults to the folder name if you leave it out.

Make sure the opening --- is the very first line of the file. Otherwise, Claude Code won’t read the frontmatter.

How to run a skill

There are two ways a skill runs:

  • Manually: type /skill-name at the start of your message
  • Automatically: Claude loads the skill when your request matches its description. With the example above, asking “what did I change?” triggers it

Anything you type after the skill name is passed to the skill as $ARGUMENTS.

What if two skills have the same name?

When skills from different locations share a name, Claude Code picks one in this order:

  1. Enterprise skills win over personal skills
  2. Personal skills win over project skills

So if you have a personal deploy skill and the project also has a deploy skill, your personal one runs.

Plugin skills never conflict, because they’re namespaced as /plugin-name:skill-name.

Skills vs the old commands folder

Before skills, custom slash commands were single Markdown files in .claude/commands/. For example, .claude/commands/deploy.md created a /deploy command.

That format still works, but skills are the recommended format now. If a skill and a command have the same name, the skill wins.

Conclusion

Save personal skills in ~/.claude/skills/<skill-name>/SKILL.md and project skills in .claude/skills/<skill-name>/SKILL.md. Each skill needs its own folder, and the folder name becomes the /command you type.

To learn about the other files Claude Code keeps in ~/.claude, see where is the Claude Code settings.json file and where Claude Code memory is stored.