anyeval
Check that an AI evaluation repository conforms to the AnyEval standard, and run it end to end to get real numbers.
pipx run anyeval-cli check .
Why
A benchmark score is comparable to another score only when five things match: the model, the provider that served it, the eval, the problem, and the harness. Published numbers routinely state one and omit four, which makes them impossible to reproduce and unsafe to compare — including for whoever published them.
The AnyEval standard is a repository layout and a manifest that make all five recordable. This tool decides whether a repository conforms, so conformance is an objective result rather than a review opinion.
Commands
anyeval check . # 27 rules, pass/fail each, exit 1 on failure
anyeval check . --json # machine-readable, for CI
anyeval spec # print the standard
anyeval run . --sample-id 3 --model qwen/qwen3-32b
check never runs your code
It reads files and parses run.py with ast. It does not import or execute anything in
the repository, so it is safe to point at a stranger's checkout. The trade is stated
plainly: static analysis can confirm that run.py declares --sample-id and refuses
glob patterns, not that it honours them at runtime. That is what run is for.
run does run your code
Running an eval is the only way to prove it works, so anyeval run executes the
repository's own run.py against a live model and prints the score, tokens, cost, and
which provider actually served the request.
It needs a TrustedRouter key in TRUSTEDROUTER_API_KEY.
The run is billed to your account; this tool sends the key to nothing but TrustedRouter.
It refuses to start on a non-conforming repository unless you pass --force, because
the rules are what stop one problem becoming a full-dataset bill.
The most expensive rule
runner.rejects_globs exists because Inspect matches sample ids with fnmatch and only
warns when a glob selects many samples — it errors solely when the filtered set is
empty. So --sample-id '*' silently runs the entire dataset while billing for one
problem. Every conforming run.py refuses glob metacharacters outright.
Exit status
0 when the repository conforms, 1 when it does not, 2 on a usage error. Suitable
for CI.
Submitting an eval
Check it, run it, then email the repository URL to anyeval-submission@trustedrouter.com.
See anyeval.com/submit.
You do not have to submit at all — the standard and this tool are open, and neither depends on anyeval.com. A format only usable by its author is not a standard.
Note on the package name
The anyeval name on PyPI belongs to an unrelated project, so this package is published
as anyeval-cli. It installs both an anyeval and an anyeval-cli command.
Licence
Apache-2.0
Metadata
Release files for anyeval-cli 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| anyeval_cli-1.0.1.tar.gz | 11.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| anyeval_cli-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.4 kB
Release files / anyeval_cli-1.0.1.tar.gz
| Download URL | anyeval_cli-1.0.1.tar.gz |
|---|---|
| Size | 11.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2dc438f4212ce06f3a4d7bfac24f0dfa7277de325029d93022a836c1cf9736ec
|
|
BLAKE2b-256 checksum How to use checksums |
d71ed47f671267dcaac2070395ce631ebfa199542e5d53553acfbdc5fccc9230
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 28, 2026.
Transparency logRelease files / anyeval_cli-1.0.1-py3-none-any.whl
| Download URL | anyeval_cli-1.0.1-py3-none-any.whl |
|---|---|
| Size | 12.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9de3dd2a9d98c3409e37f02e840e412f546eef7d781c436b2bd3c69f66b70d7b
|
|
BLAKE2b-256 checksum How to use checksums |
1a6fabab3b5f380e566db2c6d38a9371ea8b5c4ae05a5287d17c746dbcc26ba4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 28, 2026.
Transparency log