Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
juliusbrussee avatar

Plugin Creator

  • 84 installs
  • 849 repo stars
  • Updated June 21, 2026
  • juliusbrussee/caveman-code

Scaffold a publishable Cave plugin with a valid `.cave-plugin/plugin.json` manifest and the standard commands, skills, agents, themes, and hooks folders before listing it on the marketplace.

About

Plugin Creator is an agent skill for solo and indie builders who ship extensions in the Cave ecosystem and want a correct bundle on the first try. Instead of hand-rolling folders and guessing manifest fields, it scaffolds a complete plugin tree anchored by `.cave-plugin/plugin.json`, with optional `commands/`, `skills/`, `agents/`, `themes/`, and `hooks/` directories sized to what you actually enable in `capabilities`. The embedded schema covers semver versioning, kebab-case naming, `caveVersion` compatibility (for example `>=0.65.0`), licensing, homepage URLs, and free-form tags that power `caveman plugin search`. Use it when you are starting a new marketplace plugin, packaging commands or skills for reuse, or publishing from GitHub or a zip URL. It keeps capability flags honest so installers know whether commands, skills, agents, themes, MCP, or hooks are included—reducing broken installs and review churn before you publish.

  • Writes `.cave-plugin/plugin.json` with semver, author, `caveVersion`, tags, and capability flags
  • Scaffolds five standard directories: `commands/`, `skills/`, `agents/`, `themes/`, and `hooks/`
  • Enforces manifest rules: kebab-case `name`, one-line description, and capability booleans aligned to present folders
  • Documents marketplace discovery via `tags` and `caveman plugin search`
  • Low-effort scaffold triggered by “create a plugin”, “scaffold a plugin”, `/plugin create`, or “new cave plugin”

Plugin Creator by the numbers

  • 84 all-time installs (skills.sh)
  • Ranked #4,997 of 16,659 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
npx skills add https://github.com/juliusbrussee/caveman-code --skill plugin-creator

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs84
repo stars849
Last updatedJune 21, 2026
Repositoryjuliusbrussee/caveman-code

What it does

Scaffold a publishable Cave plugin with a valid `.cave-plugin/plugin.json` manifest and the standard commands, skills, agents, themes, and hooks folders before listing it on the marketplace.

Files

SKILL.mdMarkdownGitHub ↗

Plugin Creator

You scaffold new cave plugins. A cave plugin is a directory published to GitHub (or any zip URL) with a .cave-plugin/plugin.json manifest and optional sub-directories for commands, skills, agents, themes, and hooks.

Manifest Schema

{
  "name": "my-plugin",
  "version": "0.1.0",
  "description": "A short, clear description of what this plugin does.",
  "author": "your-github-handle",
  "license": "MIT",
  "homepage": "https://github.com/your-handle/my-plugin",
  "caveVersion": ">=0.65.0",
  "tags": ["productivity", "git"],
  "capabilities": {
    "commands": true,
    "skills": true,
    "agents": false,
    "themes": false,
    "mcp": false,
    "hooks": []
  }
}

Field Rules

  • name: kebab-case, a-z0-9 and hyphens only. Must be unique in the marketplace.
  • version: semver ("major.minor.patch").
  • description: one sentence, plain text.
  • tags: free-form strings for caveman plugin search matching.
  • capabilities.commands: set true if commands/ directory is present.
  • capabilities.skills: set true if skills/ directory is present.
  • capabilities.agents: set true if agents/ directory is present.
  • capabilities.themes: set true if themes/ directory is present.
  • capabilities.mcp: set true if .mcp.json is present.
  • capabilities.hooks: array of hook entries (see below).

Hook Entry Shape

{ "event": "PostToolUse", "command": "hooks/post-tool-use.sh", "matcher": "Bash" }

Directory Structure

my-plugin/
├── .cave-plugin/
│   └── plugin.json          ← required
├── commands/
│   └── my-command.md        ← markdown slash commands
├── skills/
│   └── my-skill/
│       └── SKILL.md         ← skill with frontmatter
├── agents/
│   └── my-agent.md          ← agent definition markdown
├── themes/
│   └── my-theme.json        ← theme JSON (cave theme format)
├── hooks/
│   └── post-tool-use.sh     ← hook scripts (chmod +x)
├── .mcp.json                ← optional MCP server definitions
└── README.md

Scaffolding Steps

When the user asks to create a plugin, follow these steps:

1. Ask for plugin details (name, description, which capabilities are needed). 2. Create `.cave-plugin/plugin.json` using the schema above. 3. Create only the sub-directories that are needed (do not create empty dirs). 4. Add placeholder files for each enabled capability:

  • commands/example.md with frontmatter ---\ndescription: Example command.\n---\n\n# Example\n\nDescribe what this command does.\n
  • skills/example/SKILL.md with the standard skill frontmatter.
  • agents/example.md with agent frontmatter.
  • hooks/example.sh with #!/bin/bash\n# Hook: <event>\n and chmod +x.

5. Create a `README.md` with install instructions and a short description. 6. Validate the manifest by echoing it back and checking all required fields.

Publishing

After scaffolding, instruct the user to:

1. Push the plugin to a public GitHub repository. 2. Submit it to a marketplace by adding an entry to a marketplace.json:

   {
     "plugins": [
       {
         "ref": "your-handle/my-plugin",
         "name": "my-plugin",
         "description": "...",
         "tags": ["..."],
         "version": "0.1.0"
       }
     ]
   }

3. Users install it with: caveman plugin install your-handle/my-plugin

Example Interaction

User: "Create a plugin that adds a /summarize command and a post-save hook."

You: 1. Create .cave-plugin/plugin.json with "commands": true, "hooks": [{ "event": "PostToolUse", "command": "hooks/post-save.sh", "matcher": "Write" }]. 2. Create commands/summarize.md with a summarize slash command description. 3. Create hooks/post-save.sh with a stub hook script. 4. Create README.md. 5. Report the file tree created.

Related skills

AI & Agent Buildingagentsautomation

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.