Labsco
softaworks logo

plugin-forge

โ˜… 2,144

by softaworks ยท part of softaworks/agent-toolkit

Create and manage Claude Code plugins with proper structure, manifests, and marketplace integration. Use when creating plugins for a marketplace, adding plugin components (commands, agents, hooks), bumping plugin versions, or working with plugin.json/marketplace.json manifests.

๐Ÿงฉ One of 7 skills in the softaworks/agent-toolkit package โ€” works on its own, and pairs well with its siblings.

This is the playbook your agent receives when the skill activates โ€” you don't need to read it to use the skill, but it's here to audit before installing.

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

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:

ComponentLocationFormat
Commandscommands/Markdown with frontmatter
Skillsskills/<name>/Directory with SKILL.md
Agentsagents/Markdown definitions
Hookshooks/hooks.jsonEvent handlers
MCP Servers.mcp.jsonExternal 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:

  1. plugins/<name>/.claude-plugin/plugin.json
  2. .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:

ReferenceContent
references/plugin-structure.mdDirectory structure, manifest schema, components
references/marketplace-schema.mdMarketplace format, plugin entries, distribution
references/workflows.mdStep-by-step workflows, patterns, publishing

Scripts

ScriptPurpose
scripts/create_plugin.pyScaffold new plugin
scripts/bump_version.pyUpdate versions