home / skills / richtabor / agent-skills / skill-review

skill-review skill

/skills/skill-review

This skill validates agent skills against best practices, auditing structure, frontmatter, triggers, and anti-patterns to improve overall quality.

npx playbooks add skill richtabor/agent-skills --skill skill-review

Review the files below or copy the command above to add this skill to your agents.

Files (4)
SKILL.md
5.3 KB
---
name: skill-review
description: Reviews and validates agent skills against best practices. Triggers on "review this skill", "check my skill", "validate skill", "is this skill well-written", or when creating/editing skills.
---

# Skill Review

## Overview

Validates agent skills against the Agent Skills standard and compiled best practices. Reviews structure, frontmatter, description quality, progressive disclosure, and common anti-patterns.

## When to Use

- User asks to review or validate a skill
- User is creating a new skill and wants feedback
- User asks "is this skill well-written?"
- User mentions skill quality, best practices, or improvement

## Review Process

### Phase 1: Load References

Before reviewing, read:
- `references/best-practices.md` — Comprehensive guidelines
- `references/checklist.md` — Quick validation checklist

### Phase 2: Identify Target

Determine what to review:
- **Single skill**: Review `skills/<name>/SKILL.md` and its structure
- **All skills**: Audit entire `skills/` directory
- **New skill draft**: Review provided content before creation

### Phase 3: Structural Audit

Check the skill directory structure:

```
skill-name/
├── SKILL.md              # Required
├── references/           # Optional - loaded docs
├── scripts/              # Optional - executable code
└── assets/               # Optional - output files (not loaded)
```

**Verify:**
- [ ] SKILL.md exists
- [ ] Directory name matches `name` in frontmatter
- [ ] References are one level deep (no nested chains)
- [ ] Scripts use forward slashes (no Windows paths)
- [ ] No extraneous files (README.md, CHANGELOG.md, etc.)
- [ ] Script paths in SKILL.md body (`scripts/foo.py`) exist in directory
- [ ] If scripts use external binaries, dependencies are documented

### Phase 4: Frontmatter Validation

Check YAML frontmatter:

```yaml
---
name: skill-name          # Required: lowercase, hyphens, ≤64 chars
description: >-           # Required: ≤1024 chars, third-person
  What it does. When to use it.
---
```

**Validate:**
- [ ] `name`: Lowercase with hyphens only (`[a-z0-9-]`)
- [ ] `name`: ≤64 characters
- [ ] `name`: No "anthropic" or "claude" in name
- [ ] `description`: Non-empty, ≤1024 characters
- [ ] `description`: Third-person voice (not "I can" or "You can")
- [ ] `description`: Includes what it does AND when to trigger
- [ ] `description`: Contains specific trigger phrases

### Phase 5: Description Quality

The description is **the** triggering mechanism. Evaluate:

**Good descriptions include:**
- Specific actions: "Extract text and tables from PDF files"
- Trigger phrases: "Use when analyzing Excel files, spreadsheets, or .xlsx"
- Synonyms users might say: "tabular data, CSV, workbooks"

**Bad descriptions:**
- Vague: "Helps with documents"
- Generic: "Processes data"
- Missing triggers: "Analyzes spreadsheets" (no "when to use")

### Phase 6: Body Analysis

Review SKILL.md body content:

**Length:**
- [ ] Under 500 lines (check with `wc -l`)
- [ ] If longer, split into reference files

**Progressive Disclosure:**
- [ ] Quick start or overview near top
- [ ] Details moved to references/
- [ ] Long reference files (>100 lines) have TOC

**Token Efficiency:**
- [ ] No obvious explanations (Claude already knows)
- [ ] Examples over lengthy prose
- [ ] Each line justifies its token cost

**Degrees of Freedom:**
- [ ] High freedom for context-dependent tasks
- [ ] Low freedom for fragile/error-prone tasks
- [ ] Defaults provided when multiple options exist

### Phase 7: Anti-Pattern Check

Scan for common issues:

| Anti-Pattern | Look For |
|-------------|----------|
| Windows paths | `scripts\file.py` instead of `scripts/file.py` |
| Nested references | A.md → B.md → C.md chains |
| Time-sensitive info | "If before August 2025..." |
| Magic numbers | Unexplained values |
| Too many options | "You can use X, or Y, or Z..." without default |
| Inconsistent terms | Mixing "endpoint"/"URL"/"route" |
| User-facing docs | README, CHANGELOG, installation guides |
| First/second person descriptions | "I can help" or "You can use" |

### Phase 8: Report Findings

Present findings using this format:

```
## Skill Review: [skill-name]

### Summary
[1-2 sentence overall assessment]

### Structure
[✓/✗] Directory organization
[✓/✗] File presence
[✓/✗] Reference depth

### Frontmatter
[✓/✗] name validation
[✓/✗] description validation

### Description Quality
**Score**: [Strong / Adequate / Needs Work]
**Issues**: [List specific problems]
**Suggested rewrite** (if needed):
```yaml
description: >-
  [Improved description]
```

### Body Analysis
**Line count**: [X] lines
**Token efficiency**: [Good / Could trim]
**Progressive disclosure**: [✓/✗]

### Anti-Patterns Found
- [Issue 1] — Location: `file:line`
- [Issue 2] — Location: `file:line`

### Recommendations
1. [Actionable fix]
2. [Actionable fix]
```

## Quick Review Mode

For rapid validation, run through the checklist in `references/checklist.md` and report only failures.

## Resources

### references/best-practices.md
Comprehensive guide covering architecture, design principles, writing effective descriptions, bundled resources, workflow patterns, and advanced patterns from production skills.

### references/checklist.md
Quick-reference validation checklist for fast reviews.

Overview

This skill reviews and validates agent skills against a compiled set of best practices and standards. It inspects structure, frontmatter metadata, description quality, progressive disclosure, and common anti-patterns. The goal is actionable feedback and a short remediation plan to make skills reliable and triggerable.

How this skill works

The skill loads the standard references and a checklist, then identifies the review target (single skill file, all skills in a directory, or a draft). It runs a structural audit, validates frontmatter metadata, evaluates description trigger quality and token efficiency, scans for anti-patterns, and produces a concise report with prioritized recommendations. A quick-review mode can run only the checklist and return failures.

When to use it

  • When you ask “review this skill”, “check my skill”, or “validate skill”
  • When creating a new skill draft and you want feedback before publishing
  • When you suspect poor trigger reliability or vague descriptions
  • When you need a fast checklist-based audit across many skills
  • When you want assurance that scripts, references, and paths are consistent

Best practices

  • Keep the primary skill document short and put long details in referenced files
  • Make the description third-person, include what it does and explicit trigger phrases
  • Use forward-slash paths and document external binaries or dependencies
  • Provide defaults for multi-option tasks and reduce degrees of freedom for fragile operations
  • Prefer examples over long prose and keep each line justifying its token cost

Example use cases

  • Validate a newly drafted skill file before adding it to the catalog
  • Audit an entire skills directory for naming, path, and reference depth issues
  • Quick-check a skill when a model fails to trigger it reliably
  • Get a prioritized remediation list for a skill flagged as verbose or ambiguous
  • Confirm that script paths referenced in the skill exist and are portable

FAQ

How long does a typical review take?

A single-skill structured review takes a few minutes; an audit of many skills scales with count but the quick-review checklist returns results in seconds.

What output format should I expect?

You get a compact report with a one-line summary, pass/fail checks for structure and metadata, a description quality score, listed anti-patterns, and 2–5 prioritized recommendations.