
create-plugin
Scaffold a new Claude Code plugin with proper directory structure, plugin.json, skills, commands, and agents
- Installs
- 742
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/ruvnet/ruflo --skill create-plugin- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads create-plugin automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
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
- Get plugin name and description from the user
- Check for conflicts — call
mcp__plugin_ruflo-core_ruflo__transfer_plugin-searchto ensure the name isn't taken - 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 - Generate plugin.json with name, description, version, author (do NOT include
skills,commands, oragentsarrays — Claude Code auto-discovers these from directory structure) - Generate SKILL.md files with proper frontmatter:
--- name: skill-name description: What this skill does allowed-tools: mcp__plugin_ruflo-core_ruflo__tool1 mcp__plugin_ruflo-core_ruflo__tool2 Bash --- - Generate command files with name and description frontmatter
- Generate agent files with name, description, and
model: sonnet - Generate README.md with install instructions, features, commands, skills, AND the canonical plugin-contract sections:
- Compatibility — pin to
@claude-flow/cliv3.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
- Compatibility — pin to
- Generate ADR-0001 (Proposed) at
docs/adrs/0001-<name>-contract.mddocumenting: pinning, namespace coordination, MCP-tool surface count if applicable, smoke contract scope. Status:Proposed. - 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. - 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_embeddoes not exist. Real tool isembeddings_generate. Don't referenceembeddings_embedin anyallowed-toolsline.agentdb_hierarchical-*does NOT route by namespace. It routes by tier (working|episodic|semantic). Passtier, notnamespace. For namespaced reads/writes, usememory_*instead.agentdb_pattern-*does NOT route by namespace. It routes through ReasoningBank. Don't pass anamespacearg — fallback writes to the reservedpatternnamespace viamemory-store-fallback.pattern(singular) andpatterns(plural) are different namespaces. ReasoningBank fallback writes topattern;hooks_pretrainwrites topatterns. Don't conflate them.
Plugin.json schema
Required fields:
name— plugin identifier (kebab-case)description— what the plugin doesversion— 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):When// "graph_adapter": { // "edgeRelations": ["my-relation-type"], // "nodeTypes": ["entity"], // "autoRegister": true // }autoRegister: true, the plugin's edges are automatically included ingraph_edgeswrites by the core graph layer. DeclareedgeRelations— 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, retrievalagentdb_*— 15 controller-bridge tools (do NOT passnamespacearg — they route by tier or ReasoningBank); callagentdb_controllersat runtime for the canonical listneural_*— neural training and predictionhooks_*— lifecycle hooks and intelligencebrowser_*— browser automationworkflow_*— workflow managementaidefence_*— safety scanningembeddings_*— 10 vector-embedding tools (useembeddings_generate, NOTembeddings_embedwhich does not exist)
FAQ
What does the create-plugin skill do?
Scaffold a new Claude Code plugin with proper directory structure, plugin.json, skills, commands, and agents
How do I install create-plugin?
Run npx skills add https://github.com/ruvnet/ruflo --skill create-plugin in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/create-plugin/ (personal) or .claude/skills/create-plugin/ (project).
Which AI agents can use create-plugin?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is create-plugin safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains create-plugin?
It is published by ruvnet in ruvnet/ruflo. It has 742 recorded installs.
More from ruvnet/ruflo
swarm-orchestration
ruvnet/ruflo
Multi-agent swarm coordination for complex tasks. Uses hierarchical topology with specialized agents to break down and execute complex work across multiple files and modules. Use when: 3+ files need changes, new feature implementation, cross-module refactoring, API changes with tests, security-related changes, performance optimization across codebase, database schema changes. Skip when: single file edits, simple bug fixes (1-2 lines), documentation updates, configuration changes, quick exploration.
agent-arch-system-design
ruvnet/ruflo
Agent skill for arch-system-design - invoke with $agent-arch-system-design
agent-workflow
ruvnet/ruflo
Agent skill for workflow - invoke with $agent-workflow
security-audit
ruvnet/ruflo
Comprehensive security scanning and vulnerability detection. Includes input validation, path traversal prevention, CVE detection, and secure coding pattern enforcement. Use when: authentication implementation, authorization logic, payment processing, user data handling, API endpoint creation, file upload handling, database queries, external API integration. Skip when: read-only operations on public data, internal development tooling, static documentation, styling changes.
github-project-management
ruvnet/ruflo
Comprehensive GitHub project management with swarm-coordinated issue tracking, project board automation, and sprint planning
Popular other skills
hyperframes-cli
heygen-com/hyperframes
The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.
triage
mattpocock/skills
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
ask-matt
mattpocock/skills
Ask which skill or flow fits your situation. A router over the skills in this repo.
to-questionnaire
mattpocock/skills
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
loop-me
mattpocock/skills
Grill me about specs for the workflows I want to build, within this workspace.