Anssol
Back to Skills
Utility & Automation

SkillCheck (Free)

Free SKILL.md validator with 30+ checks across structure, naming, and semantics.

metavalidationauthoring

SkillCheck Free

License: MIT Claude Code Claude Projects Cursor

skillcheck passed

Validate AI coding assistant skills against the agentskills specification. Works with Claude Code, Claude Desktop/Web, and Cursor. Catch issues before your users do.

Why SkillCheck?

Agent Skills are now an open standard adopted by Claude Code, Cursor, and dozens of coding agents. Your skill needs to work everywhere and follow best practices.

SkillCheck validates:

  • Does the YAML frontmatter follow the spec?
  • Will it trigger when users actually need it?
  • Are the instructions clear and unambiguous?

Installation

Claude Code

The simplest path — use the skills CLI:

npx skills add olgasafonova/SkillCheck-Free

Or copy the folder manually:

cp -r skills/skill-check ~/.claude/skills/

Or clone directly:

git clone https://github.com/olgasafonova/SkillCheck-Free.git
cp -r SkillCheck-Free/skills/skill-check ~/.claude/skills/

Claude Desktop/Web (Projects)

  1. Open claude.ai or Claude Desktop app
  2. Create a new Project (or open an existing one)
  3. Go to Project settings → Custom instructions
  4. Copy the contents of skills/skill-check/SKILL.md (everything after the --- frontmatter)
  5. Paste into the custom instructions field

No file installation needed - the skill runs directly from your Project instructions.

Cursor

Copy the rule file to your project's .cursor/rules directory:

mkdir -p .cursor/rules
cp cursor-rules/skill-check.mdc .cursor/rules/

Or clone directly:

git clone https://github.com/olgasafonova/SkillCheck-Free.git
mkdir -p .cursor/rules
cp SkillCheck-Free/cursor-rules/skill-check.mdc .cursor/rules/

Where to find SkillCheck-Free

SkillCheck-Free is listed in:

Usage

In Claude Code, Claude Desktop/Web, or Cursor, say any of:

  • "skillcheck my skill"
  • "check skill at path/to/SKILL.md"
  • "validate my skills"

Example Output

## SkillCheck Results: my-awesome-skill

### Summary
- Critical: 1 | Warnings: 2 | Suggestions: 3 | Passed: 44

### Critical Issues
**[1.2-desc-what]** Line 3: Description missing action verb
**Fix**: Start description with Create, Generate, Build, Convert, etc.

### Warnings
**[4.2-ambiguous-term]** Line 47: Vague term "several" found
**Fix**: Specify exact count or range

### Strengths
- Skill includes example section
- Skill documents prerequisites
- Description includes activation triggers

What It Checks

Structure (1.x)

CheckWhat It Catches
1.1-nameInvalid name format, reserved words
1.2-descMissing or weak description (WHAT verb + WHEN trigger recommended)
1.3-toolsUnknown or deprecated tool formats
1.4-categoryInvalid category format
1.9-xmlXML angle brackets in frontmatter (prompt injection risk)
1.9-arg-hintsMissing argument-hint in frontmatter when $ARGUMENTS is used
1.10-readmeREADME.md inside skill folder (docs belong in SKILL.md)

Body (2.x)

CheckWhat It Catches
2.1-linesFile too long (500+ lines warning)
2.3-dateHardcoded dates that will go stale
2.4-emptyEmpty sections with no content
2.8-antipattern-formatAnti-pattern sections using prose instead of tables/bullets
2.9-mcp-tool-unqualifiedUnqualified MCP tool names missing server prefix

Naming (3.x)

CheckWhat It Catches
3.1-vagueGeneric names like "helper", "utils"
3.2-lengthNames too short or too long
3.3-singleSingle-word names lacking specificity
3.4-gerundGerund naming ("writing-helper" instead of verb-noun)

Semantic (4.x)

CheckWhat It Catches
4.1-contradictionConflicting instructions
4.2-ambiguousVague terms like "several", "appropriate"
4.3-outputOutput mentioned but no format specified
4.6-wisdomGeneric advice/platitudes instead of actionable instructions
4.7-desc-workflow-stepsDescription summarizes workflow steps (causes agents to skip body)

Design Pattern Classification (19.x)

SkillCheck classifies each skill into one of five design patterns from the Google ADK taxonomy:

PatternWhat It MeansExample Skills
ReviewerEvaluates output against criteriaskill-check, code-review
GeneratorProduces structured artifacts from templateslinkedin-post, brand-assets
InversionAsks user questions before actinggrill-me, feature-scoping
PipelineChains multiple steps with checkpointssift, tapestry
Tool WrapperWraps an API with context-aware instructionslmwtfy

Pro adds deep checks: validates pattern-specific requirements (criteria for Reviewers, output specs for Generators, etc.).

Quality Patterns (8.x) - Strengths

SkillCheck also recognizes good practices:

CheckWhat It Recognizes
8.1Has example section
8.2Documents error handling or limitations
8.3Description includes activation triggers
8.4Specifies output format with examples
8.5Uses structured instructions (numbered steps)
8.6Documents prerequisites
8.7Includes negative triggers to prevent over-triggering
8.8Uses ${CLAUDE_SKILL_DIR} for portable path references

Knowledge Density (22.x)

