39 lines
931 B
Markdown
39 lines
931 B
Markdown
# Plugin Structure
|
|
|
|
Minimal structure for a Claude Code plugin.
|
|
|
|
## Required
|
|
|
|
```
|
|
plugin-name/
|
|
└── .claude-plugin/
|
|
└── plugin.json # {"name": "plugin-name"}
|
|
```
|
|
|
|
## Common additions
|
|
|
|
```
|
|
plugin-name/
|
|
├── .claude-plugin/
|
|
│ └── plugin.json
|
|
├── skills/
|
|
│ └── skill-name/
|
|
│ └── SKILL.md
|
|
└── CLAUDE.md # Plugin-specific guidance
|
|
```
|
|
|
|
## Marketplace layout
|
|
|
|
The standard pattern is a single flat marketplace: each plugin lives as a
|
|
top-level directory alongside a `.claude-plugin/marketplace.json` that lists
|
|
every plugin's `source` as `./plugin-name`.
|
|
|
|
Marketplace sources may also be nested (e.g. `./plugins/<name>`) — check the
|
|
host repo's `.claude-plugin/marketplace.json` for its actual convention
|
|
before assuming the flat layout.
|
|
|
|
## Creating new plugins
|
|
|
|
Follow the cc-architect workflow:
|
|
→ `${CLAUDE_PLUGIN_ROOT}/workflows/create-plugin.md`
|