- name
- create-plugin
- description
- Scaffold a new Claude Code plugin with proper directory structure, plugin.json, skills, commands, and agents
- argument-hint
- <plugin-name>
- allowed-tools
- mcp__claude-flow__transfer_plugin-info mcp__claude-flow__transfer_plugin-search mcp__claude-flow__transfer_store-search Bash Read Write Edit
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__claude-flow__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 (10+ 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__claude-flow__tool1 mcp__claude-flow__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/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
- 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
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__claude-flow__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)