Build your own plugin & marketplace
The finale of the day: package everything you’ve learned into a plugin, and share it through your own marketplace. It sounds advanced — it’s really just folders and two small JSON files. Once you see it, you’ll never be intimidated by plugins again.
A plugin bundles the pieces from today — commands, skills, sub-agents, hooks — into one thing you can install in a single step, and share with your whole team or even the world.
01Why plugins
You’ve been creating loose files in .claude/. A plugin gathers them into a named, versioned package. Publish a few for your team and everyone gets the same commands, skills and safety hooks in one click — consistency across a whole company.
02Anatomy of a plugin
We’ll build independent-reviewer — a plugin that runs an independent review of recent changes (via Codex, or Claude if you prefer). It’s just a folder with a specific structure:
.claude-plugin/ plugin.json # the manifest: name, description, version commands/ # optional: slash commands skills/ # optional: skills agents/ # optional: sub-agents hooks/ hooks.json # the hook config (moved here from settings.json)
{
"name": "independent-reviewer",
"description": "Carry out an independent review of all changes since last commit",
"version": "0.1.0"
}.claude-plugin/ holds the plugin.json manifest (fixed name, fixed location). Alongside it, four optional folders — commands, skills, agents, hooks — carry the capabilities. Move the Stop hook from your settings.json into hooks/hooks.json so it travels with the plugin (and isn’t defined twice).
03Make a marketplace
To install a plugin properly (and let others add it), you publish it through a marketplace — another small JSON file at the top of the repo:
{
"name": "edtools",
"owner": { "name": "Ed", "email": "ed@example.com" },
"plugins": [
{ "name": "independent-reviewer", "source": "./independent-reviewer" }
]
}04Install & test it
With the JSON in place, use the /plugin menu. Add your local marketplace (./ points at the current repo), browse it, install the plugin at project scope, and restart.
Add the marketplace/plugin
Marketplaces → Add marketplace → ./ for your local repo (or a GitHub URL for a shared one).
Browse & installspace, enter
Open edtools → browse plugins → select independent-reviewer → install for all collaborators (project scope).
Restart & verify/plugin
Restart Claude Code; under Installed you’ll see independent-reviewer listed.
Prove the hook travelsthe payoff
Delete your local settings hook, ask Claude to write a README — and the review still fires, now from the plugin’s hook.
Push the repo to GitHub and anyone can add your marketplace by URL — your team, or the wider community. A company can run a private marketplace of its own blessed plugins. All from two little JSON files.
05Wrapping up the day — and looking ahead
That was a lot: slash commands, agents and sub-agents, a Codex cameo, hooks, and now plugins and marketplaces. If your head is spinning, that’s fine — most of these you’ll rarely need. The goal was a tour of what’s possible, so you know it exists and where to look.
Everything today pulls toward the same destination: automating the review-and-iterate loop across many agents. Custom commands, sub-agents and hooks are the building blocks of the swarms and orchestration on the wild day — controlled chaos, assembled from the pieces you just met.
We’re about 73% through the program — entering the home stretch. Things are getting harder, but only because you’re doing so much more. Next up: sandboxing — running all this craziness safely — and running Claude Code remotely.
✓ Key takeaways
- A plugin bundles commands, skills, sub-agents and hooks into one installable package.
- Structure:
.claude-plugin/plugin.jsonmanifest + optionalcommands/ skills/ agents/ hooks/folders. - A marketplace (
.claude-plugin/marketplace.json) lists plugins so you and others can install them via/plugin. - Hooks and skills travel with the plugin — install once and the whole setup comes along.
- These pieces are the foundation of week 3’s swarms and orchestration. Next: sandboxing.