Audit and improve skill collections with an 8-dimension scoring framework, duplication detection, remediation planning, and CI quality gates; use when evaluating skill quality, generating remediation plans, validating report format, or enforcing repository-wide skill artifact conventions.
Does it follow best practices?
Evaluation — 93%
↑ 1.33xAgent success when using this tile
Validation for skill structure
Complete workflow for running automated skill quality audits. Covers setup, execution, and maintenance of audit processes.
Purpose: Automate skill quality evaluation on schedule and on-demand
Outputs: Quality reports, duplication analysis, aggregation recommendations
Schedule: Weekly automated + on-demand for new skills
.context/analysis/ directoryFull skill collection audit:
./scripts/audit-skills.sh [--output path]Options:
--output - Custom output directory (default: .context/analysis/)Output: skill-audit-YYYY-MM-DD.md
Duplication detection:
./scripts/detect-duplication.sh [skills-dir]Arguments:
skills-dir - Skills directory (default: skills)Output: duplication-report-YYYY-MM-DD.md
Single skill evaluation:
sh skills/skill-quality-auditor/scripts/evaluate.sh <skill-name> --jsonArguments:
skill-name - Name of skill to evaluateOutput: JSON score report
Aggregation planning:
bun run scripts/plan-aggregation.ts --family <prefix>Options:
--family - Skill family prefix (e.g., bdd, typescript)Output: Aggregation plan with recommendations
# Count skills
find skills -name "SKILL.md" -not -path "*/.deprecated/*" | wc -l
# List by category
ls -1 skills/ | cut -d- -f1 | sort | uniq -c | sort -rn
# Identify families
ls -1 skills/ | grep -E "^[a-z]+-" | cut -d- -f1 | sort -u# Run full audit
./scripts/audit-skills.sh
# Review report
cat .context/analysis/skill-audit-*.md | head -50# Detect duplication
./scripts/detect-duplication.sh
# Review high-priority pairs
grep -A5 "High-Priority" .context/analysis/duplication-report-*.md# Plan aggregation for each family
bun run scripts/plan-aggregation.ts --family bdd
bun run scripts/plan-aggregation.ts --family typescript
bun run scripts/plan-aggregation.ts --family bun# Create summary report
cat > .context/analysis/audit-summary-$(date +%Y-%m-%d).md <<EOF
# Audit Summary - $(date +%Y-%m-%d)
## Statistics
- Total skills: $(find skills -name "SKILL.md" -not -path "*/.deprecated/*" | wc -l)
- A-grade: X
- B-grade: Y
- C-grade: Z
## Duplication
- High-priority pairs: X
- Critical (>35%): Y
## Recommendations
1. [From aggregation plans]
2. [From duplication report]
EOFAdd to CI/CD pipeline:
# .github/workflows/skill-audit.yml
name: Skill Audit
on:
schedule:
- cron: '0 0 * * 0' # Weekly on Sunday
workflow_dispatch:
jobs:
audit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v1
- run: chmod +x skills/skill-quality-auditor/scripts/*.sh
- run: skills/skill-quality-auditor/scripts/audit-skills.sh
- run: skills/skill-quality-auditor/scripts/detect-duplication.sh
- uses: actions/upload-artifact@v4
with:
name: audit-reports
path: .context/analysis/Block PRs with C-grade skills:
# .github/workflows/skill-quality-gate.yml
name: Skill Quality Gate
on: pull_request
jobs:
quality-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v1
- name: Check changed skills
run: |
for skill in $(git diff --name-only origin/main | grep "skills/.*/SKILL.md"); do
skill_name=$(basename $(dirname $skill))
score=$(sh skills/skill-quality-auditor/scripts/evaluate.sh "$skill_name" --json | jq '.total')
if [ "$score" -lt 90 ]; then
echo "Skill $skill_name scored $score (below 90)"
exit 1
fi
doneAudit reports in .context/audits/*.md must follow the frontmatter-first format:
review_date: YYYY-MM-DD
reviewer: automated audit
skill_location: `skills/<skill-name>/SKILL.md`Use skills/skill-quality-auditor/templates/review-report-template.yaml as the canonical format source, then validate generated reports with:
./skills/skill-quality-auditor/scripts/validate-review-format.sh .context/audits/<skill>-YYYY-MM-DD.md| Skill | Score | Grade | Lines |
|-------|-------|-------|-------|
| bdd-testing | 98/120 | A | 64 |Actions:
| Skill Pair | Similarity | Action |
|------------|------------|--------|
| bdd-gherkin ↔ cucumber | 42% | Aggregate |Actions:
35%: Immediate aggregation
scripts-ci-integration.md - CI/CD setupreporting-analysis.md - Interpreting resultsreporting-dashboards.md - VisualizationInstall with Tessl CLI
npx tessl i pantheon-ai/skill-quality-auditorevals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
references
scripts