AnyBench
AnyBench turns the Git history of repositories you supply into coding problems, verifies them in Docker, runs coding models, and creates an HTML report. You do not need to know the repository's language or write benchmark cases yourself.
First run
Install Python 3.11+, Git, and Docker, then start the Docker daemon. Install AnyBench:
python -m pip install any-bench
Run it with one or more local repository paths or Git URLs:
anybench start /path/to/repository
anybench start /path/to/repo-a https://github.com/org/repo-b.git
On the first run, the wizard asks for a builder model, at least one candidate model, and an optional judge. Enter each model's API type, base URL, model ID, and credential. It checks the prerequisites and shows the maximum workload before any paid model calls. Confirm once to begin. The report path appears when the run finishes.
The builder drafts problems from up to 50 recent commits per repository. AnyBench prepares a Docker test environment, then retains only problems whose test fails before the historical fix and passes after it. Every verified problem is run once per candidate by default. Unverified problems are listed with reasons; they are never counted as solved or unsolved.
To set a smaller or larger workload:
anybench start /path/to/repo --commits 20 --max-problems 10
Interrupted sessions can resume without repeating recorded paid calls:
anybench start --resume .anybench/runs/SESSION_NAME
If a model call was interrupted with unknown billing state, AnyBench stops and asks for a new session rather than silently paying for it again.
Models and API keys
The wizard recommends an environment variable name for each credential, such as OPENAI_API_KEY. Set it in your shell before starting. You can also enter a key at a hidden prompt for the current run or save a literal api_key in the private .anybench/config.json file. Saved configs use 0600 permissions and .anybench/ is Git-ignored. Literal keys are excluded from run manifests, reports, and generated model files. To edit repositories or add, edit, and remove models later, run:
anybench configure
The supported endpoint protocols are OpenAI-compatible Chat Completions, OpenAI-compatible Responses, and Anthropic-compatible Messages. The judge is optional; verified local tests provide the main score.
How setup works
Docker is required for isolated verification and candidate execution. The builder proposes dependency setup for the repository's language and test tooling. AnyBench builds the image and allows one automated repair attempt. Image builds may download public dependencies; verification and benchmark containers have no network access. If the repository needs a private registry, external service, or another unsupported setup, the report explains why its problems were not verified. The generated Docker recipes and run files are under .anybench/runs/.
For custom images, headless harnesses, detailed metrics, and the individual build, validate, run, evaluate, and report commands, see the advanced guide.
Release files for any-bench 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| any_bench-0.4.0.tar.gz | 106.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| any_bench-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 200.9 kB
Release files / any_bench-0.4.0.tar.gz
| Download URL | any_bench-0.4.0.tar.gz |
|---|---|
| Size | 106.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
618fc339e81ae9b4e48b497f2e0b3aab83c6aef99f9be07cc6697d23b930569a
|
|
BLAKE2b-256 checksum How to use checksums |
9e6f6b138bf0b2936b82b2e4de8634a7bcc9fe46a5912d64981e531204becf16
|
| 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 Sep 25, 2026.
Transparency logRelease files / any_bench-0.4.0-py3-none-any.whl
| Download URL | any_bench-0.4.0-py3-none-any.whl |
|---|---|
| Size | 94.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d9108ed23f0290b24ba640a14424a03b06b3218d844310d1ab016ff0fa8d75c7
|
|
BLAKE2b-256 checksum How to use checksums |
d75837895f6e1caebd718b99fedf335dc7c0f21fc81105f9fb0fa4a2c01c4d6d
|
| 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 Sep 25, 2026.
Transparency log