Claude Code Plugin Manifest
Manifest (.claude-plugin/plugin.json) for a Claude Code plugin
| Type | object |
|---|---|
| File match |
**/.claude-plugin/plugin.json
|
| Schema URL | https://catalog.lintel.tools/schemas/schemastore/claude-code-plugin-manifest/latest.json |
| Source | https://www.schemastore.org/claude-code-plugin-manifest.json |
Validate with Lintel
npx @lintel/lintel check
Manifest (.claude-plugin/plugin.json) for a Claude Code plugin. Learn more: https://code.claude.com/docs/en/plugins-reference
Properties
Unique identifier for the plugin, used for namespacing (prefer kebab-case)
JSON Schema reference for editor autocomplete/validation; ignored at load time
Semantic version (e.g., 1.2.3) following semver.org specification
Brief, user-facing explanation of what the plugin provides
Information about the plugin creator or maintainer
3 nested properties
Display name of the plugin author or organization
Contact email for support or feedback
Website, GitHub profile, or organization URL
Plugin homepage or documentation URL
Source code repository URL
SPDX license identifier (e.g., MIT, Apache-2.0)
Tags for plugin discovery and categorization
Plugins that must be enabled for this plugin to function. Bare names (no "@marketplace") are resolved against the declaring plugin's own marketplace.
Channels this plugin provides. Each entry declares an MCP server as a message channel and optionally specifies user configuration to prompt for at enable time.
Background watch scripts the host arms as persistent Monitor tasks (unsandboxed, same trust tier as hooks) so plugins need not instruct the model to arm them. When omitted, monitors/monitors.json at the plugin root is loaded if present.
Settings to merge into the user settings while this plugin is enabled. Only the documented allowlisted keys are applied.
User-configurable values this plugin needs. Prompted at enable time. Non-sensitive values saved to settings.json; sensitive values to secure storage. Available as ${user_config.KEY} in MCP/LSP server config, hook commands, and (non-sensitive only) skill/agent content. Keep sensitive value counts small.