← Claude Code Hub
✦ Tip #031 Mar 22, 2026

Claude Code Plugins: Nothing New — Just Packaging What You Already Know

A Claude Code plugin isn't anything new. It's packaging skills, subagents, hooks, and MCP into a shareable format with a single command.

TL;DR A Claude Code plugin isn't a new technology. It's a directory that bundles skills, subagents, hooks, MCP servers, and settings — everything you already know — into an installable, shareable format with a single command.

If you see "plugins" and think "another thing to learn," relax. There's no new API, no new syntax, no new concept. A plugin is literally your .claude/ directory packaged up: the same skills, the same agents, the same hooks. The difference is you can now share it with your team or the community via /plugin install.

Think of it as a package.json for Claude Code configuration: a manifest declaring what's inside and a directory structure that Claude Code knows how to read.

Result — a plugin's structure:

my-plugin/
├── .claude-plugin/
│   └── plugin.json          # Manifest: name, version, description
├── skills/
│   └── code-review/
│       └── SKILL.md          # Skill with its prompt
├── agents/
│   └── reviewer.md           # Custom subagent
├── hooks/
│   └── hooks.json            # Lifecycle hooks
├── .mcp.json                 # MCP servers
└── settings.json             # Default settings

How to use it

1. Install an existing plugin

/plugin install code-review@claude-plugins-official

Anthropic's official marketplace is claude-plugins-official. Teams can create their own marketplace and distribute plugins with one command. One official plugin worth trying: mcp-server-dev, which has Claude build you a whole MCP server.

2. Create a plugin from scratch

mkdir -p my-plugin/.claude-plugin
// my-plugin/.claude-plugin/plugin.json
{
  "name": "my-plugin",
  "description": "My team workflows packaged up",
  "version": "1.0.0"
}

Add skills in skills/, agents in agents/, hooks in hooks/hooks.json. Same syntax you already use in .claude/.

3. Test locally

claude --plugin-dir ./my-plugin

Skills appear namespaced: /my-plugin:skill-name.

And if that plugin is already installed, your local copy shadows the installed one for that session, so you test the change without uninstalling anything or bumping the version.

And before you hand it to anyone, claude plugin validate tells you which lines will be ignored at load time.

4. Convert existing configuration to a plugin

If you already have skills and hooks in .claude/, it's copy and paste:

cp -r .claude/commands my-plugin/
cp -r .claude/agents my-plugin/
cp -r .claude/skills my-plugin/

Reference

Component Plugin location Standalone equivalent
Skills skills/ .claude/skills/
Subagents agents/ .claude/agents/
Hooks hooks/hooks.json settings.jsonhooks
MCP servers .mcp.json Project .mcp.json
Settings settings.json .claude/settings.json
Manifest .claude-plugin/plugin.json Doesn't exist — this is the new part
Aspect Detail
Install /plugin install name@marketplace
Test locally claude --plugin-dir ./path
Reload /reload-plugins (no restart needed)
Namespace /plugin-name:skill
Versioning Semver in plugin.json

Official docs: Create plugins

Free guide

The 51 essentials, as a guide.

One page per tip. Five chapters. What I actually use daily in production. No theory, no fluff.

  • I. Getting started 10 tips
  • II. Awareness 3 tips
  • III. Mastery 22 tips
  • IV. Autonomy 10 tips
  • V. Comparison 6 tips
Are you a professional Web developer?

You'll receive the guide by email · You join the Gravitas newsletter · Unsubscribe anytime

of 51
#

Wmedia · 51 Tips
Free guide · 51 tips · 5 chapters

The 51 essentials, as a guide.

Are you a professional Web developer? · Unsubscribe anytime
Workshop for teams

Multiply your team's output without sacrificing quality: a 6 to 8 hour AI First workshop, online, on the Claude platform.

See the workshop

Want the 51 Claude Code essentials as a guide?