/plugin-dev
Use this skill when creating or refining Claude Code plugins. Plugins are bundled collections of agents, skills, commands, hooks, and MCP servers that provide cohesive functionality. Helps design proper directory structures, plugin.json configuration, marketplace distribution,
$ npx -y skills add andisab/swe-marketplace --skill plugin-dev --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/plugin-dev
Context preview
The summary Claude sees to decide when to auto-load this skill.
Use this skill when creating or refining Claude Code plugins. Plugins are bundled collections of agents, skills, commands, hooks, and MCP servers that provide cohesive functionality. Helps design proper directory structures, plugin.json configuration, marketplace distribution,
SKILL.md
plugin-dev.SKILL.mdname: plugin-dev
description: >
Use this skill when creating or refining Claude Code plugins. Plugins are bundled collections
of agents, skills, commands, hooks, and MCP servers that provide cohesive functionality. Helps
design proper directory structures, plugin.json configuration, marketplace distribution, and
installation workflows. Automatically invoked when user requests "create a plugin", "bundle
components", "distribute capabilities", or mentions plugin development.
allowed-tools: Read, Write, Edit, Bash(mkdir:*), Bash(tree:*), Grep, Glob
Plugin Dev Skill
This skill helps create production-ready Claude Code plugins following Anthropic's official plugin specifications.
What is a Plugin?
A plugin is a **bundled collection** of Claude Code components that work together to provide cohesive functionality. Plugins enable:
- **Modular distribution**: Package related capabilities together
- **Team sharing**: Install once across multiple projects
- **Version management**: Track plugin versions independently
- **Marketplace discovery**: Publish for community use
- **Automatic updates**: Keep components synchronized
Plugin vs Individual Components
| Approach | When to Use | |----------|-------------| | **Individual Components** | Single capability, personal use, experimental | | **Plugin** | Multiple related components, team distribution, reusable across projects |
**Example - Individual approach**:
- `.claude/agents/postgres-expert.md` (one file)
- `.claude/commands/test.md` (one file)
**Example - Plugin approach**:
- `database-toolkit/` plugin containing:
- Agents: postgres-expert, mongodb-expert, sql-expert
- Skills: migration-management, query-optimization
- Commands: /migrate, /db-status
- Templates: schema templates
**Design consideration**: Claude supports 20-50 skills simultaneously. When designing plugins with multiple skills, keep each skill focused and avoid overlap. Beyond 50 simultaneous skills, activation accuracy may decrease. Consider bundling related capabilities into fewer, more comprehensive skills rather than many narrow ones.
Plugin Structure
plugin-name/
├── .claude-plugin/
│ └── plugin.json # Required: Plugin metadata
├── agents/ # Optional: Sub-agent definitions
│ ├── agent-one.md
│ └── agent-two.md
├── skills/ # Optional: Skill definitions
│ ├── skill-one/
│ │ ├── SKILL.md # Do NOT add README.md inside skill dirs
│ │ ├── examples/
│ │ └── assets/ # Optional: Static resources
│ └── skill-two/
│ └── SKILL.md
├── commands/ # Optional: Slash commands
│ ├── command-one.md
│ └── subfolder/
│ └── command-two.md
├── hooks/ # Optional: Hook configurations
│ └── hooks.json
├── .mcp.json # Optional: MCP server integrations
├── .lsp.json # Optional: LSP server integrations
├── templates/ # Optional: Code templates
│ └── template-files/
├── patterns/ # Optional: Design patterns
│ └── pattern-docs/
├── README.md # Recommended: Plugin documentation
└── LICENSE # Recommended: License file
plugin.json Configuration
**Required file**: `.claude-plugin/plugin.json`
{
"name": "database-toolkit",
"version": "1.0.0",
"description": "Comprehensive database management toolkit with experts for PostgreSQL, MongoDB, and SQL",
"author": {
"name": "Your Name",
"email": "email@example.com",
"url": "https://example.com"
},
"homepage": "https://github.com/username/database-toolkit",
"license": "MIT",
"repository": "https://github.com/username/database-toolkit",
"keywords": [
"database",
"postgresql",
"mongodb",
"sql",
"migration",
"optimization"
]
}Field Specifications
**name** (required)
- Unique plugin identifier
- Lowercase, alphanumeric, hyphens
- Example: `database-toolkit`, `api-testing-suite`
**version** (required)
- Semantic versioning: `MAJOR.MINOR.PATCH`
- Example: `1.0.0`, `2.3.1-beta`
**description** (required)
- Clear explanation of plugin capabilities
- 1-3 sentences
- Include key features
**author** (required)
- Object with `name` (required), `email` (optional), and `url` (optional)
- Example: `{"name": "Your Name", "email": "email@example.com", "url": "https://example.com"}`
**homepage** (optional)
- URL to plugin homepage or documentation site
- Example: `"https://github.com/username/plugin-name"`
**license** (recommended)
- SPDX identifier: `MIT`, `Apache-2.0`, `GPL-3.0`
- Or `"SEE LICENSE IN <filename>"`
**repository** (recommended)
- URL or object pointing to source code
- String format: `"https://github.com/username/plugin-name"`
**keywords** (optional)
- Searchable terms for marketplace discovery
- Array of strings
- 5-10 relevant keywords
**Component path overrides** (optional)
- Override default component directories: `commands`, `agents`, `skills`, `hooks`, `mcpServers`, `outputStyles`, `lspServers`
- Custom paths supplement default directories — they don't replace them
- Example: `"agents": ["./custom-agents/expert.md"]`
Directory Organization Patterns
Single-Purpose Plugin
Focused on one domain with minimal structure.
database-migration/
├── .claude-plugin/
│ └── plugin.json
├── agents/
│ └── migration-expert.md
├── skills/
│ └── schema-evolution/
│ └── SKILL.md
├── commands/
│ ├── migrate.md
│ └── rollback.md
└── README.md
Multi-Component Plugin
Comprehensive toolkit with multiple agents and capabilities.
full-stack-toolkit/
├── .claude-plugin/
│ └── plugin.json
├── agents/
│ ├── backend/
│ │ ├── fastapi-expert.md
│ │ └── nodejs-expert.md
│ ├── frontend/
│ │ ├── react-expert.md
│ │ └── nextjs-expert.md
│ └── database/
│ └── postgres-expert.md
├── skills/
│ ├── api-testing/
│ ├─
Read more
name: plugin-dev description: > Use this skill when creating or refining Claude Code plugins. Plugins are bundled collections of agents, skills, commands, hooks, and MCP servers that provide cohesive functionality. Helps design proper directory structures, plugin.json configuration, marketplace distribution, and installation workflows. Automatically invoked when user requests "create a plugin", "bundle components", "distribute capabilities", or mentions plugin development. allowed-tools: Read, Write, Edit, Bash(mkdir:*), Bash(tree:*), Grep, Glob
Plugin Dev Skill
This skill helps create production-ready Claude Code plugins following Anthropic's official plugin specifications.
What is a Plugin?
A plugin is a **bundled collection** of Claude Code components that work together to provide cohesive functionality. Plugins enable:
- **Modular distribution**: Package related capabilities together
- **Team sharing**: Install once across multiple projects
- **Version management**: Track plugin versions independently
- **Marketplace discovery**: Publish for community use
- **Automatic updates**: Keep components synchronized
Plugin vs Individual Components
| Approach | When to Use | |----------|-------------| | **Individual Components** | Single capability, personal use, experimental | | **Plugin** | Multiple related components, team distribution, reusable across projects |
**Example - Individual approach**:
- `.claude/agents/postgres-expert.md` (one file)
- `.claude/commands/test.md` (one file)
**Example - Plugin approach**:
- `database-toolkit/` plugin containing:
- Agents: postgres-expert, mongodb-expert, sql-expert
- Skills: migration-management, query-optimization
- Commands: /migrate, /db-status
- Templates: schema templates
**Design consideration**: Claude supports 20-50 skills simultaneously. When designing plugins with multiple skills, keep each skill focused and avoid overlap. Beyond 50 simultaneous skills, activation accuracy may decrease. Consider bundling related capabilities into fewer, more comprehensive skills rather than many narrow ones.
Plugin Structure
plugin-name/ ├── .claude-plugin/ │ └── plugin.json # Required: Plugin metadata ├── agents/ # Optional: Sub-agent definitions │ ├── agent-one.md │ └── agent-two.md ├── skills/ # Optional: Skill definitions │ ├── skill-one/ │ │ ├── SKILL.md # Do NOT add README.md inside skill dirs │ │ ├── examples/ │ │ └── assets/ # Optional: Static resources │ └── skill-two/ │ └── SKILL.md ├── commands/ # Optional: Slash commands │ ├── command-one.md │ └── subfolder/ │ └── command-two.md ├── hooks/ # Optional: Hook configurations │ └── hooks.json ├── .mcp.json # Optional: MCP server integrations ├── .lsp.json # Optional: LSP server integrations ├── templates/ # Optional: Code templates │ └── template-files/ ├── patterns/ # Optional: Design patterns │ └── pattern-docs/ ├── README.md # Recommended: Plugin documentation └── LICENSE # Recommended: License file
plugin.json Configuration
**Required file**: `.claude-plugin/plugin.json`
{
"name": "database-toolkit",
"version": "1.0.0",
"description": "Comprehensive database management toolkit with experts for PostgreSQL, MongoDB, and SQL",
"author": {
"name": "Your Name",
"email": "email@example.com",
"url": "https://example.com"
},
"homepage": "https://github.com/username/database-toolkit",
"license": "MIT",
"repository": "https://github.com/username/database-toolkit",
"keywords": [
"database",
"postgresql",
"mongodb",
"sql",
"migration",
"optimization"
]
}Field Specifications
**name** (required)
- Unique plugin identifier
- Lowercase, alphanumeric, hyphens
- Example: `database-toolkit`, `api-testing-suite`
**version** (required)
- Semantic versioning: `MAJOR.MINOR.PATCH`
- Example: `1.0.0`, `2.3.1-beta`
**description** (required)
- Clear explanation of plugin capabilities
- 1-3 sentences
- Include key features
**author** (required)
- Object with `name` (required), `email` (optional), and `url` (optional)
- Example: `{"name": "Your Name", "email": "email@example.com", "url": "https://example.com"}`
**homepage** (optional)
- URL to plugin homepage or documentation site
- Example: `"https://github.com/username/plugin-name"`
**license** (recommended)
- SPDX identifier: `MIT`, `Apache-2.0`, `GPL-3.0`
- Or `"SEE LICENSE IN <filename>"`
**repository** (recommended)
- URL or object pointing to source code
- String format: `"https://github.com/username/plugin-name"`
**keywords** (optional)
- Searchable terms for marketplace discovery
- Array of strings
- 5-10 relevant keywords
**Component path overrides** (optional)
- Override default component directories: `commands`, `agents`, `skills`, `hooks`, `mcpServers`, `outputStyles`, `lspServers`
- Custom paths supplement default directories — they don't replace them
- Example: `"agents": ["./custom-agents/expert.md"]`
Directory Organization Patterns
Single-Purpose Plugin
Focused on one domain with minimal structure.
database-migration/ ├── .claude-plugin/ │ └── plugin.json ├── agents/ │ └── migration-expert.md ├── skills/ │ └── schema-evolution/ │ └── SKILL.md ├── commands/ │ ├── migrate.md │ └── rollback.md └── README.md
Multi-Component Plugin
Comprehensive toolkit with multiple agents and capabilities.
full-stack-toolkit/ ├── .claude-plugin/ │ └── plugin.json ├── agents/ │ ├── backend/ │ │ ├── fastapi-expert.md │ │ └── nodejs-expert.md │ ├── frontend/ │ │ ├── react-expert.md │ │ └── nextjs-expert.md │ └── database/ │ └── postgres-expert.md ├── skills/ │ ├── api-testing/ │ ├─
Showing the first part of this file.
A curated Claude Code plugin marketplace for practical, everyday usage in software engineering — 13 plugins, 53 specialist agents, 14 skills, 3 commands. A few opinionated choices that set it apart from larger awesome-style lists: Curated, not exhaustive.
Repo: andisab/swe-marketplace
Other skills on swe-marketplace.
- /dispatch
Shared multi-model CLI dispatch infrastructure for the adv plugin. Houses dispatch.sh, preflight.sh, run-phase.sh, scope.sh, and reviewer prompt templates used by the adv-review agent and adv-* commands.
Open skill - /agent-dev
Use this skill when creating or refining Claude Code sub-agent definitions. Helps design specialized AI assistants with proper YAML frontmatter, system prompts, tool access, and example-driven descriptions. Automatically invoked when user requests "create an agent", "design a
Open skill - /command-dev
Use this skill when creating or refining custom Claude Code slash commands. Slash commands are user-invoked reusable prompts that can accept arguments, reference files, and execute bash operations. Helps design command syntax, argument handling, file references, bash execution,
Open skill - /hook-dev
Use this skill when creating or refining Claude Code hooks. Hooks are shell commands that execute at specific lifecycle events (tool use, prompt submit, notifications, session events). Helps design event handlers for notifications, formatting, logging, feedback, and permission
Open skill - /mcp-server-dev
Create MCP servers — multi-tool services exposed via Model Context Protocol. Use this skill whenever users mention MCP servers, building servers, server scaffolding, tool registration, or want to package tools for distribution via uvx or npx. Also use when the conversation
Open skill - /mcp-tool-dev
Create MCP tools — individual tool functions exposed via Model Context Protocol. Use this skill whenever users mention MCP tools, tool handlers, tool functions, tool definitions, or want to add capabilities to an MCP server. Also use when the conversation involves designing tool
Open skill

