CC Plugin Forge
Purpose
Build and manage Claude Code plugins with correct structure, manifests, and marketplace integration. Includes workflows, automation scripts, and reference docs.
When to Use
- •Creating new plugins for a marketplace
- •Adding/modifying plugin components (commands, skills, agents, hooks)
- •Updating plugin versions
- •Working with plugin or marketplace manifests
- •Setting up local plugin testing
- •Publishing plugins
Getting Started
Create New Plugin
Use create_plugin.py to generate plugin structure:
python scripts/create_plugin.py plugin-name \ --marketplace-root /path/to/marketplace \ --author-name "Your Name" \ --author-email "your.email@example.com" \ --description "Plugin description" \ --keywords "keyword1,keyword2" \ --category "productivity"
This automatically:
- •Creates plugin directory structure
- •Generates
plugin.jsonmanifest - •Creates README template
- •Updates
marketplace.json
Bump Version
Use bump_version.py to update versions in both manifests:
python scripts/bump_version.py plugin-name major|minor|patch \ --marketplace-root /path/to/marketplace
Semantic versioning:
- •major: Breaking changes (1.0.0 → 2.0.0)
- •minor: New features, refactoring (1.0.0 → 1.1.0)
- •patch: Bug fixes, docs (1.0.0 → 1.0.1)
Development Workflow
1. Create Structure
Manual approach (if not using script):
mkdir -p plugins/plugin-name/.claude-plugin mkdir -p plugins/plugin-name/commands mkdir -p plugins/plugin-name/skills
2. Plugin Manifest
File: plugins/plugin-name/.claude-plugin/plugin.json
{
"name": "plugin-name",
"version": "0.1.0",
"description": "Plugin description",
"author": {
"name": "Your Name",
"email": "your.email@example.com"
},
"keywords": ["keyword1", "keyword2"]
}
3. Register in Marketplace
Update .claude-plugin/marketplace.json:
{
"name": "plugin-name",
"source": "./plugins/plugin-name",
"description": "Plugin description",
"version": "0.1.0",
"keywords": ["keyword1", "keyword2"],
"category": "productivity"
}
4. Add Components
Create in respective directories:
| Component | Location | Format |
|---|---|---|
| Commands | commands/ | Markdown with frontmatter |
| Skills | skills/<name>/ | Directory with SKILL.md |
| Agents | agents/ | Markdown definitions |
| Hooks | hooks/hooks.json | Event handlers |
| MCP Servers | .mcp.json | External integrations |
5. Local Testing
# Add marketplace /plugin marketplace add /path/to/marketplace-root # Install plugin /plugin install plugin-name@marketplace-name # After changes: reinstall /plugin uninstall plugin-name@marketplace-name /plugin install plugin-name@marketplace-name
Plugin Patterns
Framework Plugin
For framework-specific guidance (React, Vue, etc.):
plugins/framework-name/ ├── .claude-plugin/plugin.json ├── skills/ │ └── framework-name/ │ ├── SKILL.md │ └── references/ ├── commands/ │ └── prime/ │ ├── components.md │ └── framework.md └── README.md
Utility Plugin
For tools and commands:
plugins/utility-name/ ├── .claude-plugin/plugin.json ├── commands/ │ ├── action1.md │ └── action2.md └── README.md
Domain Plugin
For domain-specific knowledge:
plugins/domain-name/ ├── .claude-plugin/plugin.json ├── skills/ │ └── domain-name/ │ ├── SKILL.md │ ├── references/ │ └── scripts/ └── README.md
Command Naming
Subdirectory-based namespacing with : separator:
- •
commands/namespace/command.md→/namespace:command - •
commands/simple.md→/simple
Examples:
- •
commands/prime/vue.md→/prime:vue - •
commands/docs/generate.md→/docs:generate
Version Management
Important: Update version in BOTH locations:
- •
plugins/<name>/.claude-plugin/plugin.json - •
.claude-plugin/marketplace.json
Use bump_version.py to automate.
Git Commits
Use conventional commits:
git commit -m "feat: add new plugin" git commit -m "fix: correct plugin manifest" git commit -m "docs: update plugin README" git commit -m "feat!: breaking change"
Reference Docs
Detailed documentation included:
| Reference | Content |
|---|---|
references/plugin-structure.md | Directory structure, manifest schema, components |
references/marketplace-schema.md | Marketplace format, plugin entries, distribution |
references/workflows.md | Step-by-step workflows, patterns, publishing |
Scripts
| Script | Purpose |
|---|---|
scripts/create_plugin.py | Scaffold new plugin |
scripts/bump_version.py | Update versions |