About validate-plugin
A validation skill for checking whether a Claude Code plugin follows the expected structure and metadata format. It verifies plugin manifests, skill and agent frontmatter, file locations, and MCP tool references, then reports results with fix suggestions.
Key features
- 01Check plugin directory structure
- 02Validate plugin.json fields and arrays
- 03Check skill and agent frontmatter
- 04Verify file locations
- 05Validate MCP tool references
- 06Report results with fix suggestions
Use cases
- 01Validate a plugin before publishing
- 02Find structural errors after plugin edits
- 03Check skill and agent metadata
MCP support
Checks that tools listed in allowed-tools use valid mcp__plugin_ruflo-core_ruflo__* identifiers.
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ ruvnet/ ruflo --skill validate-pluginAfter installing, type/validate-pluginin Claude Code to confirm it loaded.
Details
From the project READMEValidate Plugin
Validate that a plugin follows the correct Claude Code plugin format.
When to use
After creating or modifying a plugin, run validation to catch structural issues before publishing.
Checks performed
- Directory structure —
.claude-plugin/plugin.jsonexists at plugin root - plugin.json schema — required fields present (name, description, version)
- Skills auto-discovery — every
skills/<name>/SKILL.mdis a valid skill (Claude Code auto-discovers from directory;plugin.jsonMUST NOT list askillsarray) - Commands auto-discovery — every
commands/<name>.mdis a valid command (auto-discovered; nocommandsarray inplugin.json) - Agents auto-discovery — every
agents/<name>.mdis a valid agent (auto-discovered; noagentsarray inplugin.json) - No legacy arrays in plugin.json — presence of
skills,commands, oragentsarrays inplugin.jsonis a validation error (they cause Claude Code to reject the plugin) - SKILL.md frontmatter — each skill has
name,description, andallowed-tools(no wildcards) - Agent frontmatter — each agent has
name,description, andmodel - No files in wrong locations — skills/commands/agents not inside
.claude-plugin/ - MCP tool references — tools in
allowed-toolsare validmcp__plugin_ruflo-core_ruflo__*identifiers
Steps
- Read the plugin's
plugin.jsonand assert noskills/commands/agentsarrays present - Glob
skills/*/SKILL.md,commands/*.md,agents/*.mdand validate each frontmatter - For each SKILL.md, verify frontmatter has required fields and
allowed-toolshas no wildcards - For each agent .md, verify frontmatter has required fields
- Report pass/fail for each check with actionable fix suggestions
Comments
Markdown supported