◆ Vibe EngineeringSMIT · AI Agentic Engineering Urdu
Class 12 · 12.6

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.

🎯 Goal: ship a shareable plugin⏱ Read: 14 min📦 Type: hands-on + wrap-up

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:

independent-reviewer/
.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)
.claude-plugin/plugin.json
{
  "name": "independent-reviewer",
  "description": "Carry out an independent review of all changes since last commit",
  "version": "0.1.0"
}
The two special folder names

.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:

.claude-plugin/marketplace.json
{
  "name": "edtools",
  "owner": { "name": "Ed", "email": "ed@example.com" },
  "plugins": [
    { "name": "independent-reviewer", "source": "./independent-reviewer" }
  ]
}
Marketplaceedtools Pluginindependent-reviewer commands/ — slash commandsskills/ — skillsagents/ — sub-agentshooks/ — hooks.json
A marketplace lists plugins; each plugin bundles any mix of commands, skills, sub-agents and hooks.

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.

Share it anywhere

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.

Where this is heading

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.json manifest + optional commands/ 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.