Skip to content

Discover and install prebuilt plugins through marketplaces

Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt Use this file to discover all available pages before exploring further.

Find and install plugins from marketplaces to extend Claude Code with new skills, agents, and capabilities.

Plugins extend Claude Code with skills, agents, hooks, and MCP servers. Plugin marketplaces are catalogs that help you discover and install these extensions without building them yourself.

Looking to create and distribute your own marketplace? See Create and distribute a plugin marketplace.

A marketplace is a catalog of plugins that someone else has created and shared. Using a marketplace is a two-step process:

This registers the catalog with Claude Code so you can browse what's available. No plugins are installed yet. Browse the catalog and install the plugins you want.

Claude Code adds the official Anthropic marketplace (claude-plugins-official) automatically the first time you start it interactively. If Claude Code can’t add it, for example because your network blocks the download or a marketplace policy blocked an earlier attempt, add it yourself with /plugin marketplace add anthropics/claude-plugins-official.

To browse what’s available, run /plugin and go to the Discover tab, or view the catalog at claude.com/plugins.

To install a plugin from the official marketplace, use /plugin install <name>@claude-plugins-official. For example, to install the GitHub integration:

Terminal window
/plugin install github@claude-plugins-official

/plugin opens an interactive panel in the terminal CLI. If Claude replies that /plugin isn’t available in this environment, use the plugin browser in the Claude desktop app, or declare the plugin under enabledPlugins in .claude/settings.json for cloud sessions.

If the install fails, match the message Claude Code reports:

  • Marketplace "claude-plugins-official" not found: add the marketplace with /plugin marketplace add anthropics/claude-plugins-official, then retry the install.
  • The plugin is not found in the marketplace: check the plugin name. Claude Code refreshes a stale marketplace catalog and retries before reporting this, so if you turned off marketplace auto-update, refresh manually with /plugin marketplace update claude-plugins-official and retry the install.
The official marketplace is curated by Anthropic, and inclusion is at Anthropic's discretion. The in-app submission forms add plugins to the [community marketplace](#community-marketplace), not the official one. To distribute plugins independently, [create your own marketplace](/docs/en/plugin-marketplaces) and share it with users.

The official marketplace includes several categories of plugins:

Code intelligence plugins enable Claude Code’s built-in LSP tool, giving Claude the ability to jump to definitions, find references, and see type errors immediately after edits. These plugins configure Language Server Protocol connections, the same technology that powers VS Code’s code intelligence.

Install the language server binary from the table below before using these plugins; the plugin doesn’t install it for you. If you already have a language server installed, Claude may prompt you to install the corresponding plugin when you open a project.

Language Plugin Binary required
C/C++ clangd-lsp clangd
C# csharp-lsp csharp-ls
Go gopls-lsp gopls
Java jdtls-lsp jdtls
Kotlin kotlin-lsp kotlin-language-server
Lua lua-lsp lua-language-server
PHP php-lsp intelephense
Python pyright-lsp pyright-langserver
Rust rust-analyzer-lsp rust-analyzer
Swift swift-lsp sourcekit-lsp
TypeScript typescript-lsp typescript-language-server

You can also create your own LSP plugin for other languages.

If you see `Executable not found in $PATH` in the `/plugin` Errors tab after installing a plugin, install the required binary from the table above.

What Claude gains from code intelligence plugins

Section titled “What Claude gains from code intelligence plugins”

Once a code intelligence plugin is installed and its language server binary is available, Claude gains two capabilities:

  • Automatic diagnostics: after every file edit Claude makes, the language server reports errors and warnings back, so Claude sees type errors, missing imports, and syntax issues without running a compiler or linter. If Claude introduces an error, it notices and fixes it in the same turn.
  • Code navigation: Claude can use the language server to jump to definitions, find references, get type info on hover, list symbols, find implementations, and trace call hierarchies. These operations give Claude more precise navigation than grep-based search, though availability may vary by language and environment.

You don’t need to configure diagnostics beyond installing the plugin. To read them yourself, press Ctrl+O when Claude Code shows an indicator such as Found 3 new diagnostic issues in 2 files.

If you run into issues, see Code intelligence troubleshooting.

