# Claude Code Plugins
Claude Code supports a plugin system for extending its capabilities with [[Claude Code Skills|skills]], agents, [[Claude Code Hooks|hooks]], and [[Claude Code MCP Integration|MCP servers]]. Plugins are discovered and installed through marketplaces.
## Official Anthropic marketplace
Automatically available. Browse with `/plugin` → **Discover** tab. Install with:
```
/plugin install plugin-name@claude-plugins-official
```
## Plugin categories
- **Code intelligence** (LSP): [[Language Server Protocol (LSP)|language server integrations]] for TypeScript, Python, Rust, Go, Java, C/C++, etc. Gives Claude automatic diagnostics after edits and precise code navigation
- **External integrations**: pre-configured MCP servers for GitHub, GitLab, Jira, Confluence, Linear, Notion, Figma, Slack, Sentry, Vercel, Firebase, Supabase, etc.
- **Development workflows**: commit-commands, pr-review-toolkit, agent-sdk-dev, plugin-dev
- **Output styles**: explanatory and learning output modes
## Managing plugins
- `/plugin` opens the interactive manager (Discover, Installed, Marketplaces, Errors tabs)
- Installation scopes: user (default, all projects), project (shared via `.claude/settings.json`), local (repo-only, not shared)
- `/plugin disable`, `/plugin enable`, `/plugin uninstall` for lifecycle management
- `/reload-plugins` to apply changes without restarting
## Third-party marketplaces
Add via `/plugin marketplace add`:
- GitHub: `owner/repo`
- Git URL: `https://gitlab.com/company/plugins.git`
- Local path: `./my-marketplace`
- Remote URL: `https://example.com/marketplace.json`
Team admins can set up automatic marketplace installation via `extraKnownMarketplaces` in `.claude/settings.json`.
Not to be confused with the [[Claude Marketplace]] (claude.com/marketplace), Anthropic's commercial storefront for connectors, plugins, partner agents and service partners. To get a plugin or mod listed by Anthropic, you submit it through the Claude directory (claude.ai/directory/manage).
## Plugin Structure
Each plugin can bundle any combination of four component types:
1. **Slash Commands** -- custom shortcuts for frequent operations
2. **Subagents** -- purpose-built agents for specialized development tasks
3. **MCP Servers** -- connections to external tools and data sources via [[Model Context Protocol (MCP)]]
4. **Hooks** -- behavior modifications at key workflow points (code reviews, testing, etc.)
Plugins are toggled on/off as needed to reduce system prompt context when not in use.
Since October 2026, a plugin can also carry **mods**: JS/TS handlers referenced from `hooks/hooks.json` that run inside Claude Code (see below).
## Plugin Marketplaces
Curated collections hosted in git repos or URLs containing a `.claude-plugin/marketplace.json` file. Anyone can create a marketplace.
- Add: `/plugin marketplace add user-or-org/repo-name`
- Team admins can set up automatic marketplace installation via `extraKnownMarketplaces` in `.claude/settings.json`
## Testing plugins
- `claude plugin validate` checks a plugin's files for syntax and schema errors
- `claude plugin eval` checks its *behaviour*: runs each test case with and without the plugin and reports the delta. See [[Claude Code Plugin Evals]]
- `--plugin-dir` pointed at a folder of plugins loads each immediate subfolder that has a manifest (v2.1.269)
- `claude plugin install|uninstall|update|enable|disable --json` prints the result as one JSON object on the last line of stdout
## Mods (function hooks)
Plugins can now hook into Claude Code with TypeScript functions instead of shell commands, including rendering UI. See [[Claude Code Mods]].
Mods launched on 2026-10-01 and are on by default from v2.1.287. They ship inside plugins, so you install, share and manage them exactly like any other plugin, and admins keep the same controls (plus mod-specific policies). What changed for plugins:
- `/plugin` shows active mods ("1 mod active · first-mod")
- Some of Claude Code's own features are now **built-in plugins** (`@builtin`), e.g. `cc-plugin-diff` (the `/diff` pane) and `cc-plugin-you-should-know` (enable with `/plugin enable cc-plugin-you-should-know@builtin`)
- `claude plugin validate` lists what a mod hooks and calls without running it; `claude plugin test` runs its tests (`*.test.ts` files with the `claude-code/testing` kit: no session, no sign-in, no network, exit code 1 on failure)
- Develop a mod with `--plugin-dir` against your working copy: an installed plugin is cached by version, so edits only reach it after a version bump and a reinstall
- Mods aren't sandboxed. Read a shared plugin's code before installing it, [[Software Supply Chain Security|like any dependency]]
## Example Plugins (Anthropic)
- PR review plugin
- Security guidance plugin
- Claude Agent SDK development plugin
- Meta-plugin for creating new plugins
- Code modernization plugin: uses a mod to draw a live status pane while agents work through a codebase (https://github.com/anthropics/claude-plugins-official/tree/main/plugins/code-modernization)
## References
- Announcement: https://www.anthropic.com/news/claude-code-plugins
- Discover plugins: https://code.claude.com/docs/en/discover-plugins
- Mods overview: https://code.claude.com/docs/en/plugins/mods/overview
- Getting started with Claude Code mods (packaging and publishing): https://claude.dev/blog/getting-started-with-claude-code-mods
- Claude Marketplace: https://claude.com/marketplace
## Related
- [[Claude Code]]
- [[Claude Code Skills]]
- [[Claude Code MCP Integration]]
- [[Claude Code Hooks]]
- [[Claude Code Plugin Evals]]
- [[Claude Code Mods]]
- [[Claude Code Extension Points]]
- [[Claude Marketplace]]
- [[Claude Code Security Guidance Plugin]]
- [[Agent Plugins Specification]]