A package icon with skill cards and hooks flowing into a Claude Code session
blog

What Is a Claude Code Plugin?

Install one, enable it, disable it — and when you'd actually want to. 🚦

Claude
Agent Skills
Agent Workflows
A package icon with skill cards and hooks flowing into a Claude Code session

Claude Code plugins extend your agent with skills, agents, hooks, and MCP servers — packaged and distributed through marketplaces. Here's how they work and how to use them.

Mini 4 min read

Skills, hooks, MCP servers, agents — all of it can be packaged, versioned, and shared as a Claude Code plugin. Install once, and every session has those capabilities without any extra setup.


What a Plugin Is

A plugin extends Claude Code with any combination of:

  • Skills — instruction sets that tell Claude how to handle specific tasks
  • Agents — specialized subagents for particular workflows
  • Hooks — scripts that run at defined points in the session lifecycle
  • MCP servers — pre-configured connections to external services

Plugins are distributed through marketplaces — catalogs where you browse and install what you need. Adding a marketplace and installing a plugin are two separate steps, like adding an app store before downloading apps.


The Official Marketplace

The official Anthropic marketplace (claude-plugins-official) is available by default. Run /plugin and go to the Discover tab to browse it, or install directly:

/plugin install github@claude-plugins-official

If a plugin isn’t found, refresh the marketplace first:

/plugin marketplace update claude-plugins-official

What’s in it

Code intelligence — LSP plugins that give Claude real-time diagnostics and code navigation. After every edit, Claude sees type errors and missing imports automatically, without running a compiler. Available for TypeScript, Python, Go, Rust, C/C++, Java, and more. Requires the language server binary installed on your system.

External integrations — pre-configured MCP servers for GitHub, GitLab, Linear, Notion, Figma, Slack, Sentry, Vercel, Supabase, and others. No manual MCP setup needed.

Development workflows — skills and agents for git commits, PR review, and Agent SDK development. obra/superpowers is a good third-party example of this category: 14 skills that enforce TDD, structured debugging, and design-first workflows.

Output styles — plugins that change how Claude explains its work (educational mode, interactive learning).


Installing and Managing Plugins

Install (defaults to user scope — available across all your projects):

/plugin install plugin-name@marketplace-name

To choose a different scope, use the interactive UI: run /pluginDiscover → select a plugin → pick User, Project, or Local scope.

After installing, reload to activate:

/reload-plugins

Disable without uninstalling:

/plugin disable plugin-name@marketplace-name

Re-enable:

/plugin enable plugin-name@marketplace-name

Remove completely:

/plugin uninstall plugin-name@marketplace-name

The Installed tab in /plugin lists everything grouped by scope. Plugins with errors appear at the top. You can also filter by name, favorite plugins, and manage them all from there.


Adding Other Marketplaces

You’re not limited to the official marketplace. Add any catalog from GitHub, a git URL, a local path, or a hosted JSON file:

# GitHub repo
/plugin marketplace add anthropics/claude-code

# Git URL (GitLab, self-hosted, etc.)
/plugin marketplace add https://gitlab.com/your-org/plugins.git

# Local development
/plugin marketplace add ./my-marketplace

For teams, add extraKnownMarketplaces to .claude/settings.json — when teammates trust the repo folder, Claude Code prompts them to install the configured marketplaces and plugins automatically.


Creating a Plugin

The fastest way to start is installing the official plugin-dev toolkit:

/plugin install plugin-dev@claude-plugins-official

At its core, a plugin is a directory with a manifest, your extension files, and optionally a session-start hook:

my-plugin/
├── .claude-plugin/
│   └── plugin.json       ← manifest (name, version, description)
├── skills/
│   └── pr-checklist/
│       └── SKILL.md      ← instruction set
└── hooks/
    └── session-start     ← injects context at startup

A minimal skill:

---
name: pr-checklist
description: Runs a checklist before any PR is created
---

## When to Use
When the user asks to open a PR or push changes.

## Instructions
Before proceeding, verify:
- [ ] Tests pass locally
- [ ] No debug logs left in the diff
- [ ] Migrations included if schema changed

Once built, install it locally for testing:

/plugin install ./my-plugin
/reload-plugins

Plugin skills are namespaced to avoid conflicts: my-plugin:pr-checklist.

Link copied to clipboard