plugins/plugin-dev/skills/validating-plugins/SKILL.md
Thoroughly validate a Claude Code plugin's manifest, directory structure, commands, agents, skills, hooks, and MCP config, then report issues by severity. Use when the user asks to validate, check, audit, or lint a plugin, verify a plugin.json or plugin structure, debug why a plugin won't load, or mentions "plugin validate", "invalid manifest", or "plugin not loading".
npx skillsauth add pleaseai/claude-code-plugins validating-pluginsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Perform a comprehensive validation of the plugin and report findings grouped by severity. Start with the CLI validator, then check what it does not cover.
claude plugin validate plugins/<name>
claude plugin validate .claude-plugin/marketplace.json
.claude-plugin/plugin.json).claude-plugin/plugin.json, not root only).name (string, kebab-case).version (valid semver), description, author, repository, keywords.$schema set to https://json.schemastore.org/claude-code-plugin-manifest.json../ and are relative.${CLAUDE_PLUGIN_ROOT}..claude-plugin/ holds plugin.json only.commands/, agents/, skills/, hooks/ are at the plugin root.README.md and LICENSE present..claude-plugin/.For each .md in commands/: valid Markdown, kebab-case filename, clear actionable content,
frontmatter where useful, descriptive summary.
For each skills/<name>/SKILL.md: YAML frontmatter present with name (gerund form) and a
description that carries specific activation triggers; body under ~500 lines.
hooks/hooks.json is valid JSON.chmod +x).${CLAUDE_PLUGIN_ROOT}.hookSpecificOutput).mcpServers or .mcp.json.npx -y pattern where applicable.${VAR:-} pattern.CHANGELOG.md
recommended.file:line references and actionable fixes.# Plugin Validation Report: <plugin-name>
## Critical Issues ❌
- [FILE:LINE] Issue — Fix: specific solution
## Warnings ⚠️
- [FILE:LINE] Issue — Recommendation: suggested improvement
## Suggestions 💡
- [FILE:LINE] Enhancement — Suggestion: how to improve
## Summary
- Total: X · Critical: X · Warnings: X · Suggestions: X
## Next Steps
1. Fix critical issues first
2. Address warnings for quality
3. Consider suggestions
tools
Creates durable, resumable workflows using Vercel's Workflow SDK. Use when building workflows that need to survive restarts, pause for external events, retry on failure, or coordinate multi-step operations over time. Triggers on mentions of "workflow", "durable functions", "resumable", "workflow sdk", "queue", "event", "push", "subscribe", or step-based orchestration.
tools
Install and configure Vercel Workflow SDK before it exists in node_modules. Use when the user asks to "install workflow", "set up workflow", "add durable workflows", "configure workflow sdk", or "init workflow" for Next.js, Express, Hono, Fastify, NestJS, Nitro, Nuxt, Astro, SvelteKit, or Vite.
tools
Migrates Temporal, Inngest, Trigger.dev, and AWS Step Functions workflows to the Workflow SDK. Use when porting Activities, Workers, Signals, step.run(), step.waitForEvent(), Trigger.dev tasks / wait.forToken / triggerAndWait, ASL JSON state machines, Task/Choice/Wait/Parallel states, task tokens, or child workflows.
tools
Use when building UIs leveraging the WordPress Design System (WPDS) and its components, tokens, patterns, etc.