claude-priority
Fast, cross-platform validator for Claude Code plugins written in Rust.
Features
- ✅ Fast: Written in Rust for maximum performance
- ✅ Cross-platform: Works on Linux, macOS, and Windows
- ✅ Zero runtime dependencies: Single binary, no installation required
- ✅ Comprehensive validation: Checks naming, JSON schema, and YAML frontmatter
- ✅ GitHub Actions integration: Native support for CI/CD pipelines
- ✅ Colored output: Clear, readable terminal output
- ✅ Detailed error messages: Know exactly what needs to be fixed
Installation
From Cargo (crates.io)
From Source
Pre-built Binaries
Download the latest binary for your platform from the releases page.
Usage
Basic Validation
Validate a Claude Code plugin in the current directory:
Validate a specific plugin directory:
Advanced Options
Skip specific checks:
# Skip naming validation
# Skip JSON validation
# Skip frontmatter validation
Continue even if validation fails:
Help
What It Validates
1. Naming Conventions
- Plugin directory must be
lowercase-with-hyphens - Skill directories must be
lowercase-with-hyphens - Command directories must be
lowercase-with-hyphens - Agent directories must be
lowercase-with-hyphens - Frontmatter names must match directory names
2. JSON Schema
marketplace.jsonmust exist and be valid JSON- Required fields:
name,version,description,author - Version must follow semantic versioning (x.y.z)
authorfield must be an object (not a string)skillsarray must contain objects if present
3. YAML Frontmatter
skill.mdfiles must have YAML frontmatter- Required fields:
name,description - Description length: 10-200 characters for skills
- Description length: 5-100 characters for commands
- License must be from approved list: MIT, Apache-2.0, GPL-3.0, BSD-3-Clause, CC-BY-SA, Unlicense
- Title heading should match skill name
GitHub Actions Integration
The CLI automatically detects when running in GitHub Actions and outputs annotations:
- name: Validate Plugin
run: claude-priority validate .
Outputs:
validation-status:passorfailtotal-checks: Number of checks runpassed-checks: Number of checks that passedfailed-checks: Number of checks that failederror-messages: All error messages
Exit Codes
0: Validation passed1: Validation failed
Performance
10x faster than bash implementation 🚀
Typical validation times:
- Small plugin (1-2 skills): < 10ms
- Medium plugin (5-10 skills): < 50ms
- Large plugin (20+ skills): < 100ms
Development
Build
Test
Run
Release
Binary will be at target/release/claude-priority
Publishing to Cargo
# Login to crates.io
# Publish
License
MIT - See LICENSE for details
Links
- Repository: https://github.com/ZenterFlow/claude-priority
- Crates.io: https://crates.io/crates/claude-priority
- Documentation: https://docs.rs/claude-priority
Author
ZenterFlow - jonathan.mcguinness@outlook.com