Automated summary
Validates the structure and content of an FTC skill plugin to ensure it meets marketplace requirements and best practices.
Strengths
- Automatically checks a comprehensive list of quality criteria
- Catches blocking errors before submitting a PR
- Includes consistency checks (folder name, frontmatter, etc.)
- Provides clear output with severity levels
Limitations
- Requires the plugin to already exist in the plugins/ directory
- Does not verify the functional content of scripts
- May produce false positives for non-standard plugins
Use this command before submitting an FTC skill plugin to validate its compliance.
Do not use it for plugins from other frameworks or for functional testing.
Security analysis
SafeThe skill only performs read-only file checks and uses Bash restricted to jq for JSON validation. No destructive actions, network access, or exfiltration risks.
No concerns found
How this analysis is madeExamples
/validate-skill pedro-pathing/validate-skill rev-hubdescription: Validate an FTC skill plugin structure and content argument-hint: <skill-name> allowed-tools: Read, Glob, Grep, Bash(jq:*)
Validate Skill Command
Validates that an FTC skill plugin follows marketplace requirements and best practices.
Usage
/validate-skill <skill-name>
Arguments:
skill-name: Name of the skill to validate (must exist inplugins/)
Examples
/validate-skill pedro-pathing
/validate-skill rev-hub
Validation Checks
Structure Checks
- [ ]
plugins/<skill-name>/directory exists - [ ]
plugins/<skill-name>/plugin.jsonexists and is valid JSON - [ ]
plugins/<skill-name>/skills/<skill-name>/directory exists - [ ]
plugins/<skill-name>/skills/<skill-name>/SKILL.mdexists
plugin.json Checks
- [ ] Has
namefield matching directory name - [ ] Has
descriptionfield (non-empty) - [ ] Has
versionfield (semver format) - [ ] Has
licensefield - [ ] Has
tagsarray with "ftc" - [ ] Has
compatibility.agentsarray
SKILL.md Frontmatter Checks
- [ ] Has YAML frontmatter (starts with
---) - [ ] Has
namefield matching directory name - [ ] Has
descriptionfield (non-empty, < 1024 chars) - [ ]
descriptionincludes WHAT the skill does - [ ]
descriptionincludes WHEN to use it (trigger words) - [ ] Has
licensefield - [ ] Has
metadata.categoryfield - [ ] Has
metadata.versionfield
Content Quality Checks
- [ ] SKILL.md is under 500 lines
- [ ] Has "Quick Start" or "## Quick" section
- [ ] Has code examples (
java orkotlin blocks) - [ ] Has "Anti-Pattern" or "Don't" section
- [ ] No
[TODO: ...]placeholders remaining - [ ] No hardcoded file paths from template
marketplace.json Check
- [ ] Skill is listed in
.claude-plugin/marketplace.json - [ ] Entry has correct
pathfield
Script Checks (if scripts/ exists)
- [ ] All
.shfiles are executable - [ ] All
.pyfiles are executable - [ ] Scripts have shebang line
Output Format
Report results as:
Validating skill: <skill-name>
Structure:
✓ plugin.json exists
✓ SKILL.md exists
✗ Missing scripts/ directory (optional)
plugin.json:
✓ Valid JSON
✓ Name matches directory
✗ Missing 'ftc' in tags
SKILL.md:
✓ Valid frontmatter
✓ Description includes WHAT
✗ Description missing WHEN triggers
✓ Under 500 lines (127 lines)
Content:
✓ Has Quick Start section
✓ Has code examples
✗ Missing Anti-Patterns section
✗ Contains [TODO: ...] placeholders
marketplace.json:
✓ Skill is registered
Summary: 8/12 checks passed
Severity Levels
- Error (✗): Must fix before submitting PR
- Warning (⚠): Should fix, but not blocking
- Info (ℹ): Suggestion for improvement
Errors (Must Fix)
- Missing required files (plugin.json, SKILL.md)
- Invalid JSON
- Name mismatch between folder and frontmatter
- Empty description
- Not in marketplace.json
Warnings (Should Fix)
- Description missing WHEN triggers
- No Anti-Patterns section
- SKILL.md over 500 lines
- Missing 'ftc' tag
- [TODO: ...] placeholders remaining
Info (Suggestions)
- No scripts/ directory
- Could add more code examples
- Consider adding TROUBLESHOOTING.md
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/validate-skill-command-mrwakdvt/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/validate-skill-command-mrwakdvt' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/validate-skill-command-mrwakdvt/download' --output '.skill-downloads/validate-skill-command-mrwakdvt/SKILL.md.part' && mv '.skill-downloads/validate-skill-command-mrwakdvt/SKILL.md.part' '.skill-downloads/validate-skill-command-mrwakdvt/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Tools declared by the author (check availability in your agent): Read, Glob, Grep, Bash(jq:*)
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
This file does not provide a usable name/description header for this native procedure. It remains available to download and inspect; use the manual method below.
Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/validate-skill-command-mrwakdvt/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
ClickHouse Performance Comparison
Testing
Evaluate ClickHouse performance test results, check PR performance changes, compare with history, and assess whether a result is actionable.
Analyze CI Performance Reports
Testing
Analyze CI performance comparison reports for a ClickHouse PR. Cross-references master history to distinguish real regressions from flaky tests.
Santa Method
Testing
Multi-agent adversarial verification with two independent reviewers. Output is checked twice and iteratively fixed until both pass before shipping.