name: aigent-scorer description: >- Scores AI agent skill definitions (SKILL.md files) against the Anthropic best-practices checklist. Provides quality ratings (0-100) with structural and semantic breakdown. Use when reviewing skill quality, improving existing skills, or preparing skills for sharing. allowed-tools: Bash(aigent score *), Bash(aigent validate *), Bash(command -v *), Read, Glob argument-hint: "[skill-directory-or-file]"
Skill Scorer
Setup
Check if aigent is available:
command -v aigent
With aigent CLI
If aigent is on $PATH, use the CLI for authoritative scoring:
aigent score <skill-directory>
Output shows a 0-100 score with breakdown:
Score: 76/100
Structural (60/60):
[PASS] SKILL.md exists and is parseable
[PASS] Name format valid
...
Quality (16/40):
[PASS] Third-person description
[FAIL] Missing trigger phrase
...
Use --format json for machine-readable output.
Exit code 0 means perfect score (100/100). Non-zero means room for improvement.
Without aigent CLI
If aigent is not available, score manually using this checklist.
Structural checks (60 points)
All structural checks must pass to earn 60 points. Any failure zeroes the structural score.
- SKILL.md exists — file present with valid YAML frontmatter
- Name format — lowercase, hyphens, digits only; no consecutive hyphens; no leading/trailing hyphens; no reserved words; matches directory name; 64 chars max
- Description valid — non-empty, 1024 chars max, no XML tags
- Required fields —
nameanddescriptionpresent and string-typed - No unknown fields — only spec-defined keys in frontmatter
- Body size — body under 500 lines
Quality checks (40 points, 8 each)
Each passing check earns 8 points.
- Third-person description — no "I", "me", "my", "you", "your"
- Trigger phrase — description includes "Use when", "Use for", or similar
- Gerund name — first segment ends in "-ing" (e.g., "processing-pdfs")
- Specific name — not generic ("helper", "utils", "tools", etc.)
- Detailed description — at least 20 characters and 4 words
Scoring formula
total = structural_pass ? 60 : 0
total += quality_checks_passed * 8
Maximum score: 100 (60 structural + 40 quality).