Agent skill

Create Plugin

by ruvnet in ruvnet/ruflo

Scaffold a new Claude Code plugin with proper directory structure, plugin.json, skills, commands, and agents

MITAuto-check: notesAgent Workflows

Install Create Plugin

skills CLI
$ npx skills add ruvnet/ruflo --skill create-plugin -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ruvnet/ruflo create-plugin --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ruvnet/ruflo.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/ruflo-plugin-creator/skills/create-plugin .claude/skills/create-plugin && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
create-plugin
GitHub stars
74k
Token cost
~1.4k tokens
SKILL.md length
491 words
Files
1
Skills in repo
264
Repo updated
First seen
Licence
MIT

At a glance

Scaffold a new Claude Code plugin with proper directory structure, plugin.json, skills, commands, and agents

  • Works in 11 steps: Get plugin name and description from the… → Check for conflicts — call… → Create directory structure (follows the… → …
  • Tasks that involve Hooks and plugins
  • SKILL.md covers When to use, Steps, MCP-tool drift to avoid (per… and Plugin.json schema, plus 1 more section
  • Calls bash

What it does

Create Plugin is an agent skill from ruvnet/ruflo. Scaffold a new Claude Code plugin with proper directory structure, plugin.json, skills, commands, and agents

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Agent Workflows, covering Hooks and plugins, MCP servers and Architecture decision records. The repository describes itself as: 🌊 The original agent harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory…. The licence is MIT.

When your agent uses it

  • Tasks that involve Hooks and plugins
  • Tasks that involve MCP servers
  • Tasks that involve Architecture decision records

Example prompts

  • “/create-plugin”

Requirements

  • Pre-approved tools (allowed-tools): mcp__plugin_ruflo-core_ruflo__transfer_plugin-info, mcp__plugin_ruflo-core_ruflo__transfer_plugin-search, mcp__plugin_ruflo-core_ruflo__transfer_store-search, Bash, Read, Write, Edit

Workflow steps

11 steps, taken from the first numbered list in SKILL.md.

  1. Get plugin name and description from the user
  2. Check for conflicts — call mcpplugin_ruflo-core_ruflotransfer_plugin-search to ensure the name isn't taken
  3. Create directory structure (follows the canonical plugin contract from sibling plugins' ADR-0001s)
  4. Generate plugin.json with name, description, version, author (do NOT include skills, commands, or agents arrays — Claude Code…
  5. Generate SKILL.md files with proper frontmatter
  6. Generate command files with name and description frontmatter
  7. Generate agent files with name, description, and model: sonnet
  8. Generate README.md with install instructions, features, commands, skills, AND the canonical plugin-contract sections
  9. Generate ADR-0001 (Proposed) at docs/adrs/0001--contract.md documenting: pinning, namespace coordination, MCP-tool surface count if…
  10. Generate scripts/smoke.sh — at minimum 8 structural checks: version + keywords; skills/agents/commands present with valid frontmatter…
  11. Update marketplace.json if adding to the ruflo marketplace.

What it can do on your machine

Read from SKILL.md and the folder at commit de590e1. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • mcp__plugin_ruflo-core_ruflo__transfer_plugin-info
    • mcp__plugin_ruflo-core_ruflo__transfer_plugin-search
    • mcp__plugin_ruflo-core_ruflo__transfer_store-search
    • Bash
    • Read
    • Write
    • Edit

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Create Plugin loads about 1.4k tokens when it runs. Until then it costs about 31 tokens; SKILL.md has 491 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~31
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: mcp__plugin_ruflo-core_ruflo__transfer_plugin-info, mcp__plugin_ruflo-core_ruflo__transfer_plugin-se

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ruvnet/ruflo at commit de590e1, republished under its MIT licence (© ruvnet). 491 words, ~1,365 tokens.

Download SKILL.mdSave it as .claude/skills/create-plugin/SKILL.md (or your agent's skills folder).
name
create-plugin
description
Scaffold a new Claude Code plugin with proper directory structure, plugin.json, skills, commands, and agents
allowed-tools
mcp__plugin_ruflo-core_ruflo__transfer_plugin-info, mcp__plugin_ruflo-core_ruflo__transfer_plugin-search, mcp__plugin_ruflo-core_ruflo__transfer_store-search, Bash, Read, Write, Edit
argument-hint
<plugin-name>

Create Plugin

Scaffold a new Claude Code plugin from scratch.

When to use

When you want to create a new plugin that extends Claude Code with skills, commands, and agents. This generates the correct directory structure and wires up MCP tools.

Steps

  1. Get plugin name and description from the user
  2. Check for conflicts — call mcp__plugin_ruflo-core_ruflo__transfer_plugin-search to ensure the name isn't taken
  3. Create directory structure (follows the canonical plugin contract from sibling plugins' ADR-0001s):
    plugins/<name>/
    ├── .claude-plugin/
    │   └── plugin.json
    ├── skills/
    │   └── <skill-name>/
    │       └── SKILL.md
    ├── commands/
    │   └── <command-name>.md
    ├── agents/
    │   └── <agent-name>.md
    ├── docs/
    │   └── adrs/
    │       └── 0001-<name>-contract.md     # Plugin-level ADR (Proposed)
    ├── scripts/
    │   └── smoke.sh                         # Structural contract (≥8 checks)
    └── README.md                            # Compatibility + Namespace coordination + Verification + ADR sections
  4. Generate plugin.json with name, description, version, author (do NOT include skills, commands, or agents arrays — Claude Code auto-discovers these from directory structure)
  5. Generate SKILL.md files with proper frontmatter:
    yaml
    ---
    name: skill-name
    description: What this skill does
    allowed-tools: mcp__plugin_ruflo-core_ruflo__tool1 mcp__plugin_ruflo-core_ruflo__tool2 Bash
    ---
  6. Generate command files with name and description frontmatter
  7. Generate agent files with name, description, and model: sonnet
  8. Generate README.md with install instructions, features, commands, skills, AND the canonical plugin-contract sections:
    • Compatibility — pin to @claude-flow/cli v3.6 major+minor
    • Namespace coordination — claim a kebab-case <plugin-stem>-<intent> namespace; defer to ruflo-agentdb ADR-0001 §"Namespace convention"
    • Verification — bash plugins/<name>/scripts/smoke.sh
    • Architecture Decisions — link to ADR-0001
  9. Generate ADR-0001 (Proposed) at docs/adrs/0001-<name>-contract.md documenting: pinning, namespace coordination, MCP-tool surface count if applicable, smoke contract scope. Status: Proposed.
  10. Generate scripts/smoke.sh — at minimum 8 structural checks: version + keywords; skills/agents/commands present with valid frontmatter; v3.6 pin in README; namespace coordination block in README; ADR exists with status Proposed; no wildcard tools in skills.
  11. Update marketplace.json if adding to the ruflo marketplace.

MCP-tool drift to avoid (per sibling-ADR lessons learned)

Several plugins shipped with subtle MCP bugs the loop has been finding. Don't replicate them:

  • embeddings_embed does not exist. Real tool is embeddings_generate. Don't reference embeddings_embed in any allowed-tools line.
  • agentdb_hierarchical-* does NOT route by namespace. It routes by tier (working|episodic|semantic). Pass tier, not namespace. For namespaced reads/writes, use memory_* instead.
  • agentdb_pattern-* does NOT route by namespace. It routes through ReasoningBank. Don't pass a namespace arg — fallback writes to the reserved pattern namespace via memory-store-fallback.
  • pattern (singular) and patterns (plural) are different namespaces. ReasoningBank fallback writes to pattern; hooks_pretrain writes to patterns. Don't conflate them.
Show full SKILL.md (167 more words)Show less

Plugin.json schema

Required fields:

  • name — plugin identifier (kebab-case)
  • description — what the plugin does
  • version — semver

Recommended fields:

  • author — { "name": "...", "url": "..." }
  • homepage, license, keywords

Optional fields:

  • graph_adapter — ADR-130 graph intelligence contract (commented out by default in generated output):
    json
    // "graph_adapter": {
    //   "edgeRelations": ["my-relation-type"],
    //   "nodeTypes": ["entity"],
    //   "autoRegister": true
    // }
    When autoRegister: true, the plugin's edges are automatically included in graph_edges writes by the core graph layer. Declare edgeRelations — the relation types this plugin produces.

Do NOT include skills, commands, or agents arrays in plugin.json — these are auto-discovered from the directory structure by Claude Code and will cause validation errors if present.

Available MCP tools to wire

Browse available tools: mcp__plugin_ruflo-core_ruflo__transfer_plugin-info

Common tool categories:

  • memory_* — storage, search, retrieval
  • agentdb_* — 15 controller-bridge tools (do NOT pass namespace arg — they route by tier or ReasoningBank); call agentdb_controllers at runtime for the canonical list
  • neural_* — neural training and prediction
  • hooks_* — lifecycle hooks and intelligence
  • browser_* — browser automation
  • workflow_* — workflow management
  • aidefence_* — safety scanning
  • embeddings_* — 10 vector-embedding tools (use embeddings_generate, NOT embeddings_embed which does not exist)

© ruvnet, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/ruflo-plugin-creator/skills/create-plugin of ruvnet/ruflo.

Open the folder on GitHubat commit de590e1

Compare with similar skills

Create Plugin next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Create Plugin compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Create Plugin this skillruvnet/ruflo74k—~1.4kAutomated safety check: NotesMIT
MCP Integration for Pluginsanthropics/claude-plugins-official37k11 repos~3.1kAutomated safety check: PassApache-2.0
Crush Configurationcharmbracelet/crush29k—~3.7kAutomated safety check: PassCustom licence
OpenpetsOpenPetsHQ/openpets1.3k—~2.1kAutomated safety check: PassMIT
Claude Automation Recommenderanthropics/claude-plugins-official37k3 repos~2.7kAutomated safety check: NotesApache-2.0
Mistral Vibe Plugin Creatormistralai/mistral-vibe5.1k—~3.1kAutomated safety check: PassApache-2.0

Similar skills

  • MCP Integration for Plugins

    anthropics/claude-plugins-official

    Official

    Explains how to bundle Model Context Protocol servers in a Claude Code plugin, covering config files, stdio, SSE, HTTP and WebSocket server types, and authentication.

    37k GitHub starsUsed in 11 repos~3.1k tokens
    Agent WorkflowsAuto-check passed
  • Crush Configuration

    charmbracelet/crush

    Explains how to configure the Crush coding agent with crushrc or crush.json, covering providers, models, LSPs, MCP servers, hooks, permissions and config precedence.

    29k GitHub stars~3.7k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Openpets

    OpenPetsHQ/openpets

    A skill your agent uses whenever the user wants to build, extend, debug, test, validate, locally load, package, or publish an OpenPets plugin; work with the OpenPets Plugin SDK v3, plugin manifest…

    1.3k GitHub stars~2.1k tokensUpdated 10 days ago
    Agent WorkflowsAuto-check passed
  • Claude Automation Recommender

    anthropics/claude-plugins-official

    Official

    Scans a codebase and suggests which Claude Code hooks, subagents, skills, plugins and MCP servers fit its stack, without changing any files.

    37k GitHub starsUsed in 3 repos~2.7k tokens
    Agent WorkflowsAuto-check: notes
  • Mistral Vibe Plugin Creator

    mistralai/mistral-vibe

    Official

    Shows how to build a Vibe plugin package in the Agent Plugins 1.0 format, with a plugin.json manifest and optional skills, MCP servers, hooks and other components.

    5.1k GitHub stars~3.1k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Audits a project's agent configuration, instruction drift, hooks, MCP and AI maintainability, then reports prioritized findings with evidence and next actions.

    7.2k GitHub stars~5.2k tokensUpdated today
    Agent WorkflowsAuto-check: notes

More from ruvnet/ruflo

All 264 skills in this repo
  • Stores, searches, and retrieves successful patterns with HNSW-indexed semantic search so agents can reuse past solutions instead of relearning them.

    74k GitHub starsUsed in 2 repos~830 tokens
    Auto-check passed
  • Runs claude-flow CLI security scans for input validation, path traversal, SQL injection, XSS, hardcoded secrets and known CVEs, and writes an audit report.

    74k GitHub starsUsed in 2 repos~823 tokens
    Auto-check passed
  • Applies the SPARC method (specification, pseudocode, architecture, refinement, completion) with 17 specialized modes and multi-agent orchestration, from research to deployment.

    74k GitHub starsUsed in 2 repos~829 tokens
    Auto-check passed
  • Coordinates a hierarchical swarm of specialized agents through the claude-flow CLI for work that spans several files or modules at once.

    74k GitHub starsUsed in 2 repos~779 tokens
    Auto-check passed
  • Sets up and drives Ruflo, an npm-installed orchestration layer for multi-agent swarms, persistent memory, routing, hooks and its MCP tool catalog.

    74k GitHub starsUsed in 1 repo~975 tokens
    Auto-check passed
  • Agent Coordination

    ruvnet/ruflo

    Reference for spawning, listing, monitoring and stopping agents with claude-flow commands, with agent type families, routing codes and coordination tips.

    74k GitHub starsUsed in 2 repos~519 tokens
    Auto-check passed

Categories

Questions about Create Plugin

What does Create Plugin do?

Scaffold a new Claude Code plugin with proper directory structure, plugin.json, skills, commands, and agents. Create Plugin is an agent skill from ruvnet/ruflo.

When should I use Create Plugin?

Create Plugin fits situations like: tasks that involve Hooks and plugins; tasks that involve MCP servers; tasks that involve Architecture decision records.

How do I install Create Plugin in Claude Code?

Run `npx skills add ruvnet/ruflo --skill create-plugin -a claude-code`. Or copy the skill folder (plugins/ruflo-plugin-creator/skills/create-plugin in ruvnet/ruflo) into .claude/skills/create-plugin in your project. Claude Code loads it when a task matches its description.

How do I install Create Plugin in Codex?

Run `npx skills add ruvnet/ruflo --skill create-plugin -a codex`. Or copy the skill folder (plugins/ruflo-plugin-creator/skills/create-plugin in ruvnet/ruflo) into .agents/skills/create-plugin in your project. Codex loads it when a task matches its description.

Can I use Create Plugin in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ruvnet/ruflo --skill create-plugin -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-plugin, .gemini/skills/create-plugin, .github/skills/create-plugin and .opencode/skills/create-plugin in your project.

What does Create Plugin need to run?

Going by SKILL.md and its folder, Create Plugin needs the command-line tools its instructions call (bash). Its frontmatter pre-approves these tools: mcp__plugin_ruflo-core_ruflo__transfer_plugin-info, mcp__plugin_ruflo-core_ruflo__transfer_plugin-search, mcp__plugin_ruflo-core_ruflo__transfer_store-search, Bash, Read, Write, Edit.

Does Create Plugin access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Create Plugin safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Create Plugin use?

Create Plugin is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create Plugin use?

About 1.4k tokens (SKILL.md is roughly 5.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Create Plugin?

Skills that share tags, products or a category with Create Plugin: MCP Integration for Plugins (anthropics/claude-plugins-official, 37k stars), Crush Configuration (charmbracelet/crush, 29k stars), Openpets (OpenPetsHQ/openpets, 1.3k stars) and Claude Automation Recommender (anthropics/claude-plugins-official, 37k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Create Plugin?

ruvnet (a GitHub user) maintains it in ruvnet/ruflo, which has 74,012 GitHub stars. The repository holds 264 skills in this directory. The repository was last updated on October 7, 2026.

Source: ruvnet/ruflo on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.