Skills and plugins both extend what Claude Code knows and can do. But they operate at different levels — and confusing them is the fastest way to either over-build or miss something that already exists.
The one-line version
- A skill is a single piece of knowledge Claude applies automatically.
- A plugin is a bundle that installs multiple skills, commands, hooks, and connectors in one step.
Skill — one piece of know-how
A skill is a folder with a SKILL.md that teaches Claude how to do one thing your way:
.claude/skills/brand-voice/SKILL.md
That might describe your brand’s tone of voice, your deployment checklist, or how you format spreadsheets. Claude notices when it’s relevant and follows the instructions. One skill, one piece of expertise.
Create a skill when:
- You have a specific process or convention Claude should follow
- It’s particular to your project or team
- You want it to apply automatically, without invoking it
Plugin — a bundled toolkit
A plugin packages several things together — skills, slash commands, hooks, MCP connections — so you install a proven setup in one command:
/plugin install code-review@claude-plugins-official
That single install might give you a review skill (conventions to follow), a /review command (the explicit action), a hook (auto-format after edits), and a tool connection — all configured and ready.
Install a plugin when:
- Someone has already assembled the toolkit you need
- You want a battle-tested setup, not a DIY build
- You’re onboarding a team and want everyone configured the same way
Side by side
| Skill | Plugin | |
|---|---|---|
| Scope | One piece of know-how | A bundle of skills + commands + hooks + connectors |
| Install | Drop a folder in .claude/skills/ | /plugin install name |
| Created by | You (project-specific) | You or the community |
| Automatic? | Yes — Claude applies when relevant | Yes — everything inside activates |
| Shareable | Commit to repo | Publish or share the package |
| Analogy | One recipe | A cookbook with recipes, tools, and tips |
The progression
Most teams follow this natural path:
- Start with a skill — “Here’s how we write commit messages”
- Add a command —
/deployruns the deployment prompt - Add a hook — auto-lint after every edit
- Realise these work together — package them as a plugin
- Share the plugin — now the whole org is set up in one install
You don’t need to start with plugins. But when you find yourself explaining “install this skill, then add this command, then configure this hook” to every new teammate — that’s the signal to bundle it.