This skill should be used when the user asks about "Claude Code plugins", "plugin development", "how to build a plugin", "what plugin components exist", "plugin architecture", "extending Claude Code", or needs an overview of plugin development capabilities. Acts as a guide to the 9 specialized plugin-dev skills, explaining when to activate each one. Load this skill first when the user is new to plugin development or unsure which specific skill they need.
Install
npx skillscat add sjnims/plugin-dev/plugin-dev-guide Install via the SkillsCat registry.
Plugin Development Guide
This meta-skill provides an overview of Claude Code plugin development and routes to specialized skills based on the task at hand.
Plugin Development Skills Overview
The plugin-dev toolkit provides 9 specialized skills for building Claude Code plugins, plus this guide. Each skill handles a specific domain of plugin development.
Skill Quick Reference
| Skill | Purpose |
|---|---|
| plugin-structure | Directory layout, manifest, component organization |
| command-development | Simple prompts (single .md files in commands/) |
| agent-development | Autonomous subagents |
| skill-development | Complex prompts with bundled resources (skills/) |
| hook-development | Event-driven automation |
| mcp-integration | Model Context Protocol servers |
| lsp-integration | Language Server Protocol for code intelligence |
| plugin-settings | User configuration via .local.md |
| marketplace-structure | Plugin marketplace creation |
When to Use Each Skill
Starting a New Plugin
Skill: plugin-structure
Use when the user needs to:
- Create a new plugin from scratch
- Understand plugin directory layout
- Configure plugin.json manifest
- Learn about component auto-discovery
- Use ${CLAUDE_PLUGIN_ROOT} for portable paths
Adding User-Facing Commands
Skill: command-development
Use when the user needs to:
- Create slash commands (/command-name)
- Configure command frontmatter (description, allowed-tools, model)
- Use dynamic arguments ($ARGUMENTS, $1, $2)
- Reference files with @ syntax
- Execute bash inline with
[BANG]backticks
Creating Autonomous Agents
Skill: agent-development
Use when the user needs to:
- Create subagents for complex tasks
- Write agent system prompts
- Configure agent triggering (description with examples)
- Choose agent models and colors
- Restrict agent tool access
Building Skills
Skill: skill-development
Use when the user needs to:
- Create skills that extend Claude's capabilities
- Write SKILL.md with proper frontmatter
- Organize skill content with progressive disclosure
- Create references/, examples/, scripts/ directories
- Write effective trigger phrases
Implementing Event Hooks
Skill: hook-development
Use when the user needs to:
- React to Claude Code events (PreToolUse, Stop, SessionStart, etc.)
- Create prompt-based or command-based hooks
- Validate tool inputs before execution
- Enforce completion standards
- Block dangerous operations
Integrating External Services via MCP
Skill: mcp-integration
Use when the user needs to:
- Add MCP servers to plugins
- Configure stdio, SSE, HTTP, or WebSocket servers
- Set up authentication (OAuth, tokens)
- Use MCP tools in commands and agents
- Discover existing MCP servers on PulseMCP
Adding Code Intelligence via LSP
Skill: lsp-integration
Use when the user needs to:
- Add Language Server Protocol servers to plugins
- Enable go-to-definition and find-references
- Configure language-specific servers (pyright, gopls, rust-analyzer)
- Set up extensionToLanguage mappings
- Enhance Claude's code understanding
Managing Plugin Configuration
Skill: plugin-settings
Use when the user needs to:
- Store user-configurable settings
- Use .claude/plugin-name.local.md pattern
- Parse YAML frontmatter in hooks
- Create temporarily active hooks
- Manage agent state
Creating Plugin Marketplaces
Skill: marketplace-structure
Use when the user needs to:
- Create a marketplace for multiple plugins
- Configure marketplace.json
- Set up plugin sources (relative, GitHub, git URL)
- Distribute plugins to teams
- Organize plugin collections
Decision Tree for Skill Selection
User wants to...
├── Create/organize a plugin structure? → plugin-structure
├── Add a simple slash command (no bundled resources)? → command-development
├── Create an autonomous agent? → agent-development
├── Add a complex skill with scripts/references? → skill-development
├── React to Claude Code events? → hook-development
├── Integrate external service/API? → mcp-integration
├── Add code intelligence/LSP? → lsp-integration
├── Make plugin configurable? → plugin-settings
└── Distribute multiple plugins? → marketplace-structureCommon Multi-Skill Workflows
Building a Complete Plugin
- Start: Load
plugin-structureskill to create directory layout - Add features: Load
command-developmentfor user-facing commands - Automation: Load
hook-developmentfor event-driven behavior - Configuration: Load
plugin-settingsif user configuration needed - Validation: Use plugin-validator agent to validate structure
Creating an MCP-Powered Plugin
- Start: Load
plugin-structurefor basic structure - Integration: Load
mcp-integrationto configure MCP servers - Commands: Load
command-developmentto create commands that use MCP tools - Agents: Load
agent-developmentfor autonomous MCP workflows
Building a Code Intelligence Plugin
- Start: Load
plugin-structurefor basic structure - LSP: Load
lsp-integrationto configure language servers - Commands: Load
command-developmentfor commands using LSP features
Building a Skill-Focused Plugin
- Start: Load
plugin-structurefor basic structure - Skills: Load
skill-developmentto create specialized skills - Validation: Use skill-reviewer agent to validate skill quality
Available Agents
The plugin-dev plugin also provides 3 agents:
| Agent | Purpose |
|---|---|
| plugin-validator | Validates plugin structure and manifests |
| skill-reviewer | Reviews skill quality and triggering |
| agent-creator | Generates new agents from descriptions |
Use agents proactively after creating components to ensure quality.
Available Commands
| Command | Purpose |
|---|---|
/plugin-dev:plugin-dev-guide |
Overview and skill routing |
/plugin-dev:start |
Entry point - choose plugin or marketplace creation |
/plugin-dev:create-plugin |
8-phase guided plugin creation workflow |
/plugin-dev:create-marketplace |
8-phase guided marketplace creation workflow |
User Request
$ARGUMENTS
If the user provided a request above, analyze it and either:
- Route to a specific skill if the request clearly matches one domain
- Answer directly using this guide's overview information
- Ask for clarification if the request is ambiguous
If no request was provided, summarize the available plugin development capabilities and ask what the user wants to build or learn about.