Claude Code Plugin
Claude Code plugin manifest.
| Type | object |
|---|---|
| File match |
**/.claude-plugin/plugin.json
.claude-plugin/plugin.json
|
| Schema URL | https://catalog.lintel.tools/schemas/claude-code/plugin/latest.json |
Validate with Lintel
npx @lintel/lintel check
Schema for Claude Code plugin manifest (.claude-plugin/plugin.json). Plugins extend Claude Code with reusable skills, agents, hooks, MCP servers, and LSP servers that can be shared across projects and teams via marketplaces. The manifest defines plugin metadata and optionally declares custom component paths. Components in default locations (commands/, agents/, skills/, hooks/hooks.json, .mcp.json, .lsp.json) are auto-discovered even without a manifest. The manifest is optional — if omitted, the directory name becomes the plugin name. See plugin manifest schema for the complete reference.
Properties
Unique identifier for the plugin (kebab-case, no spaces). This name namespaces all plugin components — skills appear as /plugin-name:skill-name, agents as plugin-name:agent-name, etc. Users see this in install commands (e.g. /plugin install my-plugin@marketplace). If the manifest is omitted entirely, the directory name is used instead.
Semantic version (MAJOR.MINOR.PATCH). Claude Code uses this to detect updates — if you change code without bumping the version, existing users won't see updates due to caching. If also set in a marketplace entry, the plugin.json version takes priority. Use pre-release versions like 2.0.0-beta.1 for testing. See version management.
Brief explanation of the plugin's purpose. Shown in the plugin manager when browsing or installing plugins.
Author information for attribution.
URL to the plugin's documentation or landing page.
URL to the plugin's source code repository.
Discovery tags for the plugin. Used when searching or browsing plugins in marketplaces.
Additional command file or directory paths, relative to the plugin root starting with ./. These supplement the default commands/ directory — they don't replace it. Paths should point to .md files or directories containing .md files. See path behavior rules.
Additional agent file or directory paths, relative to the plugin root starting with ./. These supplement the default agents/ directory.
Additional skill directory paths, relative to the plugin root starting with ./. These supplement the default skills/ directory. Paths should point to directories containing SKILL.md files.
Hook configuration — either paths to JSON config files or inline hook definitions. Custom paths supplement hooks/hooks.json (the default location). Inline definitions map event names to arrays of matcher groups.
MCP server configuration — either paths to JSON config files or inline server definitions. Custom paths supplement .mcp.json (the default location). Inline definitions map server names to their transport configuration. MCP servers start automatically when the plugin is enabled. Use ${CLAUDE_PLUGIN_ROOT} for plugin-relative paths.
Additional output style files or directories, relative to the plugin root starting with ./.
LSP server configuration — either paths to JSON config files or inline server definitions. Custom paths supplement .lsp.json (the default location). LSP integration provides real-time code intelligence: diagnostics, go to definition, find references, and hover information. Users must install the language server binary separately.