Skill-Details
claude-plugins
Developer-facing, but narrowly focused on Claude Code plugins.
Vor Nutzung prüfen
Die automatische Prüfung bewertet Relevanz, nicht Sicherheit oder Empfehlung. Lies vor der Nutzung die Quellanweisungen.
SKILL.md
Dieser Auszug wurde bei der Prüfung gespeichert. Die externe Quelle enthält die vollständige und aktuelle Version.
---
name: claude-plugins
description: This skill should be used when creating plugins, publishing to marketplaces, or when "plugin.json", "marketplace", "create plugin", or "distribute plugin" are mentioned.
metadata:
version: "1.0.0"
related-skills:
- claude-plugin-audit
- claude-agents
- claude-commands
- claude-hooks
- skills-dev
- claude-rules
- claude-config
---
# Claude Plugin Development
Complete lifecycle for developing, validating, and distributing Claude Code plugins.
## Steps
1. Define plugin scope and components needed
2. Initialize plugin structure with `plugin.json`
3. If adding commands, load the `outfitter:claude-commands` skill
4. If adding agents, load the `outfitter:claude-agents` skill
5. If adding hooks, load the `outfitter:claude-hooks` skill
6. If adding skills, load the `outfitter:skills-dev` skill
7. Delegate by loading the `outfitter:claude-plugin-audit` skill for validation
8. Fix issues and distribute
## Quick Start
```bash
# 1. Scaffold plugin
./scripts/scaffold-plugin.sh my-plugin --with-commands
# 2. Add components (commands, agents, hooks, skills)
# 3. Test locally
/plugin marketplace add ./my-plugin
/plugin install my-plugin@my-plugin
# 4. Distribute
git push origin main --tags
```
## Lifecycle Overview
```
Discovery -> Init -> Components -> Validate -> Distribute -> Marketplace
| | | | | |
v v v v v v
Purpose Scaffold Commands Structure Package Catalog
Scope plugin.json Agents Testing Version Publish
Type README Hooks Quality Release Share
```
## Stage 1: Discovery
Before creating a plugin, clarify:
| Question | Impact |
|----------|--------|
| What problem does this solve? | Plugin scope and features |
| Who will use it? | Distribution method |
| What components are needed? | Commands, agents, hooks, MCP servers |
| Where will it live? | Personal, project, or marketplace |
## Stage 2: Initialization
### Standalone Plugin
Standalone plugins need their own `.claude-plugin/plugin.json`:
```
my-plugin/
├── .claude-plugin/
│ └── plugin.json # Required for standalone
├── README.md # Required for distribution
├── commands/ # Optional components
├── agents/
├── skills/
└── hooks/
```
### plugin.json (Standalone)
```json
{
"name": "my-plugin",
"version": "1.0.0",
"description": "Brief description of what this plugin does",
"author": {
"name": "Your Name",
"email": "[email protected]"
},
"license": "MIT"
}
```
### Marketplace with Local Plugins (Consolidated)
For marketplaces where all plugins live in the same repo, use `strict: false` to consolidate metadata. Plugins don't need their own manifests:
```
my-marketplace/
├── .claude-plugin/
│ └── marketplace.json # All metadata here (strict: false)
├── plugin-a/
│ └── commands/
├── plugin-b/
│ └── skills/
└── README.md
```
### marketplace.json (Consolidated)
```json
{
"name": "my-marketplace",
"owner": {
"name": "Team Name",
"email": "[email protected]"
},
"strict": false,
"plugins": [
{"name": "plugin-a", "source": "./plugin-a", "version": "1.0.0", "description": "Plugin A", "license": "MIT"},
{"name": "plugin-b", "source": "./plugin-b", "version": "1.0.0", "description": "Plugin B", "license": "MIT"}
]
}
```
**Benefits:** Single source of truth, no version drift between marketplace and plugin manifests.
For external plugins (GitHub repos), use minimal entries and let the external repo own its manifest.
See [structure.md](references/structure.md) for complete plugin.json schema.
## Stage 3: Components
Add components based on plugin needs. See Steps section for which skills to load.
### Slash Commands
Create custom commands in `commands/` directory:
```markdown
---
description: "Review code for quality issues"
---
Review the following code: {{Vollständige Quelle auf GitHub lesen (öffnet externe Seite)