Agent skill
managing-plugins
Create and maintain Claude Code plugins. Use when editing ANY file in the plugins/ directory (commands, skills, hooks, subagents, or config), bumping plugin versions, registering plugins in marketplace.json, creating or modifying subagents, or asking about plugin structure and best practices.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/managing-plugins
SKILL.md
Managing Plugins
This skill provides guidance for creating and maintaining Claude Code plugins.
Before creating or modifying plugin components, use @agent-claude-code-guide
to look up best practices and understand your options.
Plugin Structure
Every plugin lives in plugins/<plugin-name>/ with this structure:
plugins/<plugin-name>/
├── .claude-plugin/
│ └── plugin.json # Plugin metadata and configuration
├── changelog/ # Plugin changelog (managed by tenzir-changelog)
├── README.md # User-facing documentation (required)
├── skills/ # See [skills.md](./skills.md)
├── commands/ # See [commands.md](./commands.md)
├── hooks/ # See [hooks.md](./hooks.md)
└── agents/ # See [subagents.md](./subagents.md)
Plugin Metadata
The plugin.json file defines the plugin:
{
"name": "plugin-name",
"version": "0.0.0",
"description": "Brief description of what this plugin does",
"author": {
"name": "Tenzir",
"email": "[email protected]",
"url": "https://github.com/tenzir"
},
"homepage": "https://github.com/tenzir/claude-plugins",
"repository": "https://github.com/tenzir/claude-plugins",
"license": "Apache-2.0"
}
For MCP servers, add:
{
"mcpServers": {
"server-name": {
"command": "uvx",
"args": ["package-name"]
}
}
}
README Template
Every plugin must have a README.md. See
readme-template.md for the exact structure.
Marketplace Registration
After creating a plugin, register it in .claude-plugin/marketplace.json:
{
"name": "plugin-name",
"description": "What this plugin does",
"source": "./plugins/plugin-name"
}
Note: The description must be duplicated in both plugin.json and
marketplace.json. The marketplace does not read descriptions from
plugin.json—it needs its own copy for plugin discovery.
Keep plugins sorted alphabetically by name.
Versioning
Plugins must start at version 0.0.0. This allows the first release to use
standard bump flags (--patch, --minor, --major) to produce typical initial
versions like 0.0.1, 0.1.0, or 1.0.0.
Follow SemVer when updating plugins:
- Patch (0.0.0 → 0.0.1): Bug fixes, typo corrections
- Minor (0.0.0 → 0.1.0): New features, backward-compatible enhancements
- Major (0.0.0 → 1.0.0): Breaking changes, production-ready
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?