Analyze all artifacts in the plugin, validate quality, and generate comprehensive health report with scores and improvement recommendations.
Analyzes all plugin artifacts, validates quality, and generates comprehensive health report with scores and improvement recommendations.
/plugin marketplace add eLafo/ouroboros/plugin install ouroboros@hermesComprehensive quality analysis for all Claude Code artifacts in the current plugin or project. Validates Skills, Commands, Subagents, and Hooks, providing aggregated quality scores and actionable recommendations.
Perform plugin-wide health check by:
Before validating artifacts, verify current specifications:
Use the claude-researcher skill to check the latest official documentation:
Query: "What are the current validation requirements, quality criteria, and specifications for Skills, Commands, Subagents, and Hooks from the official Claude Code documentation?"
Verify:
Alignment check: Ensure validation checks use the most current standards from code.claude.com.
If specifications have changed significantly, update validation criteria accordingly.
Scan all artifact locations:
# Find all Skills
find .claude/skills -name "SKILL.md" 2>/dev/null || true
find ~/.claude/skills -name "SKILL.md" 2>/dev/null || true
# Find all Commands
find .claude/commands -name "*.md" 2>/dev/null || true
find ~/.claude/commands -name "*.md" 2>/dev/null || true
# Find all Subagents
find .claude/agents -name "*.md" 2>/dev/null || true
find ~/.claude/agents -name "*.md" 2>/dev/null || true
# Check for Hooks in settings
test -f .claude/settings.local.json && echo "Settings file exists"
test -f ~/.claude/settings.json && echo "User settings exists"
Categorize discovered artifacts:
Output of Step 1:
Artifact Inventory:
- Skills: X project, Y user
- Commands: X project, Y user
- Subagents: X project, Y user
- Hooks: X configured
Total: N artifacts
For each artifact, validate:
Check list for each Skill:
YAML Syntax
python3 -c "
import yaml
with open('SKILL.md') as f:
content = f.read().split('---')
yaml.safe_load(content[1])
" && echo "✅ Valid" || echo "❌ Invalid"
Required Fields
name present and validdescription present and ≤1024 charsNaming Convention
nameDescription Quality
Tool Access
allowed-tools present, uses comma-separated formatContent Quality
Grading criteria:
Check list for each Command:
File Extension
.md fileYAML Frontmatter (if present)
description field recommendedargument-hint if accepts argumentsallowed-tools if restrictedNaming Convention
Content Quality
Tool Safety
disable-model-invocation: trueCheck list for each Subagent:
YAML Configuration
name, descriptiontools, modelNaming Convention
Description Quality
Tool Access
System Prompt Quality
Model Selection
Check list for each Hook:
Configuration Valid
Security Review
Safety Checks
Apply quality framework to each artifact:
Quality Formula: Q = 0.40·R + 0.30·C + 0.20·S + 0.10·E
Where:
R (Relevance): How well does it serve its purpose?
C (Completeness): Is everything present?
S (Specification): Does it follow standards?
E (Efficiency): Is it optimized?
Score each component 0.0-1.0, then calculate Q:
Example scoring:
Skill: pdf-processor
- Relevance (R): 0.95 (excellent description, clear triggers)
- Completeness (C): 0.85 (has examples, missing some edge cases)
- Specification (S): 1.0 (perfect YAML, naming)
- Efficiency (E): 0.90 (appropriate tools)
Q = 0.40(0.95) + 0.30(0.85) + 0.20(1.0) + 0.10(0.90)
Q = 0.38 + 0.255 + 0.20 + 0.09
Q = 0.925 (93%) → Grade A
Calculate for all artifacts and track:
Check for plugin-wide issues:
Name conflicts:
# Check for duplicate names across artifact types
find .claude/ -name "SKILL.md" -o -name "*.md" -o -name "*.yaml" | \
xargs basename -s .md | sort | uniq -d
Overlapping responsibilities:
Check coverage:
Generate comprehensive report:
Generated: [Date] Plugin: [Plugin name or "Current project"]
Overall Health: [Grade A-F] ([Score]%)
Artifact Count:
Quality Distribution:
Top Issues:
| Name | Location | Grade | Score | Status |
|---|---|---|---|---|
| skill-1 | project | A | 95% | ✅ Excellent |
| skill-2 | user | B | 85% | ⚠️ Minor improvements |
| skill-3 | project | F | 45% | ❌ Critical issues |
Average Skill Score: X% (Grade: X)
| Name | Location | Grade | Score | Status |
|---|---|---|---|---|
| command-1 | project | A | 92% | ✅ Excellent |
| command-2 | user | C | 75% | ⚠️ Needs work |
Average Command Score: X% (Grade: X)
| Name | Location | Grade | Score | Status |
|---|---|---|---|---|
| agent-1 | project | B | 88% | ✅ Good |
Average Subagent Score: X% (Grade: X)
| Event | Status | Security Review | Issues |
|---|---|---|---|
| on_tool_call_finish | ✅ | ⚠️ Needs review | 2 warnings |
Hooks Status: X configured, X need security review
[Artifact Name] ([Type]) - Grade F (X%)
[Repeat for all critical issues]
[Artifact Name] ([Type]) - Grade C (X%)
[Repeat for all warnings]
[Artifact Name] ([Type]) - Grade B (X%)
[Repeat for all recommendations]
Strengths:
Weaknesses:
Improvement Opportunities:
Priority 1: Critical Fixes (Do Immediately)
Priority 2: Important Improvements (Do Soon)
Priority 3: Enhancements (Nice to Have)
Re-validate specific artifact:
# Use artifact-validator Skill
"Validate the [artifact-name] [type]"
Re-run full health check:
/plugin-health-check
Total Artifacts: X Average Quality Score: X% (Grade: X) Artifacts Needing Attention: X Critical Issues: X Warnings: X Recommendations: X
Health Trend: [Improving/Stable/Declining]
Quick summary with tables for immediate review
Comprehensive analysis with all findings
{
"generated": "2025-11-06T12:00:00Z",
"overall_score": 0.87,
"overall_grade": "B",
"artifact_count": {
"skills": 5,
"commands": 3,
"subagents": 2,
"hooks": 1
},
"scores": {
"skills": [
{
"name": "skill-1",
"score": 0.95,
"grade": "A",
"issues": []
}
]
},
"issues": {
"critical": 1,
"warnings": 3,
"recommendations": 5
}
}
User: /plugin-health-check
Output:
Discovering artifacts...
Found 8 total artifacts (5 Skills, 2 Commands, 1 Subagent)
Validating artifacts...
✅ skill-builder (95%) - Grade A
✅ artifact-advisor (92%) - Grade A
⚠️ claude-expert (78%) - Grade C - Missing examples
❌ old-skill (45%) - Grade F - Invalid YAML
Overall Health: B (84%)
Critical Issues: 1
Warnings: 1
[Full report follows...]
User: /plugin-health-check
Output:
Discovering artifacts...
Found 8 total artifacts
Validating artifacts...
All artifacts validated successfully!
Overall Health: A (93%)
No critical issues found.
[Summary report follows...]
User: /plugin-health-check
Output:
...
Cross-Artifact Issues:
⚠️ Name conflict: 'review' exists as both Skill and Command
⚠️ Overlap: 'api-tester' (Skill) and 'test-api' (Command) have similar purposes
⚠️ Gap: No Subagent for complex analysis tasks
[Recommendations follow...]
✅ DO:
❌ DON'T:
After health check:
Fix critical artifacts:
artifact-validator for detailed analysisskill-builder, /build-command, /build-subagent to rebuildAdd missing artifacts:
/suggest-artifacts to identify gapsartifact-advisor to choose right typeResearch best practices:
claude-researcher for official guidanceclaude-expert for specificationsA healthy plugin has:
Cause: May be using outdated conventions
Solution:
claude-expertCause: Non-standard locations
Solution:
.claude/ directory structure.claude/skills/*/SKILL.md.claude/commands/*.md.claude/agents/*.mdCause: Hooks require manual security review
Solution:
Run plugin health checks:
Track quality over time:
This command provides comprehensive plugin health visibility, enabling proactive quality management and continuous improvement of your Claude Code artifacts!