Agent skill

skill-validator

Validate Claude Code skills, commands, agents, hooks, and plugins against specifications. Checks structure, format, best practices, and common issues before committing or distributing. Use when: validating skills, checking plugins, linting components, ensuring quality. Activates for: "validate skill", "check skill", "validate plugin", "lint skill", "verify skill"

Stars 2
Forks 0

Install this agent skill to your Project

npx add-skill https://github.com/jbabin91/super-claude/tree/main/plugins/meta/skills/skill-validator

SKILL.md

Skill Validator

Validate Claude Code components against specifications and best practices.

When to Use

  • Before committing skills/plugins
  • Before distributing to marketplace
  • During skill development (catch issues early)
  • Reviewing community contributions
  • Ensuring quality standards

Validation Checks

Skills (SKILL.md)

Structure Checks

  • ✅ YAML frontmatter present and valid
  • ✅ Required fields: name, version, description
  • ✅ Name is kebab-case
  • ✅ Version follows semantic versioning
  • ✅ Description is clear and includes triggers

Content Checks

  • ✅ Has "When to Use" section
  • ✅ Has workflow or instructions
  • ✅ Includes examples
  • ✅ Under 500 lines (or has progressive disclosure)
  • ✅ No TODOs or placeholders
  • ✅ No generic labels (helper, util, tool)

Best Practices

  • ✅ Specific triggers (not too generic)
  • ✅ Real examples (not placeholders)
  • ✅ Clear, actionable instructions
  • ✅ Integration points documented
  • ✅ Troubleshooting section present

Commands

Structure Checks

  • ✅ YAML frontmatter with description
  • ✅ Clear command name
  • ✅ Usage examples provided
  • ✅ Parameters documented

Content Checks

  • ✅ Purpose is clear
  • ✅ Instructions are actionable
  • ✅ Examples show real usage
  • ✅ Parameter descriptions complete

Agents

Structure Checks

  • ✅ YAML frontmatter present
  • ✅ Model specified (haiku/sonnet/opus)
  • ✅ Purpose is clear
  • ✅ Workflow defined

Content Checks

  • ✅ Single responsibility
  • ✅ Operational principles defined
  • ✅ Quality standards specified
  • ✅ Success criteria clear
  • ✅ Appropriate model for task complexity

Hooks

Structure Checks

  • ✅ Valid JSON format
  • ✅ Event type is valid
  • ✅ Command is specified
  • ✅ Description provided

Safety Checks

  • ✅ No arbitrary code execution
  • ✅ File paths are validated
  • ✅ Commands are safe
  • ✅ Filters are specific (not too broad)

Plugins

Structure Checks

  • .claude-plugin/plugin.json exists
  • ✅ Valid JSON format
  • ✅ Required fields present
  • ✅ Referenced components exist
  • ✅ Directory structure correct

Manifest Checks

  • ✅ Name is kebab-case
  • ✅ Version follows semver
  • ✅ Description is clear
  • ✅ Keywords are relevant
  • ✅ Author info present (if distributing)

Core Workflow

1. Identify Component Type

Determine what to validate:

  • Skill (SKILL.md)
  • Command (.md in commands/)
  • Agent (.md in agents/)
  • Hook (hooks.json)
  • Plugin (entire plugin directory)

2. Run Validation Checks

Execute appropriate checks based on component type.

3. Report Issues

Categorize by severity:

  • Error: Must fix (prevents functionality)
  • Warning: Should fix (best practice violation)
  • Info: Consider fixing (minor improvement)

4. Provide Fixes

For each issue, provide:

  • Description of problem
  • Why it's an issue
  • How to fix it
  • Code example if applicable

Validation Examples

Skill Validation

Input: skills/my-skill.md

Checks:

txt
✅ YAML frontmatter valid
✅ Name: my-skill (kebab-case)
✅ Version: 1.0.0 (semver)
✅ Description present
⚠️  No triggers defined
⚠️  Missing "When to Use" section
✅ Has examples
✅ 342 lines (under 500)
❌ Contains TODO on line 45
❌ Uses generic label "helper" in title

Report:

txt
Errors (2):
  1. Line 45: TODO found - remove before publishing
  2. Line 12: Generic label "helper" - be more specific

Warnings (2):
  1. No triggers defined - skill won't auto-activate
  2. Missing "When to Use" section - users won't know when to apply

Info (0):
  None

Score: 6/10 - Fix errors before publishing

Plugin Validation

Input: my-plugin/

Checks:

txt
✅ plugin.json exists
✅ Valid JSON
✅ Name: my-plugin
✅ Version: 1.0.0
⚠️  No description
❌ Referenced skill "skill-1" not found in skills/
✅ Directory structure correct
⚠️  No README.md
⚠️  No LICENSE file

Report:

