Skip to main content

SkillEvaluator

SkillEvaluator wordmark

License Python Documentation Paper NVIDIA Developer Blog

📺 Livestream: Ask the Experts: Evaluating Agent Skills

SkillEvaluator is an open-source tool that checks AI agent skills and measures their effect on task results: start with quality checks, then compare live runs with and without a skill.

Agent skills are folders of instructions and supporting files defined by the Agent Skills specification. SkillEvaluator is part of the NVIDIA Verified Skills pipeline.

Bring skill evaluation to your repository

Check changed skills in GitHub or GitLab with Tier 1 quality checks, SkillSpector security scanning and reports. Choose folders and thresholds; no evaluator code to import.

GitHub guided setup: run inside your checked-out repository:

pip install --upgrade skillevaluator
skillevaluator ci init

Choose checks and optional hosted feedback, then review the setup PR. CLI setup guide.

Manual setup: copy a filled-in template from ci-0.7.1. No local CLI needed.

Your repository Ready-to-use template Copy destination
GitHub Skill checks .github/workflows/skill-checks.yml
GitLab Skill checks .gitlab-ci.yml, or merge into your existing pipeline
GitHub reports and PR comments Optional publisher Second workflow; complete publisher setup

See GitHub and GitLab setup, template reference and report examples.

Quickstart

Both paths use the bundled text-analyzer skill.

Start here Requires First result
Run without an LLM Git and uv A deterministic quality score and findings
Use NVIDIA Build Git, uv, and a Build API key Model-backed rubric scores and feedback

Install uv and Git, then get the example:

git clone --depth 1 https://github.com/NVIDIA/SkillEvaluator.git
cd SkillEvaluator

uv provisions Python 3.13 and dependencies. Run from this checkout; for a standalone CLI, see Installation.

Run without an LLM

uv run --python 3.13 skillevaluator quality-check \
  src/skillevaluator/tier3/reference_skills/text-analyzer \
  -r cli -r json -o reports/first-quality

No API key, scanner, GPU or Docker is needed. The example scores 84.5/100 (B), exits 0 and saves reports/first-quality/skillevaluator-quality.json. The passing threshold defaults to 70.

This checks static quality; publication evidence stays INCOMPLETE. Security needs scanners; agent impact needs live evaluation. Replace the example path with your skill directory. See the keyless walkthrough.

Use NVIDIA Build

Eligible NVIDIA Developer Program members can use NVIDIA-hosted endpoints for free prototyping, subject to access terms and rate limits.

  1. Sign in at build.nvidia.com and complete enrollment.
  2. Open a model page, select Get API Key, and generate your key.
  3. Set the provider and key in the same terminal, then run the rubric check:
export SKILL_EVAL_LLM_PROVIDER=nv_build
export NVIDIA_API_KEY='nvapi-...'
uv run --python 3.13 --extra llm skillevaluator rubric-eval \
  src/skillevaluator/tier3/reference_skills/text-analyzer \
  -r cli -r json -o reports/first-build

The command sends skill documentation to the model and saves feedback in reports/first-build/skillevaluator-rubric.json. No agent runtime or Docker is needed. Completed evaluations can still fail rubric thresholds.

The same key supports Tier 2 embeddings and supported Tier 3 agents. See the Build walkthrough or provider configuration.

Three-tier overview

SkillEvaluator three-tier pipeline: Skill → Tier 1 Validation → Tier 2 Deduplication → Tier 3 Live Evaluation → Reports

Each tier is independent. Add the relevant extra to your checkout command:

Tier Question Example after setup Additional setup
Tier 1: Validation Is the skill safe and well-formed? uv run --extra security skillevaluator tier1 ./my-skill --no-llm External scanners for full static coverage; a provider and model clients enable LLM checks
Tier 2: Deduplication Does guidance repeat or overlap? uv run --extra tier2 skillevaluator tier2 ./my-skill Embeddings and chat; add --catalog ./skill-catalog.json for inter-skill comparison
Tier 3: Live Evaluation Does the skill help the agent? uv run --extra tier3 skillevaluator tier3 ./my-skill Provider access, a supported agent, and a running sandbox (Docker by default)

