Loading...
Loading...
Use when creating, modifying, or debugging Claude Code plugins. Triggers on .claude-plugin/, plugin.json, marketplace.json, commands/, agents/, skills/, hooks/ directories. Provides schemas, templates, validation workflows, and troubleshooting.
npx skill4agent add abcfed/claude-marketplace plugin-authoring.claude-plugin/plugin.jsonmarketplace.jsoncommands/agents/skills/hooks//plugin-development:...□ .claude-plugin/plugin.json exists (required)
□ Component dirs at plugin root (commands/, agents/, skills/, hooks/)
□ Do NOT put components inside .claude-plugin/ directory
□ Commands use kebab-case naming
□ Skills have valid frontmatter (name + description required, optional: model, allowed-tools)
□ Skills name validation:
- Matches directory name
- Lowercase letters, numbers, hyphens only
- Max 64 characters
- No reserved words ('anthropic', 'claude')
- No XML tags
□ Hooks use ${CLAUDE_PLUGIN_ROOT} for paths (not relative paths)
□ All scripts are executable (chmod +x)□ plugin.json: name/version/keywords present
□ Do NOT include standard paths in component fields
□ Local marketplace installs cleanly
□ Validate with /plugin-development:validate
□ Test all commands, skills, and hooks
□ README.md exists with usage examplescommands/agents/skills/hooks/.claude-plugin/"commands": "./commands/"./scripts/format.sh${CLAUDE_PLUGIN_ROOT}/scripts/format.sh/plugin-development:validatechmod +x| Skip This | What Happens |
|---|---|
| Validate manifest | Plugin won't load, no error message |
| chmod +x scripts | Hooks silently fail |
| ${CLAUDE_PLUGIN_ROOT} | Works in dev, breaks on install |
| Standard directory rules | Components not discovered |
/plugin-development:validate/plugin-development:init <name>/plugin-development:add-command|add-skill|add-agent|add-hook/plugin-development:validate/plugin-development:test-local/plugin-development:init <plugin-name>.claude-plugin/plugin.json/plugin-development:add-command/plugin-development:validate/plugin-development:test-local/plugin-development:add-command <name> <description>commands/<name>.mddescriptionargument-hint/plugin install/<name>/plugin-development:add-skill <name> <when-to-use>skills/<name>/SKILL.mdnamedescriptionmodelmodel: claude-sonnet-4-20250514allowed-toolsplugin.jsoncommandsagentsskillshookscommands/.mdcommandsplugin.jsonchmod +x${CLAUDE_PLUGIN_ROOT}namedescription/agents plugin-reviewer/plugin-development:validate