Skills and custom slash commands
The two used to be separate features. They have merged, and the exam-relevant details are the frontmatter and the precedence.
6 min read · Lesson 8 of 11 in this domain
A skill is a folder containing a SKILL.md file whose instructions Claude can load. The key economic property is that the body loads only when the skill is used — so a long procedure costs almost nothing until it is needed, unlike CLAUDE.md content which is in context from launch. That is the reason to move a grown-out CLAUDE.md section into a skill. Note the consolidation: custom commands have merged into skills. A file at .claude/commands/deploy.md and a skill at .claude/skills/deploy/SKILL.md both create /deploy and behave the same way; existing command files keep working, but skills add a directory for supporting files, frontmatter controlling who may invoke them, and automatic loading when relevant.
- Project scope:
.claude/skills/<name>/SKILL.md. User scope:~/.claude/skills/<name>/SKILL.md. disable-model-invocation: truestops Claude loading it automatically — use it for actions you want to trigger manually with/name.user-invocable: falsehides it from the/menu, for background knowledge users should not run directly.context: forkruns the skill in its own subagent context, isolating it from the main conversation.allowed-toolsscopes which tools the skill may use;descriptionis what Claude reads when deciding relevance.- Name conflicts resolve enterprise → personal → project, any level overrides a bundled skill, and where a skill and a command share a name the skill wins.
- Plugin skills are namespaced
plugin-name:skill-name, so they cannot collide. - Nested
.claude/skills/below the working directory become available when Claude reads a file in that subdirectory.
Older material treats slash commands and skills as separate features. They have merged; a skill and a same-named command both produce /name, and the skill takes precedence.
Where does a project-scoped skill live?
User scope is the same shape under ~/.claude/skills/.
Which frontmatter field stops Claude loading a skill on its own?
user-invocable: false does the opposite — it hides it from the / menu while leaving automatic loading intact.
Practise this domain with 20%%-weighted questions in the study app.
Open in study appSource: Claude Code Docs — Skills · Independent study aid, not affiliated with or endorsed by Anthropic.