Tier 1 fetches pinned, verified SkillSpector and Gitleaks releases when they are missing; Semgrep is optional. See scanners. --no-llm does not remove scanner requirements; a scanner that cannot run is INCOMPLETE and exits nonzero. SkillSpector provides specialized skill security scanning; Harbor, the open-source agent evaluation framework, powers sandboxed agent runs.

Tier 2 reports when inter-skill comparison did not run. Tier 3 reuses evaluation sources or creates one starter case with limited coverage. See the tier guides for details.

Run the combined pipeline

After setting up the provider, scanners, and agent sandbox, run all three tiers:

uv run --python 3.13 --extra all skillevaluator doctor --env-mode docker
uv run --python 3.13 --extra all skillevaluator validate ./my-skill

doctor checks readiness, not inference success. validate runs all tiers with autopilot for skills. Use --tiers 1,2 to skip live evaluation or --tiers 1 for static checks. --no-autopilot requires an existing source. Other artifact types retain their applicable stages.

Tier 1 always gates validate. Tier 2 gates unless --no-block-on-dedup is set; Tier 3 gates only with --block-on-agent-eval. Model and managed-sandbox usage can incur charges; see runtime and cost.

For broader coverage, generate and review additional cases. Templates omit negatives unless authored in EVAL.md:

uv run --python 3.13 --extra tier3 skillevaluator tier3 create-eval-dataset ./my-skill --full

Run from a source checkout

Use uv run --python 3.13 with the relevant extra. See Installation for extras and standalone upgrades.

Research and citation

Resources: paper, PDF, DOI, BibTeX, and the NVIDIA Developer blog. Cite the paper and record the SkillEvaluator release or commit; see CITATION.cff.

Documentation

See the documentation for setup, tier guides, reports, CI integration, CLI reference, and performance dashboard.

Installation and third-party software

Follow the installation guide to choose the full installation or a smaller per-tier setup.

This project will download and install additional third-party open source software projects. Review the license terms of these open source projects before use.

Contributing

Read CONTRIBUTING.md and run:

make lint && make test && make build

See project governance and the Code of Conduct.

Support

Support level: Experimental. Community-supported, best-effort, with no SLA or NVIDIA enterprise support entitlement. Report bugs and feature requests through GitHub Issues; see SUPPORT.md.

Security

Report suspected vulnerabilities using the private process in SECURITY.md. Do not disclose security issues in a public GitHub issue.

Releases

Release changes are recorded in CHANGELOG.md and GitHub Releases.

License

Apache License 2.0 — see LICENSE, NOTICE, and THIRD_PARTY_NOTICES.md.

Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.

Metadata

Release files for skillevaluator 0.7.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for skillevaluator 0.7.1
File Size Uploaded Provenance Actions
skillevaluator-0.7.1.tar.gz 2.3 MB Without provenance Details for skillevaluator-0.7.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for skillevaluator 0.7.1
File Interpreter ABI Platform Actions
skillevaluator-0.7.1-py3-none-any.whl Python 3 none any Details for skillevaluator-0.7.1-py3-none-any.whl

Total release size: 4.1 MB

Release files / skillevaluator-0.7.1.tar.gz

Download URL skillevaluator-0.7.1.tar.gz
Size 2.3 MB
Tags Source
SHA-256 checksum
How to use checksums
26b3e13f074b2bbd5a331902c8db1d59a735b5f526019f9ed76eab15530ade42
BLAKE2b-256 checksum
How to use checksums
1e9e908a43d721a2c80f998d5cefdaba705515ff68e948a5cff7eb26fea6472e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release files / skillevaluator-0.7.1-py3-none-any.whl

Download URL skillevaluator-0.7.1-py3-none-any.whl
Size 1.8 MB
Tags Python 3
SHA-256 checksum
How to use checksums
42c4d45e3f0d09848a69ca645b3d23be8592a38b9995d86941081dd1661bbf7c
BLAKE2b-256 checksum
How to use checksums
15bab6c270a9e6422362f88d327cb8d449ce821b479d5db2b14d3a392b682624
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Security for skillevaluator 0.7.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page