Chapter 05 · Section I · 10 min read
What skills are, and how to invoke them
A Skill is a named, reusable prompt shape you invoke with a slash — /review, /migrate, /release. Anyone on your team can then reproduce the same workflow with the same command. Think of them as the makefile of your AI-assisted work.
If a certain kind of ask keeps coming up — “review this PR against our checklist,” “draft release notes from these commits,” “run the standard incident-response triage on this log” — you do not want to retype the prompt each time. You want to package it. In Claude Code that package is a Skill, and the way you use it is a slash command.
Invocation
Skills are invoked by typing /name-of-the-skill at the start of a message. Optionally followed by arguments:
/review
/review --strict
/summarise-thread https://linear.app/team/issue/BUG-4128
When you send that message, Claude Code recognises the slash prefix, looks up the skill by name, and loads the skill’s system prompt into the current turn. From that point on, Claude behaves according to the skill’s instructions until the turn ends.
Discovery
/help lists the skills available in your current session. Skills come from several places:
- Built-in. Some ship with Claude Code (
/review,/init, etc.). - Project-local. A
.claude/skills/directory in your repo can define skills specific to that codebase. - User-global.
~/.claude/skills/defines skills you carry across every project on your machine. - Plugin skills. Skills installed as part of a plugin or team template.
Skills defined closer to the code override skills defined further away — project beats user beats built-in.
When a skill is the right primitive
- Repeated prompt shapes. You have written essentially the same instructions three times in one week.
- Shared workflows. Your team wants everyone to do a task the same way.
- Structured input, structured output. The task has a natural argument (a PR number, a file path) and a natural output (a checklist, a diff, a summary).
What skills are not
- Skills do not run in the background. They only activate when invoked. If you want automated behaviour, that is a hook (see the Autonomy chapter).
- Skills do not have separate memory. They read the current session context and add their instructions on top; they do not persist state between invocations by themselves.
- Skills are not subagents. A skill runs in the current session; a subagent runs in a new session. They can be combined — a skill can spawn a subagent — but they are not the same thing.
Check your understanding
Quick check
—