CheckWhat It Catches
22.7Gotchas/troubleshooting sections with only generic filler and no concrete knowledge

Pro adds: threshold detection (22.1), consequence patterns (22.2), experience markers (22.3), debugging sequences (22.4), decision density (22.5), and concrete code references (22.6).

Plugin Manifest (24.x)

When the input is a Claude Code plugin manifest (.claude-plugin/plugin.json), SkillCheck Free validates it against Anthropic's reference schema:

CheckWhat It Catches
24.1name not in kebab-case
24.2version not canonical semver (no v prefix, must be MAJOR.MINOR.PATCH)
24.3description missing or empty
24.4author.name missing or empty
24.5Command file collides with bundled Claude Code commands (simplify, batch, debug, loop, claude-api, security-review)
24.6.claude-plugin/ contains files other than plugin.json (commands/skills/hooks belong at plugin root)

Schema-floor rule: any rule that rejects Anthropic's own reference plugins is mis-calibrated. Validation stays compatible with the four-field minimum.

Pro adds Cat 24 marketplace governance: cross-plugin dedup detection, naming convention enforcement against an org taxonomy, change-gate eval integration, maintainers and deprecation provenance recommendations, and cross-skill dependency graphs.

MCP Tool List (23.x, Free hook)

When the input is an MCP server's tools/list response (standard MCP shape), SkillCheck Free surfaces two Agent Integration Readiness signals:

CheckWhat It Catches
23.1-tool-count-highServer exposes >20 tools (consider intent grouping or code-orchestration)
23.1-tool-count-strongServer exposes >40 tools (strong code-orchestration candidate, Cloudflare 2-tool reference)
23.1-api-mirror3+ CRUD verb prefixes against the same noun (1:1 OpenAPI mirror smell)

Pro adds full Cat 23: CIMD-OAuth detection, MCP Apps usage, code-orchestration adoption, server-delivered skills pairing, remote vs local availability, destructive flag annotations, and user-vs-agent distinction enforcement.

OWASP Agentic Top 10 (26.x)

Maps the OWASP Top 10 for Agentic Applications (2026) onto author-time text signals. The category only scores a skill with an agent surface (declares tools beyond Read/Glob/Grep, ingests external content, orchestrates subagents, or performs consequential actions); a plain text-formatting skill reports not-applicable. SkillCheck Free runs the 8 items with a deterministic signal:

CheckWhat It Catches
ASI-02 Tool Misuseallowed-tools: */all (critical), unconstrained Bash, or 5+ tools with no rationale
ASI-03 Identity Abusecaller-identity-override params (as_user, impersonate, run_as, etc.)
ASI-04 Supply Chainunpinned dependency installs (pip install x, npm install x, npx x@latest)
ASI-05 Code Executioneval/exec/pickle.loads/subprocess shell=True or curl ... | sh
ASI-08 Cascading Failureuncapped loops or fan-out ("retry until", "loop until")
ASI-09 Trust Exploitationdestructive op (rm -rf, git push --force, send/merge) with no confirmation gate nearby
ASI-10 Rogue Agentssafeguard-disabling flags (--no-verify, --force) or long-running tasks with no kill switch
ASI-11 Untraceabilityconsequential actions with zero logging/audit language

Pro adds the 7 grader items (ASI-01 goal hijack, ASI-06 memory poisoning, ASI-07 subagent trust, and the intent-reading halves of ASI-02/03/09/10): SkillCheck builds an evidence-loaded rubric pack and your own AI agent judges it, with no API key needed.

Severity Levels

LevelMeaningAction
CriticalSkill may not functionMust fix
WarningBest practice violationShould fix
SuggestionCould be improvedNice to have
StrengthGood practice detectedKeep it up

Free vs Pro

FeatureFreePro
Structure validationYesYes
Body & naming checksYesYes
Semantic consistencyYesYes
Quality patternsYesYes
Design Pattern ClassificationDetectionDeep checks
Knowledge DensityHollow contentFull density analysis
OWASP Agentic Top 108 deterministic checksGrader pack your AI evaluates
Artifact Contract Validation-Yes
Trigger Collision Detection-Yes
Eval Kit (test prompt generation)-Yes
Anti-slop detection-Yes
Security scanning-Yes
Token budget analysis-Yes
WCAG accessibility-Yes
Enterprise readiness-Yes
Production readiness-Yes
Agent Readiness (L0-L3)-Yes
MCP server integration-Yes
CI/CD binary-Yes

Get Pro: getskillcheck.com

Prerequisites

  • Claude Code (or any AI assistant with file Read capability)
  • Works on macOS, Linux, Windows
  • No dependencies required

How It Works

SkillCheck Free is itself a skill/rule file. When you say "skillcheck", your AI assistant reads the validation rules and applies them to your target skill. No external API calls, no binaries - just your assistant following instructions.

Contributing

Found a bug or have a suggestion? Open an issue at github.com/olgasafonova/SkillCheck-Free/issues

Links

License

MIT - see LICENSE


Built by Olga Safonova

Want something like this for your team?

We build custom MCPs and Claude skills tailored to private workflows. Get in touch.

Start a Conversation

Ready to Ship Something?

Tell us about your project. We respond within one business day with honest scoping — not a sales pitch.

Get Started