These plugins bundle pre-configured MCP servers so you can connect Claude to external services without manual setup:

  • Source control: github, gitlab
  • Project management: atlassian (Jira/Confluence), asana, linear, notion
  • Design: figma
  • Infrastructure: vercel, firebase, supabase
  • Communication: slack
  • Monitoring: sentry

The security-guidance plugin reviews each change Claude makes for common vulnerabilities and instructs Claude to fix what it finds in the same session. See Catch security issues as Claude writes code for what it checks and how to add project-specific rules.

Plugins that add skills and agents for common development tasks:

  • commit-commands: Git commit workflows including commit, push, and PR creation
  • pr-review-toolkit: specialized agents for reviewing pull requests
  • agent-sdk-dev: tools for building with the Claude Agent SDK
  • plugin-dev: toolkit for creating your own plugins

Customize how Claude responds:

  • explanatory-output-style: educational insights about implementation choices
  • learning-output-style: interactive learning mode for skill building

The community marketplace at anthropics/claude-plugins-community hosts third-party plugins that have passed Anthropic’s automated validation and safety screening. Each plugin is pinned to a specific commit SHA in the catalog. Unlike the official marketplace, you add it manually:

Terminal window
/plugin marketplace add anthropics/claude-plugins-community

Then install plugins from it using the claude-community marketplace name:

Terminal window
/plugin install <plugin-name>@claude-community

To submit your own plugin to the community marketplace, see Submit your plugin to the community marketplace in the create-plugins guide.

Anthropic also maintains a demo plugins marketplace (claude-code-plugins) with example plugins that show what’s possible with the plugin system. Unlike the official marketplace, you need to add this one manually.

