npx skills add ...
npx skills add daymade/claude-code-skills --skill skill-reviewer
Reviews and improves Claude Code skills against official best practices. Supports three modes - self-review (validate your own skills), external review (evaluate others' skills), and auto-PR (fork, improve, submit). Use when checking skill quality, reviewing skill repositories, or contributing improvements to open-source skills.
npx skills add daymade/claude-code-skills --skill skill-reviewer
Review and improve Claude Code skills against official best practices.
Run the bundled reviewer with PyYAML declared explicitly through uv:
The reviewer delegates YAML, schema, and internal-path validation to the canonical skill-creator validator bundled in the same suite. It then checks frontmatter quality, directory structure, SKILL.md size, hardcoded paths and secrets, script hygiene, subagent_type validity, and instruction-style heuristics.
Interpret exit codes as follows: 0 = clean, 1 = warnings only, 2 = review errors, 3 = invocation or runtime failure. Codes 1 and 2 describe the target skill; code 3 means the reviewer could not complete a trustworthy review.
Use the sibling skill-creator scripts for the deeper security scan and packaging checks.
Check your own skill before publishing.
Automated review:
Extended security validation:
Manual evaluation: See references/evaluation_checklist.md.
Evaluate someone else's skill repository.
Fork, improve, and submit PR to external skill repository.
| Category | Check | Status |
|---|---|---|
| Frontmatter | name present? | |
| description present? | ||
| description in third-person? | ||
| includes trigger conditions? | ||
| Instructions | imperative form? | |
| under 500 lines? | ||
| workflow pattern? | ||
| Resources | no hardcoded paths? | |
| scripts have error handling? |
Full checklist: references/evaluation_checklist.md
When improving external skills, NEVER:
ALWAYS:
Add checklist for complex tasks:
Adding or validating marketplace.json (plugin boundaries, source/skills
layout, whether skills are independently toggleable) is the marketplace-dev
skill's domain — don't author it from a template here. Invoke
daymade-claude-code:marketplace-dev, then follow its workflow and its cache
and source patterns reference.
When submitting PRs to external repos:
Template: references/pr_template.md
Before submitting any PR:
scripts/review_skill.py - Automated reviewer backed by skill-creator validationreferences/evaluation_checklist.md - Full evaluation checklistreferences/pr_template.md - PR description templateuv run --with PyYAML python <this-skill-path>/scripts/review_skill.py <target-skill># Security scan
uv run python <this-skill-path>/../skill-creator/scripts/security_scan.py <target-skill> --verboseReview Workflow:
- [ ] Clone repository to /tmp/
- [ ] Read ALL documentation first
- [ ] Identify author's intent
- [ ] Run evaluation checklist
- [ ] Generate improvement reportAuto-PR Workflow:
- [ ] Fork repository (gh repo fork)
- [ ] Create feature branch
- [ ] Apply additive improvements only
- [ ] Self-review: respect check passed?
- [ ] Create PR with detailed explanation❌ "Removed metadata.json (non-standard)"
✅ "Added marketplace.json (metadata.json preserved)"
❌ "Rewrote README in English"
✅ "Added README.en.md (Chinese preserved as default)"# Before
description: Browse YouTube videos and summarize them.
# After
description: Browses YouTube videos and generates summaries. Use when...# Before
description: Processes PDF files.
# After
description: Extracts text from PDFs. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.## Workflow
Copy this checklist:
\`\`\`
Task Progress:
- [ ] Step 1: ...
- [ ] Step 2: ...
\`\`\`❌ "Your skill doesn't follow best practices"
✅ "This PR aligns with best practices for better discoverability"
❌ "Fixed the incorrect description"
✅ "Improved description with trigger conditions"Respect Check:
- [ ] No files deleted?
- [ ] No functionality removed?
- [ ] Original language preserved?
- [ ] Author's design decisions respected?
- [ ] All changes are additive?
- [ ] PR explains the "why"?