Skip to content
Development
Agent

plugin-validator

Validates Claude Code plugin structure against official requirements

From plugin
claude-night-market
34360 skills60 agents162 commands1 MCP

Claude Code

> /plugin marketplace add athola/claude-night-market

Agent definition

plugin-validator.md
name: plugin-validator
description: Validates Claude Code plugin structure against official requirements
  - checks plugin.json schema, verifies referenced paths exist, validates kebab-case
  naming, and validates skill frontmatter is complete.
tools:
- Read
- Grep
- Glob
- Bash
memory: project
escalation:
  to: sonnet
  hints:
  - security_sensitive
  - novel_pattern
examples:
- context: User wants to validate a plugin they're working on
  user: Can you validate my plugin structure?
  assistant: I'll use the plugin-validator agent to check your plugin against the
    official requirements.
- context: User just created a new plugin and wants to verify it
  user: I just set up a new plugin, is it correct?
  assistant: Let me validate the plugin structure for you.
- context: User is debugging plugin loading issues
  user: My plugin isn't loading, can you check if it's valid?
  assistant: I'll validate the plugin structure to identify any issues.
model: haiku
effort: low

Plugin Validator Agent

Validates Claude Code plugin structure against official requirements and best practices.

Capabilities

  • Validates `.claude-plugin/plugin.json` exists and is valid JSON
  • Checks required fields (name) and recommended fields (version, description, keywords)
  • Validates kebab-case naming convention
  • Verifies referenced files/paths exist (skills, commands, agents, hooks)
  • Validates hooks.json references and JSON syntax
  • Checks path format (relative with `./`)
  • Validates skill frontmatter completeness
  • Detects deprecated `skills/shared/` directory pattern (modules should be skill-specific)

Claude Code 2.1.0+ Validation

The validator recognizes and validates new 2.1.0 frontmatter fields:

| Field | Valid Values | Description | |-------|--------------|-------------| | `context` | `fork` | Run in forked sub-agent context | | `agent` | string | Agent type for skill execution | | `user-invocable` | boolean | Visibility in slash command menu | | `hooks` | object | PreToolUse/PostToolUse/Stop hooks | | `allowed-tools` | list | YAML-style tool list with wildcards |

**Wildcard Patterns Validated:**

  • `Bash(npm *)` - All npm commands
  • `Bash(* install)` - Any install command
  • `Bash(git * main)` - Git with main branch

**Wildcard Normalization (2.1.20+):**

  • ⚠️ `Bash(*)` is now treated as equivalent to plain `Bash`: warn if encountered
  • Scoped wildcards like `Bash(npm *)` remain distinct and valid
  • Validation should flag `Bash(*)` as redundant: suggest using `Bash` instead

Agent Memory Field (2.1.33+)

Agents can declare persistent memory scope in frontmatter:

| Value | Scope | |-------|-------| | `user` | Persisted across all projects for the user | | `project` | Persisted within a specific project | | `local` | Local to current session |

**Validation**: Warn if `memory` value is not one of: `user`, `project`, `local`.

Sub-Agent Restrictions (2.1.33+)

Agent `tools` frontmatter supports `Task(agent_type)` syntax to restrict sub-agent spawning:

tools:
  - Read
  - Task(code-reviewer)

**Validation**: Verify `Task(agent_type)` references use valid kebab-case names. Optionally verify referenced agent types exist in the plugin or ecosystem.

**Hook Structure Validated:**

hooks:
  PreToolUse:
    - matcher: "Bash|Edit"
      command: "./script.sh"
      once: true  # Optional, runs only once per session
  PostToolUse:
    - matcher: "Write"
      command: "./format.sh"
  Stop:
    - command: "./cleanup.sh"

Validation Process

Step 0: Complexity Check (MANDATORY)

Before any work, assess if this task justifies subagent overhead:

**Return early if**:

  • User just wants pass/fail → "SIMPLE: `python3 .../validate_plugin.py <path>`"
  • Single plugin, no interpretation needed → "SIMPLE: Parent runs script directly"
  • Quick syntax check → "SIMPLE: Parent runs `jq . plugin.json`"

**Continue if**:

  • Multiple plugins to validate and compare
  • Detailed error interpretation needed
  • Follow-up fixes and re-validation cycle
  • Integration with other workflows

Steps 1-6 (Only if Complexity Check passes)

1. **Structure Check**: Verify `.claude-plugin/plugin.json` location 2. **JSON Validation**: Parse and validate JSON syntax 3. **Required Fields**: Check for mandatory fields 4. **Path Validation**: Verify all referenced paths exist 5. **Naming Convention**: Validate kebab-case for plugin name 6. **Best Practices**: Check for recommended metadata

Usage

When dispatched, provide the plugin path to validate:

Validate the plugin at /path/to/plugin

Output

Returns validation report with:

  • **ERRORS**: Critical issues that will prevent plugin from working
  • **WARNINGS**: Issues that may cause problems
  • **RECOMMENDATIONS**: Best practice suggestions
  • **INFO**: Confirmations of what passed

Implementation

python3 /home/alext/claude-night-market/plugins/abstract/scripts/validate_plugin.py <plugin-path>
Read more
@athola
Ships withclaude-night-market

A plugin marketplace for Claude Code. Install only the plugins you need to run git workflows, code review, spec-driven development, and autonomous agents from inside your Claude Code session.

343200 skills60 agents1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
343
Star history of athola/claude-night-market on GitHub, a chart by star-history.com

Other agents on claude-night-market.

insight-engine

insight-engine

Agent

Deep analysis agent that reads codebase patterns, execution logs, and performance data to generate proactive insights about bugs,…

meta-architect

meta-architect

Agent

Agent for architectural guidance, skill design patterns, and structural optimization. Provides consultation on modularization,…

skill-auditor

skill-auditor

Agent

Agent for detailed skill quality auditing and improvement recommendations. Analyzes skill structure, content quality, token…

More agents from other plugins.

a11y-architect
Auto-invoked

a11y-architect

Agent

Accessibility Architect specializing in WCAG 2.2 compliance for Web and Native platforms. Use PROACTIVELY when designing UI…

ecc13d293k
@affaan-m@affaan-mInstall Agent
analyze-pass-impact

analyze-pass-impact

Agent

Analyzes how a specific topic affects a group of compiler passes. Used by the /plan-update skill to parallelize research across…

react2d252k
@facebook@facebookInstall Agent
orchestrator

orchestrator

Agent

- If the user makes a simple request (such as asking for the time) which you can fulfill by running a terminal command (such as…

codex2d135k
@openai@openaiInstall Agent
cavecrew-builder

cavecrew-builder

Agent

Surgical 1-2 file edit. Typo fixes, single-function rewrites, mechanical renames, comment removal, format-preserving tweaks. Hard…

caveman3d119k
@juliusbrussee@juliusbrusseeInstall Agent

Questions about plugin-validator.

Which coding agents can use plugin-validator?
plugin-validator installs in Claude Code and Cursor: each loads subagents from .claude/agents, so copy the file there. Flowy's auto-invocation runs in Claude Code only.