From within Claude Code, run the `plugin marketplace add` command for the `anthropics/claude-code` marketplace:
```shell theme={null}
/plugin marketplace add anthropics/claude-code
```
This downloads the marketplace catalog and makes its plugins available to you.
Run `/plugin` to open the plugin manager. This opens a tabbed interface with four tabs you can cycle through using **Tab**, or **Shift+Tab** to go backward:
* **Discover**: browse available plugins from all your marketplaces
* **Installed**: view and manage your installed plugins
* **Marketplaces**: add, remove, or update your added marketplaces
* **Errors**: view any plugin loading errors
Go to the **Discover** tab to see plugins from the marketplace you just added. When your administrator has allowlisted the marketplace via the [`pluginSuggestionMarketplaces`](/docs/en/settings#available-settings) managed setting, plugins marked as relevant to your current working directory are pinned at the top with a **suggested for this directory** label.
Select a plugin to view its details. The details pane shows what the plugin contains and what it costs:
* A **Context cost** estimate so you can see how many tokens the plugin will add to your [context window](/docs/en/features-overview#understand-context-costs) every turn
* The plugin's **Last updated** date
* A **Will install** section listing the plugin's commands, agents, skills, hooks, and MCP and LSP servers, so you can review exactly what it adds before installing
Not every plugin provides the data behind these fields. For plugins from local or custom marketplaces, you may not see the **Context cost** and **Last updated** rows, and the **Will install** section may show **Components will be discovered at installation** instead.
Choose an installation scope:
* **User scope**: install for yourself across all projects
* **Project scope**: install for all collaborators on this repository
* **Local scope**: install for yourself in this repository only
For example, select **commit-commands**, a plugin that adds git workflow skills, and install it to your user scope.
You can also start the install from the command line:
```shell theme={null}
/plugin install commit-commands@claude-code-plugins
```
See [Configuration scopes](/docs/en/settings#configuration-scopes) to learn more about scopes.
Check the install summary: if it reports `Run /reload-plugins to activate.`, run `/reload-plugins`, and if that warns that the reload will re-read the conversation, rerun it as `/reload-plugins --force`.
Plugin skills are namespaced by the plugin name, so **commit-commands** provides skills like `/commit-commands:commit`.
Try it out by making a change to a file and running:
```shell theme={null}
/commit-commands:commit
```
This stages your changes, generates a commit message, and creates the commit.
Each plugin works differently. Check the plugin's details in the **Discover** tab to see the commands and skills it provides, or visit its homepage for usage guidance.

Use the /plugin marketplace add command to add marketplaces from different sources.

**Shortcuts**: You can use `/plugin market` instead of `/plugin marketplace`, and `rm` instead of `remove`.
  • GitHub repositories: owner/repo format, for example anthropics/claude-code
  • Git URLs: any git repository URL, including GitLab, Bitbucket, and self-hosted servers
  • Local paths: directories or direct paths to marketplace.json files
  • Remote URLs: direct URLs to hosted marketplace.json files

Add a GitHub repository that contains a .claude-plugin/marketplace.json file using the owner/repo format, where owner is the GitHub username or organization and repo is the repository name.

For example, anthropics/claude-code refers to the claude-code repository owned by anthropics:

Terminal window
/plugin marketplace add anthropics/claude-code

Add any git repository by providing the full URL. This works with any Git host, including GitLab, Bitbucket, and self-hosted servers. Include the .git suffix so Claude Code clones the repository rather than treating the URL as a direct link to a hosted marketplace.json file.

Include the https:// prefix as well. Claude Code v2.1.196 and later reject a host typed without it, such as gitlab.com/company/plugins.git, as an invalid GitHub owner/repo shorthand, and the error tells you to add the prefix. Earlier versions misread it as a GitHub repository path and fail at clone time.

Using HTTPS:

Terminal window
/plugin marketplace add https://gitlab.com/company/plugins.git

Using SSH:

Terminal window
/plugin marketplace add git@gitlab.com:company/plugins.git

To add a specific branch or tag, append # followed by the ref:

Terminal window
/plugin marketplace add https://gitlab.com/company/plugins.git#v1.0.0

Add a local directory that contains a .claude-plugin/marketplace.json file:

Terminal window
/plugin marketplace add ./my-marketplace

You can also add a direct path to a marketplace.json file:

Terminal window
/plugin marketplace add ./path/to/marketplace.json

Add a remote marketplace.json file via URL:

Terminal window
/plugin marketplace add https://example.com/marketplace.json
URL-based marketplaces have some limitations compared to Git-based marketplaces. If you encounter "path not found" errors when installing plugins, see [Troubleshooting](/docs/en/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces).

Once you’ve added marketplaces, you can install a plugin by name:

Terminal window
/plugin install plugin-name@marketplace-name

The command opens that plugin’s details, where you choose an installation scope. You see the same choices when you run /plugin, go to the Discover tab, and press Enter on a plugin:

  • User scope: install for yourself across all projects
  • Project scope: install for all collaborators on this repository, which adds the plugin to .claude/settings.json
  • Local scope: install for yourself in this repository only, not shared with collaborators

To install without an interactive step, use the claude plugin install shell command, which installs to user scope unless you pass --scope.

You may also see plugins with managed scope. These are installed by administrators via managed settings and can’t be modified.

If the plugin isn’t in your local copy of the marketplace catalog, what happens depends on marketplace auto-update:

  • Auto-update on: Claude Code refreshes the catalog once and retries the lookup before reporting that the plugin is not found.
  • Auto-update off: refresh the catalog yourself with /plugin marketplace update <marketplace-name> and retry the install.

Before v2.1.221, Claude Code reported the plugin as not found without refreshing, so run the manual update on those versions too.

When you install from the /plugin interface, the install summary tells you whether the plugin is active in your current session:

  • Plugin is now active.: Claude Code activated the plugin as part of the install.
  • Run /reload-plugins to activate.: the plugin isn’t active yet, because activating it would invalidate the prompt cache or because the activation attempt failed. Run the command to activate the plugin.
  • If the plugin fails to load, the summary reports the failure and the /plugin Errors tab shows the detail.

Before v2.1.221, no install took effect in the current session until you ran /reload-plugins or restarted.

The claude plugin install shell command doesn’t run in a session, so Claude Code loads the plugins it installs the next time you start Claude Code, or when you run /reload-plugins in a session that’s already open.

Make sure you trust a plugin before installing it. Anthropic doesn't control what MCP servers, files, or other software are included in plugins and can't verify that they work as intended. Check each plugin's homepage for more information.

Run /plugin and go to the Installed tab to view, enable, disable, or uninstall your plugins. The list is grouped by scope and sorted so you see problems first: plugins with load errors or unresolved dependencies appear at the top, followed by your favorites, with disabled plugins folded behind a collapsed header at the bottom.

From the list you can:

  • press f to favorite or unfavorite the selected plugin
  • type to filter by plugin name or description
  • press Enter to open a plugin’s detail view and enable, disable, or uninstall it

When you uninstall a plugin that a project’s .claude/settings.json enables, Claude Code asks which scope you mean: disable it for you alone, which writes an override to your .claude/settings.local.json and leaves the plugin installed for the project, or uninstall it for everyone, which removes it from the shared .claude/settings.json.

The detail view shows the components the plugin contributes: commands, skills, agents, hooks, MCP servers, and LSP servers. The same inventory is available from the command line with claude plugin details.

Claude Code also lists marketplace plugins you installed yourself but haven’t used in at least two weeks, over a span of at least 10 sessions, under a Not used recently header in the Installed tab. The detail view shows a Last used line for each plugin. Use these to find plugins that still add startup and context cost even though you no longer use them, then disable or uninstall them.

Two kinds of plugins are never listed as unused:

  • plugins that your organization manages or that you load with --plugin-dir
  • plugins that contribute a theme, output style, monitor, or workflow, since those deliver value without an invocation to track

The Not used recently header and the Last used line are both hidden when your organization restricts marketplaces with strictKnownMarketplaces.

A plugin’s language server counts as used when it delivers diagnostics or answers a code navigation request, so an LSP plugin whose server is active in your sessions isn’t listed as unused. Before v2.1.203, language server activity couldn’t be counted as use, so plugins that contribute an LSP server were exempt from the group entirely, the same way theme and output style plugins still are.

The first session on a version that counts language server activity also resets the usage record of each LSP plugin that hadn’t recorded any use yet, so Claude Code doesn’t judge a plugin you installed earlier as unused based on data recorded before its server activity was tracked.

When you install a plugin that declares dependencies, the install output lists which dependencies were auto-installed alongside it.

You can also manage plugins with direct commands:

  • When you run /plugin disable, /plugin enable, or /plugin uninstall, Claude Code opens the plugin panel to apply the change and leaves it open. Press Esc to close the panel before typing another command.
  • For scripting, use the claude plugin shell commands instead, which don’t open the panel.

List installed plugins without opening the menu:

Terminal window
/plugin list

Pass --enabled or --disabled to show only plugins in that state.

Disable a plugin without uninstalling:

Terminal window
/plugin disable plugin-name@marketplace-name

Re-enable a disabled plugin:

Terminal window
/plugin enable plugin-name@marketplace-name

In these identifiers, plugin-name is the plugin’s name in the marketplace entry, which can differ from the name in the plugin’s own plugin.json.

As of Claude Code v2.1.195, Enable and Disable in the /plugin interface work for plugins whose two names differ, and /plugin enable and /plugin disable accept either name. When you disable such a plugin in an earlier version, Claude Code reports already disabled and leaves it enabled.

Completely remove a plugin:

Terminal window
/plugin uninstall plugin-name@marketplace-name

The --scope option lets you target a specific scope with CLI commands:

Terminal window
claude plugin install formatter@your-org --scope project
claude plugin uninstall formatter@your-org --scope project

When the install summary reports Plugin is now active., Claude Code already activated the plugin, and you can skip this step. For everything else, plugins you enabled or disabled during the session and installs whose summary reports Run /reload-plugins to activate., apply all changes without restarting:

Terminal window
/reload-plugins

When the reload would invalidate the prompt cache, the command warns and skips until you rerun it with --force.

Claude Code reloads all active plugins and shows counts for plugins, skills, agents, hooks, plugin MCP servers, and plugin LSP servers. The skills count covers only each plugin’s commands/ directory, not its skills/ directory, so the summary can report 0 skills even when the plugin’s skills reloaded.

Reloading has a token cost on the next request: newly loaded components announce themselves in content appended to the conversation, while the existing history still reads from the prompt cache. A plugin that provides MCP servers costs more when its tools aren’t deferred by tool search: the change invalidates the cache and the next request re-reads the entire conversation. In that case /reload-plugins shows a warning and does not apply the reload; pass --force to apply anyway. See enabling or disabling a plugin for details.

You can manage marketplaces through the interactive /plugin interface or with CLI commands.

Run /plugin and go to the Marketplaces tab to:

  • View all your added marketplaces with their sources and status
  • Add new marketplaces
  • Update marketplace listings to fetch the latest plugins
  • Remove marketplaces you no longer need

You can also manage marketplaces with direct commands.

List all configured marketplaces:

Terminal window
/plugin marketplace list

Refresh plugin listings from a marketplace:

Terminal window
/plugin marketplace update marketplace-name

Remove a marketplace:

Terminal window
/plugin marketplace remove marketplace-name
Removing a marketplace will uninstall any plugins you installed from it.

Claude Code can automatically update marketplaces and their installed plugins in the background after startup. When auto-update is enabled for a marketplace, Claude Code refreshes the marketplace data and updates installed plugins to their latest versions on disk.

Claude Code checks for marketplace and plugin updates after your session starts, with a random delay of up to ten minutes, so the running session keeps using the versions it loaded at launch. If any plugins were updated, you’ll see a notification prompting you to run /reload-plugins, or the new versions load on your next launch.

Toggle auto-update for individual marketplaces through the UI:

  1. Run /plugin to open the plugin manager
  2. Select Marketplaces
  3. Choose a marketplace from the list
  4. Select Enable auto-update or Disable auto-update

Official Anthropic marketplaces have auto-update enabled by default. Third-party and local development marketplaces have auto-update disabled by default.

Administrators can also set "autoUpdate": true on each extraKnownMarketplaces entry in managed settings to enable auto-update for an organization marketplace without requiring each user to toggle it.

To disable all automatic updates entirely for both Claude Code and all plugins, set the DISABLE_AUTOUPDATER environment variable. See Auto updates for details.

To keep plugin auto-updates enabled while disabling Claude Code auto-updates, set FORCE_AUTOUPDATE_PLUGINS=1 along with DISABLE_AUTOUPDATER:

Terminal window
export DISABLE_AUTOUPDATER=1
export FORCE_AUTOUPDATE_PLUGINS=1

This is useful when you want to manage Claude Code updates manually but still receive automatic plugin updates.

Team admins can set up automatic marketplace installation for projects by adding marketplace configuration to .claude/settings.json. When team members trust the repository folder, Claude Code prompts them to install these marketplaces and plugins.

As of Claude Code v2.1.195, this install step applies on every path that loads plugins. A plugin that only the project’s .claude/settings.json enables, and that comes from an external source such as a GitHub repository or npm package, doesn’t load until the team member installs it. Until then, Claude Code reports the plugin as not installed and shows the claude plugin install command to run.

Add extraKnownMarketplaces to your project’s .claude/settings.json:

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

For full configuration options including extraKnownMarketplaces and enabledPlugins, see Plugin settings.

Plugins and marketplaces are highly trusted components that can execute arbitrary code on your machine with your user privileges. Only install plugins and add marketplaces from sources you trust. Organizations can restrict which marketplaces users are allowed to add using managed marketplace restrictions.

If you see “unknown command” or the /plugin command doesn’t appear:

  1. Check your version: run claude --version to see what’s installed.
  2. Update Claude Code:
    • Homebrew: brew upgrade claude-code, or brew upgrade claude-code@latest if you installed that cask
    • npm: npm install -g @anthropic-ai/claude-code@latest
    • Native installer: re-run the install command from Setup
  3. Restart Claude Code: after updating, restart your terminal and run claude again.

If plugin skills don’t appear, clear the cache with rm -rf ~/.claude/plugins/cache, restart Claude Code, and reinstall the plugin.

For detailed troubleshooting with solutions, see Troubleshooting in the marketplace guide. For debugging tools, see Debugging and development tools.

  • Language server not starting: verify the binary is installed and available in your $PATH. Check the /plugin Errors tab for details.
  • High memory usage: language servers like rust-analyzer and pyright can consume significant memory on large projects. If you experience memory issues, disable the plugin with /plugin disable <plugin-name> and rely on Claude’s built-in search tools instead.
  • False positive diagnostics in monorepos: language servers may report unresolved import errors for internal packages if the workspace isn’t configured correctly. These don’t affect Claude’s ability to edit code.