| name | skill-reviewer |
| description | Review existing skills and suggest improvements. Use when asked to review, audit, or improve a skill — validates against Agent Skills spec and best practices. Also triggers when drafting or creating a new skill. Run `uvx skills-ref validate` to check spec compliance. |
| allowed-tools | ["Bash(skills-ref:*) Bash(uvx:*) Read Edit Write Glob Grep"] |
Skill Reviewer
Review existing skills and generate actionable improvement suggestions using both inline patch/diff format and structured JSON output.
When to Use
- User explicitly requests review of a skill at a specific path
- User is drafting or creating a new skill (auto-trigger)
- After running
uvx skills-ref validate to understand spec violations
Core Workflow
1. Load & Parse
Identify the skill path to review:
- Explicit: User provides skill path directly
- Auto-trigger: User mentions "new skill", "create skill", "draft skill" → review the SKILL.md being created
Read the target skill's SKILL.md:
- Extract YAML frontmatter (name, description, optional fields)
- Parse body content for structural analysis
2. Validate with skills-ref
Run the Agent Skills validation CLI:
uvx skills-ref validate ./path/to/skill
This catches:
- Invalid frontmatter YAML syntax
- Missing required fields (name, description)
- Name format violations (must be hyphen-case, max 64 chars)
- Description over 1024 characters
- Unexpected frontmatter fields
3. Review Against Criteria
Evaluate the skill using the criteria in references/review-criteria.md:
Frontmatter Checks
Description Quality
Body Structure
Resource Organization
4. Generate Improvements
Produce two output formats:
Inline Patch/Diff
Use filepath comments for "Apply to file" functionality:
// filepath: skill/SKILL.md
// ...existing code...
```yaml
---
name: my-skill
description: Use when working with CSV files for analysis and visualization.
---
```
// ...existing code...
Structured JSON
For programmatic consumption:
{
"skill_path": "/path/to/skill",
"issues": [
{
"severity": "critical",
"file": "SKILL.md",
"line": 1,
"text": "Missing required 'name' field in frontmatter",
"fix": "Add `name: my-skill` to frontmatter"
},
{
"severity": "major",
"file": "SKILL.md",
"line": 3,
"text": "Description uses second person ('you should use') instead of imperative",
"fix": "Rewrite as 'Use when...' imperative phrasing"
}
],
"summary": {
"critical": 1,
"major": 2,
"minor": 0
}
}
5. Issue Categorization
Group issues by severity (from skill-improver methodology):
Critical — MUST fix immediately
- Missing required frontmatter fields (name, description)
- Invalid YAML syntax
- Referenced files that don't exist
Major — MUST fix
- Weak or vague trigger descriptions
- Wrong voice (second person instead of imperative)
- SKILL.md exceeds 500 lines without using references/
- Missing "When to Use" section
- Description doesn't specify when to trigger
Minor — Evaluate before fixing
- Subjective style preferences
- Optional enhancements
- Formatting suggestions
6. Iterate (Improver Loop)
For skill improvement workflows:
- Present issues with inline patches
- User applies fixes
- Re-validate with
uvx skills-ref validate
- Re-review remaining issues
- Continue until no critical/major issues remain
Output completion marker when done:
<skill-review-complete>
Resources