Skip to content
cccskills
FreePublished on GitHub

plugin-creator

Scaffold a complete cave plugin bundle — generates .cave-plugin/plugin.json manifest and the standard directory structure (commands/, skills/, agents/, themes/, hooks/). Use when a user wants to create, publish, or package a cave plugin for the marketplace. Triggered by "create a plugin", "scaffold a plugin", "/plugin create", or "new cave plugin".

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md4.3 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

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.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

How to write and maintain DESIGN.md as the visual specification layer for Cavekit projects. Nine-section format, design tokens, accessibility, integration with kits/plans. Use when defining or revising visual identity, importing a third-party design system, or auditing UI code against design tokens.

The English summary is being prepared. Showing the original description.

JuliusBrussee/caveman-code941Updated Aug 15, 2026

Cavekit specification-driven development methodology — the Hunt lifecycle (Draft → Architect → Build → Inspect → Monitor) and how to apply it. Use when starting a Cavekit project, structuring an existing codebase as kits/plans, or routing between sub-skills.

The English summary is being prepared. Showing the original description.

JuliusBrussee/caveman-code941Updated Aug 15, 2026

Trace bugs and manual fixes back to kits and prompts; fix at the source so the iteration loop can reproduce the fix autonomously. Six-step revision process plus the single-failure backpropagation protocol. Use when a manual hot-fix has been applied, when convergence stalls, or when the same class of bug keeps reappearing.

The English summary is being prepared. Showing the original description.

JuliusBrussee/caveman-code941Updated Aug 15, 2026

Validation-first design for Cavekit — every kit requirement must be automatically verifiable. Six-gate validation pipeline, phase gates, merge protocol, completion signals, acceptance criteria patterns. Use when designing acceptance criteria, wiring CI gates, or debugging why an agent is producing output that nobody can verify.

The English summary is being prepared. Showing the original description.

JuliusBrussee/caveman-code941Updated Aug 15, 2026

Ultra-compressed communication mode (lite / full / ultra) that cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Use when the user requests "caveman mode", "less tokens", "be brief", or when output budget is tight.

The English summary is being prepared. Showing the original description.

JuliusBrussee/caveman-code941Updated Aug 15, 2026

Example skill loaded from resources_discover

The English summary is being prepared. Showing the original description.

JuliusBrussee/caveman-code941Updated Aug 15, 2026

See all skills by JuliusBrussee

Report a problem with this skill