README
¶
skill-quality-auditor
A 9-dimension scoring framework for auditing and improving AI skill quality. Combines structural validation with custom scoring across Knowledge Delta, Mindset, Anti-Patterns, Specification Compliance, Progressive Disclosure, Freedom Calibration, Pattern Recognition, Practical Usability, and Eval Validation.
- Install
- Command Usage
- Output Formats
- CI Integration
- What it scores & why
- Repository layout
- Development
Install
install.sh (Linux / macOS)
curl -fsSL https://raw.githubusercontent.com/pantheon-org/skill-quality-auditor/main/scripts/install.sh | sh
Override install directory or pin a version:
INSTALL_DIR=~/.local/bin curl -fsSL ... | sh
VERSION=v1.2.3 curl -fsSL ... | sh
Homebrew
brew tap pantheon-org/tap
brew install skill-auditor
mise
mise use ubi:pantheon-org/skill-quality-auditor
Or in mise.toml:
[tools]
"ubi:pantheon-org/skill-quality-auditor" = "latest"
Go install
go install github.com/pantheon-org/skill-quality-auditor@latest
Updating
| Method | Command |
|---|---|
| install.sh | skill-auditor update |
| Homebrew | brew upgrade skill-auditor |
| mise | mise upgrade skill-auditor |
| Go install | go install github.com/pantheon-org/skill-quality-auditor@latest |
skill-auditor updatealso accepts--check(report without installing) and--version-target vX.Y.Z.
Command Usage
| Stage | Command | What it answers |
|---|---|---|
| Score a skill | evaluate |
What is the overall quality grade and per-dimension breakdown? |
| Score many skills | batch |
How do multiple skills compare, and does any fall below a CI threshold? |
| Find overlap | duplication |
Are any skills too similar to each other? |
| Plan consolidation | aggregate |
How should a family of similar skills be merged? |
| Fix a skill | remediate |
What specific changes would raise this skill's score? |
| Track progress | trend |
Are scores improving or regressing over time? |
| Validate format | validate |
Do artifacts conform to conventions? Does a review report meet spec? |
| Check consistency | lint |
Are frontmatter, shebangs, and structure correct across all skills? |
| Deep analysis | analyze |
What are the keyword signals and structural patterns in this skill? |
| Install skill | init |
How do I install this auditor skill into my agent environment? |
| Self-update | update |
Is a newer release available, and can I install it in place? |
| Housekeeping | prune |
Which old audit snapshots can be removed? |
evaluate
skill-auditor evaluate <skill> [flags]
Flags:
--json emit JSON output instead of human-readable text
--store persist result to .context/audits/
--repo-root repo root directory (auto-detected from .git / go.mod if omitted)
<skill> accepts a domain/skill-name key (resolved under <repo-root>/skills/), a directory
containing SKILL.md, or a direct path to SKILL.md.
batch
skill-auditor batch <skill1> [skill2 ...] [flags]
Flags:
--json emit JSON array output
--store persist each result to .context/audits/
--fail-below exit 1 if any skill scores below this grade (e.g. B+)
--repo-root repo root directory (auto-detected if omitted)
duplication
skill-auditor duplication [skills-dir] [flags]
Flags:
--json emit JSON array of pairs
--skills-dir skills directory (default: <repo-root>/skills)
--repo-root repo root directory (auto-detected if omitted)
Pairwise word-level Jaccard similarity across all SKILL.md files. Writes
duplication-report-YYYY-MM-DD.md to .context/analysis/. Exits with code 2 on any
Critical (>35%) pair — suitable as a CI gate.
aggregate
skill-auditor aggregate --family <prefix> [skills-dir] [flags]
Flags:
--family skill family prefix to analyse (required, e.g. bdd, typescript)
--dry-run print plan to stdout without writing to disk
--skills-dir skills directory (default: <repo-root>/skills)
--repo-root repo root directory (auto-detected if omitted)
Produces a 6-step consolidation plan at .context/analysis/aggregation-plan-<family>-YYYY-MM-DD.md.
remediate
skill-auditor remediate <skill> [flags]
Flags:
--target-score desired total score (default: current + 20, max 140)
--validate validate an existing plan file instead of generating one
--repo-root repo root directory (auto-detected if omitted)
Reads the most recent stored audit for <skill> and generates a schema-compliant remediation
plan at .context/plans/<skill>-remediation-plan.md. Use --validate to check an existing plan
against remediation-plan.schema.json.
trend
skill-auditor trend [flags]
Flags:
--json emit JSON array output
--repo-root repo root directory (auto-detected if omitted)
Reads the two most recent stored audits per skill from .context/audits/ and prints a score-delta
table with ↑ / ↓ / — indicators.
validate
skill-auditor validate artifacts [paths...] [flags]
skill-auditor validate review <file> [flags]
Flags (artifacts):
--repo-root repo root directory (auto-detected if omitted)
Flags (review):
--strict-recommended treat recommended fields as errors
--repo-root repo root directory (auto-detected if omitted)
validate artifacts checks SKILL.md line limits, frontmatter name match, asset subdirectory
conventions, script shebangs, and schema file validity. validate review checks a review report
against the embedded requirements spec. Exit code 1 on any error.
lint
skill-auditor lint [skills-dir] [flags]
Flags:
--repo-root repo root directory (auto-detected if omitted)
Checks each skill for a SKILL.md, a frontmatter block, and correct script shebangs. Prints
MISSING_SKILL, NO_FRONTMATTER, BAD_SHEBANG tags per issue. Exits with the issue count (0 = clean).
analyze
skill-auditor analyze <skill> [flags]
Flags:
--semantic run TF-IDF keyword extraction only
--patterns run rule-based pattern detection only
--pipeline run full pipeline — semantic + patterns + combined report (default)
--json emit JSON output
--store write report to .context/analysis/
--limit int max keywords to include (default 20)
--repo-root repo root directory (auto-detected if omitted)
--semantic extracts TF-IDF top keywords scored against the full skill corpus. --patterns runs
rule-based detectors for required sections, trigger-word frequency, structural conformance, and
anti-pattern signals. Default --pipeline runs both and writes a combined report.
init
skill-auditor init [flags]
Flags:
--agent agent(s) to install into (default: auto-detect from installed environments)
--global install to global skill directory (~/<agent>/skills/)
--method installation method: symlink or copy (default: symlink)
Installs the embedded skill-quality-auditor SKILL.md and its references/ directory into one or
more agent skill directories. Auto-detects supported environments (Claude Code, Cursor, etc.) when
--agent is omitted.
update
skill-auditor update [flags]
Flags:
--check report the latest version without installing
--version-target install a specific version (e.g. v1.2.3)
Fetches the latest release from GitHub and replaces the running binary in-place. Only applicable
when installed via install.sh — Homebrew and mise users should use their own update commands.
prune
skill-auditor prune [flags]
Flags:
--keep number of audit date-dirs to retain per skill (default 5)
--repo-root repo root directory (auto-detected if omitted)
Removes old date-stamped audit directories from .context/audits/, keeping the N most recent per
skill.
Output Formats
All commands that produce structured data support --json. The text format is the default and is
optimised for terminal readability.
JSON output — pass --json to any command:
skill-auditor evaluate skills/my-skill --json
skill-auditor batch skills/skill-a skills/skill-b --json
skill-auditor trend --json
Stored output — pass --store to persist results for later use by remediate and trend:
| Command | Output path |
|---|---|
evaluate --store / batch --store |
.context/audits/<skill>/<date>/ |
duplication |
.context/analysis/duplication-report-YYYY-MM-DD.md |
aggregate |
.context/analysis/aggregation-plan-<family>-YYYY-MM-DD.md |
remediate |
.context/plans/<skill>-remediation-plan.md |
analyze --store |
.context/analysis/pattern-report-<skill>-YYYY-MM-DD.md |
CI Integration
- name: Audit skills
run: |
skill-auditor batch skills/ --fail-below B --store
skill-auditor duplication # exits 2 on Critical pairs
skill-auditor validate artifacts
--fail-below accepts any grade: A+, A, B+, B, C+, C, D, F.
duplication exits with code 2 (not 1) on Critical pairs so it can be distinguished from a
command error in pipeline logic.
Full workflow example:
jobs:
skill-quality:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install skill-auditor
run: curl -fsSL https://raw.githubusercontent.com/pantheon-org/skill-quality-auditor/main/scripts/install.sh | sh
- name: Batch audit (fail below B)
run: skill-auditor batch skills/ --fail-below B --store
- name: Duplication check
run: skill-auditor duplication
continue-on-error: false # exits 2 on Critical pairs
- name: Artifact validation
run: skill-auditor validate artifacts
What it scores & why
| ID | Dimension | Max | What a low score signals |
|---|---|---|---|
| D1 | Knowledge Delta | 20 | Content restates what the model already knows — no expert uplift |
| D2 | Mindset & Procedures | 15 | Missing mental models or step-by-step guidance the agent needs |
| D3 | Anti-Pattern Coverage | 15 | Common failure modes not called out — agent will repeat them |
| D4 | Specification Compliance | 15 | Frontmatter, structure, or naming deviates from the tile spec |
| D5 | Progressive Disclosure | 15 | Detail is front-loaded; references not used for depth |
| D6 | Freedom Calibration | 15 | Skill is either too prescriptive or too vague for the task |
| D7 | Pattern Recognition | 10 | No trigger conditions — agent won't know when to activate the skill |
| D8 | Practical Usability | 15 | Examples absent or unrealistic; hard to apply in practice |
| D9 | Eval Validation | 20 | No evals — quality claims are unverifiable |
Total: 140 pts. Grade bands:
| Grade | Score |
|---|---|
| A+ | ≥ 133 |
| A | ≥ 126 |
| B+ | ≥ 119 |
| B | ≥ 112 |
| C+ | ≥ 105 |
| C | ≥ 98 |
| D | ≥ 91 |
| F | < 91 |
See cmd/assets/references/quality-thresholds-scoring.md for the full rubric and per-dimension
scoring criteria.
Repository layout
go.mod / main.go Go CLI root — build and run from here
cmd/ cobra commands: evaluate, batch, duplication, aggregate,
remediate, trend, validate, lint, prune, analyze, init, update
cmd/assets/ Tessl tile — SKILL.md, tile.json, evals, references,
schemas, templates (single source of truth)
agents/ agent registry (supported environments for init)
scorer/ D1–D9 dimension scorers
analysis/ TF-IDF keyword extractor + rule-based pattern detectors
duplication/ word-level Jaccard similarity engine
reporter/ text/JSON formatters, audit store, report generators
scripts/ install.sh
testdata/ fixture skills for unit tests
Development
go test ./...
go vet ./...
golangci-lint run ./...
shellcheck scripts/install.sh
Pre-commit and pre-push hooks are managed via lefthook:
mise install # installs go, golangci-lint, markdownlint-cli2, shellcheck, lefthook
lefthook install
Academic References
- D1 Knowledge Delta: Li et al., 2025 — Instruction Agent: Enhancing Agent with Expert Demonstration
- D1 Knowledge Delta: Deng et al., 2024 — From Novice to Expert: LLM Agent Policy Optimization via Step-wise Reinforcement Learning
- D1 Knowledge Delta: Yin et al., 2025 — Grounding Open-Domain Knowledge from LLMs to Real-World RL Tasks: A Survey
- D2 Mindset & Procedures: Bakal, 2026 — Knowledge Activation: AI Skills as the Institutional Knowledge Primitive for Agentic Software Development
- D2 Mindset & Procedures: Carriero, Scrocca et al. — Procedural Knowledge Ontology (PKO)
- D2 Mindset & Procedures: Bi, Hu, Nasir, 2025 — Real-Time Procedural Learning From Experience for AI Agents
- D2 Mindset & Procedures: Bi, Wu, Hao et al., 2026 — Automating Skill Acquisition through Large-Scale Mining of Agentic Repositories
- D3 Anti-Pattern Coverage: Brada & Picha, 2019 — Software Process Anti-Patterns Catalogue
- D3 Anti-Pattern Coverage: Picha & Brada, 2019 — Software Process Anti-Pattern Detection in Project Data
- D3 Anti-Pattern Coverage: Bhatia, Lin, Rajbahadur, Adams et al., 2024 — Data Quality Anti-Patterns for Software Analytics
- D3 Anti-Pattern Coverage: Amarasinghe, Asanka et al., 2024 — Code Quality Alarms: Techniques, Datasets, and Emerging Trends in Detecting Smells and Anti-Patterns
- D4 Specification Compliance: T Rehan, 2026 — Test-Driven AI Agent Definition (TDAD): Compiling Tool-Using Agents from Behavioral Specifications
- D4 Specification Compliance: C Paduraru, M Zavelca, A Stefanescu — Agentic AI for Behaviour-Driven Development Testing Using Large Language Models
- D4 Specification Compliance: R Tao, 2025 — LLM-Skill Orchestration: Achieving 202/202 Subtask Completion via Rule-Augmented Multi-Model Collaboration
- D4 Specification Compliance: J Kohl, O Kruse, Y Mostafa, A Luckow et al. — Automated Structural Testing of LLM-Based Agents
- D5 Progressive Disclosure: Springer & Whittaker, 2018 — Progressive Disclosure: Designing for Effective Transparency
- D5 Progressive Disclosure: Anik & Bunt, 2021 — Designing Effective Training Dataset Explanations: The Impact of Information Depth and Progressive Disclosure
- D5 Progressive Disclosure: Timileyin, 2025 — The Role of Cognitive Load in Shaping Web Usability Requirements
- D5 Progressive Disclosure: Pastrakis, Konstantakis, Caridakis, 2025 — AI-Enhanced Modular Information Architecture for Cognitive-Efficient User Experiences
- D6 Freedom Calibration: Zhang et al., 2025 — Reasoning over Boundaries: Enhancing Specification Alignment via Test-time Deliberation
- D6 Freedom Calibration: Sorensen, 2026 — Specification as the New Management
- D6 Freedom Calibration: Tao, 2025 — LLM-Skill Orchestration: Achieving 202/202 Subtask Completion via Rule-Augmented Multi-Model Collaboration
- D7 Pattern Recognition: Zhang et al., 2025 — AgentRouter: A Knowledge-Graph-Guided LLM Router for Collaborative Multi-Agent Question Answering
- D7 Pattern Recognition: Wang et al., 2026 — Efficient and Interpretable Multi-Agent LLM Routing via Ant Colony Optimization
- D7 Pattern Recognition: Chen et al., NeurIPS 2024 — AgentPoison: Red-teaming LLM Agents via Poisoning Memory or Knowledge Bases
- D8 Practical Usability: Xu et al., 2024 — TheAgentCompany: Benchmarking LLM Agents on Consequential Real-World Tasks
- D8 Practical Usability: Mohammadi et al., 2025 — Evaluation and Benchmarking of LLM Agents: A Survey
- D8 Practical Usability: Miller & Tang, 2025 — Evaluating LLM Metrics Through Real-World Capabilities
- D8 Practical Usability: Yehudai et al., 2025 — Survey on Evaluation of LLM-Based Agents
- D9 Eval Validation: Rehan, 2026 — Test-Driven AI Agent Definition (TDAD): Compiling Tool-Using Agents from Behavioral Specifications
- D9 Eval Validation: Alami, 2026 — Cognitive Camouflage: Specification Gaming in LLM-Generated Code Evades Holistic Evaluation but Not Adversarial Execution
- D9 Eval Validation: Wang, Chen, Deng, Lin, Harman et al. — A Comprehensive Study on Large Language Models for Mutation Testing
- D9 Eval Validation: Pan, Hu, Xia, Yang — Re-Evaluating Code LLM Benchmarks Under Semantic Mutation
- D9 Eval Validation: Bouafif, Hamdaqa, Zulkoski — PrimG: Efficient LLM-Driven Test Generation Using Mutant Prioritization
Documentation
¶
There is no documentation for this package.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package agents provides the canonical registry of supported agent clients derived from https://github.com/vercel-labs/skills#supported-agents.
|
Package agents provides the canonical registry of supported agent clients derived from https://github.com/vercel-labs/skills#supported-agents. |
|
internal
|
|
|
This file owns aggregation plan formatting: building and rendering the markdown consolidation plan for a skill family.
|
This file owns aggregation plan formatting: building and rendering the markdown consolidation plan for a skill family. |