New to Claude Skills? Learn how to install them →

How to Install, Manage and Reload Claude Code Plugins

How Claude Code's own plugin system works: marketplaces, installing plugins that bundle skills, agents and MCP servers, and applying changes with /reload-plugins without restarting.

September 4, 2026
Get Claude Skills
8 min read

What a plugin actually is

A Claude Code plugin is a bundle: a single installable unit that can add skills, subagents, hooks, MCP servers, and LSP (Language Server Protocol) servers to a session all at once, rather than you wiring each of those up individually. Plugins are distributed through marketplaces, catalogues of plugins someone else has published, and installing one is a two-step process: add the marketplace, then install the specific plugin you want from it.

It's worth being precise about naming here, because two different things share the word "plugin" in this ecosystem. Claude Code's plugin system, the subject of this guide, is Anthropic's own, predates and is unrelated to Agent Plugins, the separate cross-vendor open standard backed by Amazon, Cursor, Microsoft, OpenAI and Vercel that packages an Agent Skill and an MCP server into one folder. If you want the cross-vendor spec instead, see Agent Plugins explained. This guide is about Claude Code's own /plugin system specifically.

Where plugins come from: marketplaces

Claude Code adds the official Anthropic marketplace (claude-plugins-official) automatically the first time you start it interactively. If that fails, for example because your network blocked the download, add it yourself:

/plugin marketplace add anthropics/claude-plugins-official

Browse what's in it with /plugin, which opens a tabbed panel (Discover, Installed, Marketplaces, Errors), or at claude.com/plugins in a browser. The official marketplace groups plugins into a few recognisable categories: code intelligence plugins that wire up a language server for a given language (Go, Rust, TypeScript, Python and others, each needing its own binary installed separately), external integrations that bundle a pre-configured MCP server for tools like GitHub, Jira, Linear, Notion, Figma, Slack and Sentry, an automatic security-review plugin, development-workflow plugins like commit-commands and pr-review-toolkit, and a couple of output-style plugins.

Two other marketplaces are worth knowing about. The community marketplace (anthropics/claude-plugins-community) hosts third-party plugins that passed Anthropic's automated validation and safety screening, each pinned to a specific commit SHA; it isn't added automatically, so run /plugin marketplace add anthropics/claude-plugins-community first. A demo marketplace (anthropics/claude-code) ships example plugins that illustrate what the system can do, also added manually. Beyond those, anyone can create and distribute their own marketplace from a GitHub repo, another Git host, a local path, or a remote URL.

Installing a plugin

Once a marketplace is registered, install a named plugin from it:

/plugin install commit-commands@claude-code-plugins

The command opens the plugin's detail view, where you pick an installation scope:

  • User scope: installed for you, across every project
  • Project scope: installed for every collaborator on this repository, written to .claude/settings.json
  • Local scope: installed for you, in this repository only, not shared with collaborators

Before confirming, the detail view shows a Context cost estimate (how many tokens the plugin adds to your context window every turn), the plugin's Last updated date, and a Will install section listing exactly which commands, skills, agents, hooks, MCP servers and LSP servers it contributes. Not every plugin, particularly one from a local or custom marketplace, supplies all of that data; where it's missing, the panel shows Components will be discovered at installation instead.

For scripting or CI, claude plugin install is the non-interactive equivalent, installing to user scope by default:

claude plugin install commit-commands@claude-code-plugins --scope project

Plugin skills are namespaced by the plugin's name once installed, so commit-commands provides a skill you invoke as /commit-commands:commit rather than a bare /commit, which avoids collisions between plugins that happen to pick similar names.

Applying changes without restarting: /reload-plugins

Not every plugin change takes effect immediately. The install summary tells you which case you're in:

  • Plugin is now active.: Claude Code activated it as part of the install. Nothing more to do.
  • Run /reload-plugins to activate.: activating it would invalidate the prompt cache, or the activation attempt failed. Run the command.
/reload-plugins

If reloading would invalidate the prompt cache, the command warns first and skips unless you confirm with --force:

/reload-plugins --force

Reloading applies to every active plugin at once, not just the one you just installed, and the command reports counts for how many skills, agents, hooks, plugin MCP servers, and plugin LSP servers it reloaded. That skills count includes both a plugin's commands/ entries and its SKILL.md-based skills.

As of Claude Code v2.1.260 (3 September 2026), /reload-plugins also works in headless sessions, meaning the Claude Code desktop app, Remote Control, and other -p/SDK-driven sessions, not just an interactive terminal conversation. That closes a real gap: previously, applying a plugin change in a headless context meant restarting the whole session, which is disruptive for a long-running desktop or SDK-hosted conversation in a way it never was for a quick interactive terminal restart.

claude plugin install run from a shell, outside any running session, doesn't need /reload-plugins at all; Claude Code loads what it installed the next time you start a session. The command matters specifically for a session that's already open when you install, enable, or disable something in it.

