Skip to main content

AgentVerdict

Benchmark and compare AI agents with reproducible tests.

AgentVerdict is an open-source Python CLI for testing agent behavior across deterministic benchmarks, repeated runs, and side-by-side comparisons.

pip install agentverdict
agentverdict test my_agent.py

Quickstart

AgentVerdict currently loads agents through a small Python contract. Create my_agent.py:

def run_agent(task: str) -> str:
    return f"Received: {task}"

Run it against the bundled benchmark:

agentverdict test my_agent.py
agentverdict test my_agent.py --runs 5

For a representative passing run, use the included example:

agentverdict test examples/benchmark_agent.py --runs 5
AgentVerdict

Agent: benchmark_agent
Benchmark: General Agent Benchmark
Runs per task: 5

Tasks:                  10
Runs per task:           5
Total attempts:          50
Passed attempts:         50
Failed attempts:         0
Execution errors:        0
Overall reliability:     100.0%
Average consistency:     100.0%
Error rate:              0.0%
Average latency:          0.000s

The exact latency depends on your machine and the agent being tested.

Why AgentVerdict?

An AI agent can work in a demo and still behave differently across repeated runs. AgentVerdict measures the same agent against the same deterministic tasks so you can inspect:

  • correctness
  • reliability across attempts
  • literal output consistency
  • execution errors
  • local execution latency

Compare agents

Run two or more agents against the same benchmark:

agentverdict compare \
    examples/benchmark_agent.py \
    examples/simple_agent.py \
    --runs 5

Each agent receives the same benchmark, task order, evaluator semantics, and runs per task. The comparison presents the individual metrics rather than inventing an arbitrary weighted overall score, so tradeoffs remain visible.

Benchmark format

Benchmarks are versioned YAML files. A minimal definition looks like this:

version: "1"
name: Example Benchmark

tasks:
  - id: capital-france
    name: Capital of France
    category: factual
    prompt: "Name the capital of France."
    evaluation:
      type: contains
      expected: "Paris"

Current deterministic evaluators are exact_match, contains, and regex. Use agentverdict benchmark-info to inspect a bundled benchmark or YAML file. The result schema documentation describes the structured output format.

Metrics

Reliability is passed attempts divided by total attempts.

Output consistency is, for each task, the frequency of its most common valid literal output, averaged across tasks. It is case-sensitive, whitespace-sensitive, deterministic, and not semantic similarity. Execution errors are excluded because they have no output.

Error rate is execution errors divided by total attempts.

Latency is measured locally for each agent execution. It reflects the machine, environment, and any services contacted by the agent.

PASS, FAIL, and ERROR

  • PASS — the agent returned a valid output and satisfied the evaluator.
  • FAIL — the agent executed successfully but did not satisfy the evaluator.
  • ERROR — the agent failed to produce a valid output.

Reports

Generate reports locally while testing or comparing agents:

agentverdict test agent.py --runs 5 --report html
agentverdict compare agent_a.py agent_b.py --report all

--report accepts none, json, html, or all. HTML reports are standalone and require no server. JSON reports are useful for tooling and CI. Reports are generated locally; AgentVerdict does not upload them.

CLI reference

Command Purpose
agentverdict run Run a Python-file agent once.
agentverdict test Test one agent against a benchmark.
agentverdict compare Compare two or more agents on one benchmark.
agentverdict benchmarks List bundled benchmarks.
agentverdict benchmark-info Inspect a benchmark definition.
agentverdict --version Show the installed version.

For detailed options, run agentverdict COMMAND --help.

CI usage

agentverdict test agent.py can run directly in CI.

  • test: exit 0 when every attempt passes, 1 when the benchmark completes with failures or errors, and 2 for a configuration or application error.
  • compare: exit 0 when comparison completes and 2 for a configuration or application error.

Installation and requirements

AgentVerdict requires Python 3.11 or newer.

For the public release:

pip install agentverdict

For local development:

python -m pip install -e ".[dev]"

Architecture

Agent
  ↓
AgentAdapter
  ↓
Benchmark Runner
  ↓
Evaluator
  ↓
Structured Results
  ├── Terminal
  ├── JSON
  └── HTML

Safety and privacy

Agent files are executable Python code. AgentVerdict v0.1.0 does not sandbox them, so only run agent files you trust. See SECURITY.md.

AgentVerdict has no telemetry and does not upload reports. Benchmarks and their outputs remain local unless the agent you supply itself contacts an external service.

Roadmap

See ROADMAP.md for potential post-0.1.0 directions.

Contributing

Contributions are welcome, especially benchmark packs, evaluator types, framework adapters, reporting improvements, and documentation. Read CONTRIBUTING.md before opening a pull request.

License

AgentVerdict is licensed under the MIT License.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agentverdict-0.1.0.tar.gz (33.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agentverdict-0.1.0-py3-none-any.whl (31.7 kB view details)

Uploaded Python 3

File details

Details for the file agentverdict-0.1.0.tar.gz.

File metadata

  • Download URL: agentverdict-0.1.0.tar.gz
  • Upload date:
  • Size: 33.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for agentverdict-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fe9e9d70cc8da2e93da7b67cba7b296ba18c9b38f45f7fabfc9b2a9655c0c3dc
MD5 65375d2ffa255bb08903fb5832b8446e
BLAKE2b-256 b47cd1ed0471fcd4251a9237c75479e49d8f9f8de93dc84e4de419f802e5d8c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for agentverdict-0.1.0.tar.gz:

Publisher: release.yml on Rahmat9009/AgentVerdict

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agentverdict-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: agentverdict-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 31.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for agentverdict-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 17fff914d5b11d9f1e71e40dbed1661c30b6eb48aa8baf2a7d11d732a4f4904e
MD5 c64583520d8726d061a9aafae786b58a
BLAKE2b-256 59404fe6ab7d1e2bc0a05cfe928af885663746a1da30ed9ed8f8cb82227c43de

See more details on using hashes here.

Provenance

The following attestation bundles were made for agentverdict-0.1.0-py3-none-any.whl:

Publisher: release.yml on Rahmat9009/AgentVerdict

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page