agentsclimarketplace

Skill validator

Skill joaquimscosta/arkhe-claude-plugins/.claude/skills/skill-validator

Validate skills against Anthropic best practices for frontmatter, structure, content, file organization, hooks, MCP, and security (62 rules in 8 categories). Use when creating new skills, updating existing skills, before publishing skills, reviewing skill quality, or when user mentions "validate skill", "check skill", "skill best practices", "skill review", or "lint skill".From its SKILL.md

Install
npx -y skills add joaquimscosta/arkhe-claude-plugins --skill skill-validator

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 21 stars21 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

2.9 KB, 615 tokens by cl100k_base, as published. Nobody here has run it

Skill Validator

Run automated checks against 62 rules covering frontmatter, structure, content, files, references, security, hooks, and MCP.

Quick Start

scripts/validate_skill.py /path/to/skill-directory

With severity filter:

scripts/validate_skill.py /path/to/skill --min-severity warning

Validation Categories

CategoryRulesChecks
FrontmatterFM001-FM018Required fields, naming, description, context/agent, maxTurns, memory, disable-model-invocation
StructureSS001-SS006Line limits, progressive disclosure
ContentCW001-CW009Writing style, terminology, string substitution, dynamic context injection, ultrathink
FilesFO001-FO007Naming conventions, forbidden files
ReferencesRI001-RI003Broken links, orphan files
SecuritySC001-SC005eval/exec, undocumented constants
HooksHK001-HK003Hook structure, handler format, matcher format
MCPMC001MCP server configuration format

Severity Levels

LevelAction
CRITICALMust fix before publishing
ERRORShould fix
WARNINGConsider fixing
SUGGESTIONOptional improvement

Output Example

=== Skill Validation Report: my-skill ===

Summary: 0 critical, 1 error, 2 warnings, 1 suggestion

[ERROR] SS002: SKILL.md exceeds 500 lines (523 lines)
  Location: SKILL.md
  Fix: Split content into WORKFLOW.md, EXAMPLES.md, TROUBLESHOOTING.md

[WARNING] CW001: Second-person language detected
  Location: SKILL.md:45
  Found: "You should create..."
  Fix: Use imperative: "Create..."

Command Options

--min-severity {critical,error,warning,suggestion}  # Filter output
--format {text,json}                                # Output format
--ignore RULE1,RULE2                                # Skip specific rules

Common Issues

"False positive on second-person"

  • Context-appropriate "you" may be acceptable
  • Use --ignore CW001 to suppress

"Script security warning"

  • Add inline comment: # skill-validator: ignore SC001

"Hook/MCP validation incomplete"

  • Install PyYAML for full nested structure validation: pip install pyyaml

See TROUBLESHOOTING.md for complete issue handling.

References

What ships with it: 4 files

80.7 KB alongside SKILL.md, 1 of them executable

references/

scripts/

Gives 0 of the 12 instructions most quality gates skills give in 615 tokens

Counted across 1,524 of the 2,830 authors here whose files we hold, read 2026-09-06

  • Read full output and check exit codein 45 of 1524, across 40 files
  • Verify output confirms the claimin 44 of 1524, across 39 files
  • Identify the command that proves the claimin 43 of 1524, across 39 files
  • Execute the full verification commandin 36 of 1524, across 30 files
  • Produce a verification reportin 34 of 1524, across 18 files
  • Review git diff changesin 30 of 1524, across 16 files
  • Fix build failures immediatelyin 29 of 1524, across 9 files
  • Group findings by severityin 28 of 1524
  • State claim only with evidencein 27 of 1524, across 22 files
  • Verify regression tests with red-green cyclein 26 of 1524, across 22 files
  • Run the full test suitein 26 of 1524, across 25 files
  • Run test suite with coveragein 25 of 1524, across 10 files

Said here and by no other author read

  • Run automated checks against skill rules
  • Use imperative language in skill content
  • Install PyYAML for nested structure validation
  • Use ignore flags for false positives

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.