Managing what's already installed

Run /plugin and go to the Installed tab to see everything you have, grouped by scope and sorted with problems first: plugins with load errors or unresolved dependencies at the top, your favourites next, disabled plugins collapsed at the bottom. From there you can favourite a plugin (f), filter by typing, or press Enter to enable, disable, or uninstall one.

For scripting, the equivalent commands skip the interactive panel:

/plugin list --enabled
/plugin disable plugin-name@marketplace-name
/plugin enable plugin-name@marketplace-name
/plugin uninstall plugin-name@marketplace-name

Claude Code also flags marketplace plugins you installed but haven't used in at least two weeks and at least ten sessions, under a Not used recently header, with a Last used line per plugin, useful for finding plugins that still cost context and startup time even though nothing invokes them any more. Organisation-managed plugins and anything loaded with --plugin-dir are exempt from that tracking, as are plugins that only contribute a theme, output style, monitor, or workflow, since those provide value without ever being explicitly invoked.

Auto-updates

Claude Code checks for marketplace and plugin updates in the background after a session starts, with a random delay of up to ten minutes so the session you're already in keeps using the versions it loaded at launch. If anything updated, you'll see a prompt to run /reload-plugins, or the new version simply loads at your next launch. claude-plugins-official and most other Anthropic marketplaces have auto-update on by default; third-party and local development marketplaces default to off. Toggle it per marketplace from /plugin → Marketplaces, or set "autoUpdate": true on an extraKnownMarketplaces entry in managed settings to enable it fleet-wide.

To turn off updates entirely, set DISABLE_AUTOUPDATER. If you want plugins to keep updating while Claude Code itself doesn't, pair it with FORCE_AUTOUPDATE_PLUGINS=1:

export DISABLE_AUTOUPDATER=1
export FORCE_AUTOUPDATE_PLUGINS=1

Team marketplaces

An admin can make a marketplace load automatically for every project collaborator by adding it to a committed .claude/settings.json:

{
  "extraKnownMarketplaces": {
    "my-team-tools": {
      "source": {
        "source": "github",
        "repo": "your-org/claude-plugins"
      }
    }
  }
}

Once a team member trusts the repository folder, Claude Code registers the marketplace with no further prompt. Since v2.1.195, this doesn't silently install plugins from an external source on their behalf, a plugin the project enables from a GitHub repo or npm package still waits for that person to run claude plugin install themselves, so a team can pre-register the catalogue without forcing arbitrary code onto every collaborator's machine unasked.

Security: read this before installing anything

Claude Code's own documentation is blunt about this, and it's worth repeating rather than softening: plugins and marketplaces are highly trusted components that can run arbitrary code on your machine with your user privileges. Only install from sources you trust, and use the Will install section on the detail view to see exactly what a plugin contributes before confirming. This is the same review-before-you-run habit this site recommends for a plain SKILL.md folder: a plugin can ship far more than a skill on its own, subagents, hooks that run automatically, and MCP servers with their own network access, so the case for reading before installing only gets stronger. Organisations that need to restrict this at scale can set managed marketplace restrictions so users can only add marketplaces an administrator has approved.

Troubleshooting

/plugin isn't recognised. Check your version with claude --version, then update: brew upgrade claude-code on Homebrew, npm install -g @anthropic-ai/claude-code@latest on npm, or re-run your native installer. Restart your terminal afterwards.

A newly installed plugin's skill doesn't show up. Check the install summary for Run /reload-plugins to activate. and run it. If it warns about invalidating the prompt cache, confirm with /reload-plugins --force.

Executable not found in $PATH after installing a code intelligence plugin. These plugins configure the LSP connection but don't install the language server binary itself. Install the binary the plugin's table names (for example rust-analyzer for the rust-analyzer-lsp plugin) separately.

Marketplace "claude-plugins-official" not found. Add it explicitly: /plugin marketplace add anthropics/claude-plugins-official, then retry the install.

A plugin a teammate enabled in .claude/settings.json isn't loading for me. Since v2.1.195, an externally sourced plugin enabled at project scope still needs each collaborator to run the claude plugin install command Claude Code shows for it; the project settings register the marketplace and the requirement, not the plugin's code itself.

Where this fits

Plugins are the highest-leverage way to hand Claude Code a coherent bundle of capability in one install, but they're not a replacement for a plain SKILL.md folder when all you need is one portable skill that should also work in Codex CLI, Cursor, or Antigravity: a skill on its own, without a plugin wrapper, stays fully portable across every agent that reads the Agent Skills standard, where a plugin's other components (hooks, MCP servers) are Claude Code-specific. For everything else Claude Code supports, see its platform page, and for the standard plugins can bundle skills from, browse all skills.

Frequently asked questions