Claude Code Plugin
Guide to creating, installing, and managing Claude Code plugins with local marketplace
This guide covers how to set up a local plugin marketplace, install plugins, and manage your Claude Code plugin development workflow.
Prerequisites
Make sure you have Claude Code CLI installed and configured before proceeding.
Setting Up Local Marketplace
Create the Marketplace Structure
Create the directory structure for your local plugin marketplace:
mkdir -p /Users/growthacker/.claude/plugins/.claude-pluginCreate the Marketplace Manifest
Create the manifest file at /Users/growthacker/.claude/plugins/.claude-plugin/marketplace.json:
{
"name": "my-local-marketplace",
"owner": {
"name": "Your Name"
},
"plugins": [
{
"name": "rubot",
"source": "./rubot",
"description": "Your rubot plugin"
}
]
}Add and Install in Claude Code
Register your local marketplace and install the plugin:
/plugin marketplace add /Users/growthacker/.claude/plugins
/plugin install rubot@my-local-marketplaceMake sure your plugin folder contains a .claude-plugin/plugin.json manifest file.
Updating Plugins
There are several ways to update your plugins after making changes:
Option 1: Restart Claude Code
Simply restart Claude Code to pick up the changes. When using --plugin-dir for development, restart after each change.
Option 2: Update via Marketplace Command
If your plugin is installed from a marketplace:
/plugin update rubot@rulismeOption 3: Refresh the Marketplace
If you updated the plugin source:
/plugin marketplace update rulismeDevelopment Workflow
For active plugin development, use the --plugin-dir flag to load your plugin directly:
claude --plugin-dir /Users/growthacker/.claude/plugins/rubotRestart Claude Code each time you make changes to see updates when using --plugin-dir.
Troubleshooting
Quick Reference
| Command | Description |
|---|---|
/plugin marketplace add <path> | Add a local marketplace |
/plugin install <name>@<marketplace> | Install a plugin |
/plugin uninstall <name>@<marketplace> | Uninstall a plugin |
/plugin update <name>@<marketplace> | Update a plugin |
/plugin marketplace update <name> | Refresh marketplace |
claude plugins sync | Sync plugin cache |
claude --plugin-dir <path> | Load plugin directly for development |