ancoder-plugin-cli
v0.5.0
Published
CLI for creating and managing Claude Code plugins — scaffolding, validation, installation, and marketplace publishing. Single binary, all templates embedded.
Maintainers
Readme
plugin-cli
CLI for creating and managing Claude Code plugins — scaffolding, validation, installation, and marketplace publishing. Single binary, all templates embedded.
Install (npm)
npm install -g ancoder-plugin-cli
# Or run without installing
npx ancoder-plugin-cli --helpThe npm package includes prebuilt binaries for:
- macOS arm64 / x64
- Linux arm64 / x64
- Windows x64
Build from source (Go)
go build -o plugin-cli .
./plugin-cli --helpCommands
| Command | Description |
|---------|-------------|
| plugin-cli new <name> | Create a new plugin from a template |
| plugin-cli validate <path> | Validate plugin structure |
| plugin-cli list | List available templates |
| plugin-cli list --installed | List installed plugins |
| plugin-cli info <template> | Show template details |
| plugin-cli install | Install the plugin-creator plugin into ~/.claude/ |
| plugin-cli uninstall | Remove installed plugin-creator |
| plugin-cli doctor | Check installation health |
| plugin-cli marketplace init <dir> | Initialize a marketplace repository |
| plugin-cli marketplace add <path> | Register a plugin in marketplace.json |
| plugin-cli pack <path> | Package plugin as zip + SHA256 |
| plugin-cli sync <root> | Sync shared skills in a monorepo |
| plugin-cli check <root> | Detect drift in monorepo shared skills |
Quick Start
# Create a new plugin
plugin-cli new my-plugin
# Validate it
plugin-cli validate ./my-plugin
# Install the plugin-creator helper (gives you /plugin-creator:* commands in Claude Code)
plugin-cli install
# Test your plugin locally
claude --plugin-dir ./my-pluginTemplates
| Template | Description |
|----------|-------------|
| skill-pack | Skills-focused plugin with commands and hooks (recommended) |
| agent-plugin | Self-contained agent plugin with a bundled workflow skill |
| toolkit-plugin | Skills-first toolkit with progressive disclosure resources |
| vertical-practice-plugin | Industry workflow plugin with cold-start interview, practice profile, review skill, watcher agent, hooks, and MCP metadata |
| blank-plugin | Minimal plugin with just plugin.json and README |
| monorepo | Multi-plugin monorepo with shared skills and sync tooling |
Plugin-Creator Plugin
Running plugin-cli install deploys a Claude Code plugin that provides:
- Skills: plugin-scaffolding, skill-authoring, agent-authoring, hook-authoring, mcp-integration, marketplace-publishing, monorepo-maintenance
- Commands:
/plugin-creator:new-plugin,/plugin-creator:validate-plugin,/plugin-creator:review-plugin,/plugin-creator:publish-plugin - Agents: plugin-reviewer and plugin-validator (quality review), agent-creator (agent generation), skill-reviewer (skill QA), marketplace-curator (metadata generation)
These let Claude Code itself guide you through plugin development.
Monorepo Workflow
# Create a monorepo
plugin-cli new my-plugins --template monorepo
# Add plugins
plugin-cli new plugin-a --path ./my-plugins/plugins/
plugin-cli marketplace add ./my-plugins/plugins/plugin-a
# Sync shared skills
plugin-cli sync ./my-plugins
# Check for drift (use in CI)
plugin-cli check ./my-pluginsplugin-cli sync and plugin-cli check support both layouts:
- Legacy layout:
shared/skills/*copied intoplugins/*/skills/ - Official-style layout:
plugins/vertical-plugins/*/skills/*synced into bundledplugins/agent-plugins/*/skills/*
Official Plugin Patterns
This CLI is being aligned with Anthropic's official plugin repository patterns. See docs/official-plugin-patterns.md for details.
Key rules:
- Prefer
skills/<name>/SKILL.mdfor new user-invoked workflows;commands/remains supported for legacy plugins. - Use progressive disclosure: keep
SKILL.mdfocused and move details intoreferences/,examples/,scripts/, andassets/. - Use
${CLAUDE_PLUGIN_ROOT}for plugin-local scripts and assets. - Use wrapper format for plugin hooks:
hooks/hooks.jsonwithdescriptionandhookskeys. - Marketplace entries should use
sourcepaths; legacypathentries are still accepted. - For vertical-domain plugins, use a cold-start interview to write a practice profile under
~/.claude/plugins/config/<plugin>/CLAUDE.md, then make every workflow read that profile before acting.
License
MIT
