Create a new plugin for Claude Code marketplace with validation, ADR, and release automation. TRIGGERS - create plugin, new plugin, scaffold plugin, add plugin, plugin-dev create.
From plugin-devnpx claudepluginhub terrylica/cc-skills --plugin plugin-devThis skill is limited to using the following tools:
references/evolution-log.mdreferences/phase0-discovery.mdreferences/phase1-scaffold.mdreferences/phase2-components.mdreferences/phase3-validation.mdreferences/phase4-release.mdreferences/troubleshooting.mdSearches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Guides agent creation for Claude Code plugins with file templates, frontmatter specs (name, description, model), triggering examples, system prompts, and best practices.
DO NOT ACT ON ASSUMPTIONS. Read this file first.
This is a structured workflow command for creating a new plugin in a Claude Code marketplace.
Your FIRST and ONLY action right now: Execute the TodoWrite below.
Self-Evolving Skill: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.
YOUR FIRST ACTION MUST BE the TodoWrite call below.
DO NOT:
Before executing TodoWrite, verify you're in a marketplace directory:
/usr/bin/env bash << 'PREFLIGHT_EOF'
# Check for marketplace.json in cwd
if [ -f ".claude-plugin/marketplace.json" ]; then
echo "✅ Marketplace detected: $(jq -r .name .claude-plugin/marketplace.json)"
else
echo "❌ Not a marketplace directory. Run from a marketplace root."
exit 1
fi
PREFLIGHT_EOF
Execute TodoWrite NOW with this template:
TodoWrite with todos:
- "[Plugin] Phase 0: Detect marketplace root" | in_progress
- "[Plugin] Phase 0: Interactive prompts (name, category, components)" | pending
- "[Plugin] Phase 0: Confirm plugin doesn't exist" | pending
- "[Plugin] Phase 1: Skill → plugin-structure (scaffold)" | pending
- "[Plugin] Phase 1: Create plugin directory + plugin.json" | pending
- "[Plugin] Phase 1: Skill → implement-plan-preflight (ADR)" | pending
- "[Plugin] Phase 2: Skill → skill-architecture (if has-skills)" | pending
- "[Plugin] Phase 2: Skill → hook-development (if has-hooks)" | pending
- "[Plugin] Phase 2: Skill → command-development (if has-commands)" | pending
- "[Plugin] Phase 2: Skill → agent-development (if has-agents)" | pending
- "[Plugin] Phase 2: Agent → skill-reviewer (if skills created)" | pending
- "[Plugin] Phase 3: Add to marketplace.json" | pending
- "[Plugin] Phase 3: Run validate-plugins.mjs" | pending
- "[Plugin] Phase 3: Skill → code-hardcode-audit" | pending
- "[Plugin] Phase 3: Agent → plugin-validator" | pending
- "[Plugin] Phase 4: Git commit (conventional format)" | pending
- "[Plugin] Phase 4: Push to remote" | pending
- "[Plugin] Phase 4: Skill → semantic-release" | pending
After TodoWrite completes, proceed to Phase 0 section below.
| Order | Skill | Phase | Purpose | Invocation |
|---|---|---|---|---|
| 1 | plugin-structure | 1 | Directory & manifest | Skill(plugin-dev:plugin-structure) |
| 2 | implement-plan-preflight | 1 | ADR + Design Spec + Diagrams | Skill(itp:implement-plan-preflight) |
| 3 | skill-architecture | 2 | Create skills (if has-skills) | Skill(plugin-dev:skill-architecture) |
| 4 | hook-development | 2 | Create hooks (if has-hooks) | Skill(plugin-dev:hook-development) |
| 5 | command-development | 2 | Create commands (if has-commands) | Skill(plugin-dev:command-development) |
| 6 | agent-development | 2 | Create agents (if has-agents) | Skill(plugin-dev:agent-development) |
| 7 | code-hardcode-audit | 3 | Quality audit | Skill(itp:code-hardcode-audit) |
| 8 | plugin-validator | 3 | Silent failure audit | Skill(plugin-dev:plugin-validator) |
| 9 | semantic-release | 4 | Version & publish | Skill(itp:semantic-release) |
| Skill | Reason Excluded |
|---|---|
| plugin-dev:skill-development | Use skill-architecture instead (3x more comprehensive) |
| plugin-dev:plugin-settings | Merged into hook-development |
| itp:adr-graph-easy-architect | Invoked BY implement-plan-preflight (not separately) |
| Phase | Agent | Purpose | Invocation |
|---|---|---|---|
| 2 | skill-reviewer | Review skill quality | Task(plugin-dev:skill-reviewer) |
| 3 | plugin-validator | Validate final structure | Task(plugin-dev:plugin-validator) |
| Artifact | Path | Notes |
|---|---|---|
| Plugin Directory | plugins/{name}/ | Main plugin folder |
| Plugin Manifest | plugins/{name}/plugin.json | Required manifest |
| Plugin README | plugins/{name}/README.md | Documentation |
| Marketplace JSON | .claude-plugin/marketplace.json | Must add plugin entry |
| ADR | docs/adr/YYYY-MM-DD-{name}.md | Created by preflight skill |
| Design Spec | docs/design/YYYY-MM-DD-{name}/spec.md | Created by preflight skill |
Detect marketplace root, gather plugin name/category/components via interactive prompts, confirm the plugin does not already exist.
Detailed steps: Phase 0 Reference
.claude-plugin/marketplace.json exists)Skill(plugin-dev:plugin-structure) -- directory & manifest patternsplugin.json using marketplace versionSkill(itp:implement-plan-preflight) -- creates ADR + Design Spec + diagramsDetailed steps: Phase 1 Reference
plugins/$PLUGIN_NAME/docs/adr/$ADR_ID.mddocs/design/$ADR_ID/spec.mdExecute ONLY the skills for components the user selected:
| Component | Skill Invocation | Then |
|---|---|---|
| Skills | Skill(plugin-dev:skill-architecture) | Spawn Task(plugin-dev:skill-reviewer) |
| Hooks | Skill(plugin-dev:hook-development) | -- |
| Commands | Skill(plugin-dev:command-development) | -- |
| Agents | Skill(plugin-dev:agent-development) | -- |
Detailed steps: Phase 2 Reference
marketplace.json (include hooks field if hooks exist)node scripts/validate-plugins.mjs -- expect all-passSkill(itp:code-hardcode-audit) -- quality auditTask(plugin-dev:plugin-validator) -- structural validationDetailed steps: Phase 3 Reference
feat($PLUGIN_NAME): add plugin for [brief description]Skill(itp:semantic-release) -- tag, changelog, GitHub releaseDetailed steps: Phase 4 Reference
See Troubleshooting Reference for common issues and fixes.
After this skill completes, reflect before closing the task:
Do NOT defer. The next invocation inherits whatever you leave behind.