txt
Errors (1):
  1. plugin.json references "skill-1" but skills/skill-1.md doesn't exist

Warnings (3):
  1. plugin.json missing description field
  2. README.md not found - add documentation
  3. LICENSE file missing - add if distributing publicly

Info (0):
  None

Score: 5/10 - Fix errors, address warnings

Validation Rules

Severity Levels

Error (Must Fix):

  • Invalid YAML/JSON syntax
  • Missing required fields
  • Referenced files don't exist
  • TODOs in production code
  • Security issues in hooks
  • Invalid semantic version

Warning (Should Fix):

  • Missing recommended fields
  • No triggers (skill won't auto-activate)
  • Missing documentation sections
  • Generic/vague naming
  • No examples
  • No license (public distribution)

Info (Consider):

  • Could improve clarity
  • Additional documentation helpful
  • Consider progressive disclosure (long skills)

Common Issues

Generic Naming

txt
❌ my-helper
❌ utils-tool
❌ component-stuff

✅ shadcn-component-generator
✅ drizzle-schema-generator
✅ tanstack-query-hook

Missing Triggers

yaml
❌ Missing entirely

✅ triggers:
     keywords: [specific, technical, terms]
     patterns: ["regex.*patterns"]

TODOs in Production

markdown
❌ ## Feature X
TODO: Implement this later

✅ ## Feature X
Complete implementation

Vague Descriptions

txt
❌ "Helps with things"
❌ "Utility for stuff"

✅ "Generate type-safe API clients from OpenAPI schemas"
✅ "Validate React components for WCAG AAA accessibility"

Validation Output Format

txt
Component: [name]
Type: [skill|command|agent|hook|plugin]
Location: [file path]

Structure: [✅|⚠️|❌]
Content: [✅|⚠️|❌]
Best Practices: [✅|⚠️|❌]

Errors (must fix): [count]
  1. [description]
  2. [description]

Warnings (should fix): [count]
  1. [description]
  2. [description]

Info (consider): [count]
  1. [description]

Overall Score: [0-10]
Status: [Ready|Needs work|Not ready]

Recommendations:
  - [specific action 1]
  - [specific action 2]

Validation Best Practices

  1. Validate Early: Check during development, not just before publishing
  2. Fix Errors First: Don't publish with errors
  3. Address Warnings: They indicate best practice violations
  4. Review Info: Consider suggestions for improvements
  5. Re-validate: After fixes, validate again

Integration

With Hooks

Auto-validate before commits:

json
{
  "name": "validate-before-commit",
  "event": "user-prompt-submit",
  "when": "before",
  "command": "claude-validate --skills",
  "filter": {
    "promptPattern": "commit"
  }
}

With Commands

Create validation command:

markdown
---
description: Validate all skills in current plugin
---

# Validate Skills

Run skill-validator on all SKILL.md files in current plugin.

## Usage

\`\`\`
/validate-skills
\`\`\`

With CI/CD

Add to GitHub Actions:

yaml
- name: Validate Skills
  run: claude-validate --all --strict

References

Expand your agent's capabilities with these related and highly-rated skills.

jbabin91/super-claude

minimal-example

Example skill demonstrating required structure and best practices. Use this as a template for creating new skills. Activates when user mentions example, template, or minimal patterns.

2 0
Explore
jbabin91/super-claude

command-creator

Create custom slash commands for Claude Code with proper markdown structure and YAML frontmatter. Use when: creating commands, generating slash commands, making workflow automations. Activates for: "create command", "generate command", "new command", "slash command", "make command"

2 0
Explore
jbabin91/super-claude

plugin-creator

Create complete Claude Code plugins with proper structure including skills, commands, agents, and hooks. Generates plugin manifests and directory structures for distribution. Use when: building plugins, creating plugin packages, distributing skills to marketplace. Activates for: "create plugin", "generate plugin", "new plugin", "plugin package", "make plugin"

2 0
Explore
jbabin91/super-claude

hook-creator

Create event hooks for Claude Code that trigger on specific events. Generate hooks with proper JSON configuration for automating workflows. Use when: creating hooks, setting up event triggers, automating on file saves or tool calls. Activates for: "create hook", "generate hook", "new hook", "event hook", "make hook"

2 0
Explore
jbabin91/super-claude

agent-creator

Create specialized agents for Claude Code that handle specific tasks autonomously. Generate agent definitions with proper configuration and best practices. Use when: creating agents, generating sub-agents, setting up autonomous workflows. Activates for: "create agent", "generate agent", "new agent", "sub-agent", "make agent"

2 0
Explore
jbabin91/super-claude

skill-creator

Create new Claude Code skills with proper structure, validation, and best practices. Generates skills that follow Anthropic specifications and community patterns. Use when you need custom skills for specific workflows, either globally or per-project.

2 0
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results