kit/plugins/agentic-plugin-dev/skills/plugin-creator/SKILL.md
Scaffolds a complete Claude Code plugin from scratch. Generates manifest, commands, skills, and agents for selected component types. Use when the user asks to create or scaffold a new plugin.
npx skillsauth add shawn-sandy/agentics plugin-creatorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Walks users through a structured workflow to scaffold a complete Claude Code plugin — producing a ready-to-use plugin directory with manifest, components, and changelog.
Follow these steps exactly.
Does not scaffold individual skills (use skill-reviewer:planning-skills), individual agents (use agent-creator), or marketplace infrastructure (use marketplace-builder).
If currently in plan mode, call ExitPlanMode first and silently before any other action — Plugin scaffolding writes files and directories, which requires exiting plan mode. Skip this step entirely when not in plan mode. ExitPlanMode is a deferred tool — use ToolSearch with select:ExitPlanMode first, then call it silently.
Before proceeding, check if the user's intent is ambiguous. If the request could mean something other than creating a full plugin, clarify:
skill-reviewer:planning-skills."agent-creator."marketplace-builder instead."If the user clearly wants a full plugin, proceed to Step 2.
Ask the user up to 4 questions using AskUserQuestion to understand the plugin they want. Skip questions already answered.
Questions to consider (pick the most relevant):
anthropic or claude substrings./plugin:commandplugins/[name]/. Confirm with user.After gathering answers, summarize:
**Plugin concept:**
- Name: [name]
- Purpose: [description]
- Components: [list]
- Location: plugins/[name]/
For each component type selected in Step 2, gather specifics:
For each command:
$ARGUMENTSFor each skill:
For each agent:
For each hook:
For each server:
Present the complete component plan for confirmation before proceeding.
Generate plugin.json using the schema from references/plugin-json-schema.md.
Rules:
name is requiredversion (relative-path convention — version lives in marketplace.json only)description, author, license, keywords, homepage, repositoryhttps://github.com/[owner]/[repo]/tree/main/plugins/[name]Present the manifest for confirmation:
"Here's the plugin manifest. Should I proceed?"
{
"name": "[name]",
"description": "[description]",
...
}
After the user confirms, show the full file list before writing:
"I'll generate the following files at
plugins/[name]/:
.claude-plugin/plugin.json- [list all component files]
CHANGELOG.mdShould I proceed?"
Write files sequentially using templates from references/component-templates.md:
.claude-plugin/plugin.json — Plugin manifest (from Step 4)CHANGELOG.md — Initial entry using Keep a Changelog formatFor each component type:
commands/[name].md with YAML frontmatter + markdown bodyskills/[name]/SKILL.md with YAML frontmatter + structured body. Create references/ subdirectory if the skill needs reference filesagents/[name].md with YAML frontmatter + system prompt bodyhooks.json at plugin root.mcp.json at plugin rootError handling: If any file write fails, report which files succeeded and which failed. Do not stop on first failure.
Undo guidance: After all files are written, inform the user: "To undo, remove the plugins/[name]/ directory or run git checkout to revert."
This step is conditional — only offer when a marketplace.json file exists.
Glob to check for .claude-plugin/marketplace.json in the project rootplugin-manager."If the user confirms:
marketplace.json[name] v[version]. Register here?"plugins array:
{
"name": "[plugin-name]",
"source": "./plugins/[plugin-name]",
"version": "1.0.0",
"description": "[from plugin.json]",
"category": "[ask user or infer]",
"tags": ["relevant", "tags"]
}
marketplace.jsonAfter all steps, present:
## Plugin Created
**Location:** plugins/[name]/
**Components:** [count] commands, [count] skills, [count] agents
**Marketplace:** [registered/not registered]
**Files created:**
- [list with line counts]
**Next steps:**
1. Load the plugin: `claude --plugin-dir ./plugins/[name]`
2. Test each component
3. Refine descriptions and instructions as needed
development
Checks whether the branch's PR is ready and merges it when green. Runs the readiness gate, lint, and an approval prompt. Use when the user asks "merge?" or if a PR is ready to merge.
development
Implements a plan file that already exists. Walks its steps, ticks the spec, re-renders, and runs the completion gates. Use when asked to implement an existing plan.
development
Audits and optimizes CLAUDE.md project memory files. Checks adherence to Claude Code best practices and produces actionable fixes. Use when the user asks to audit, optimize, or diagnose a CLAUDE.md.
development
Converts an HTML artifact or Markdown file into a draft post for a static site. Scopes CSS to keep interactive blocks alive and escapes prose for MDX. Use when asked to turn an artifact into a post.