Skip to main content

RepoBench

Living repository-native evals for coding agents.

Find which coding agent actually works for your codebase.

Quick Start

# Install
pipx install repobench

# Initialize in your repo
cd my-project
repobench init

# Analyze workload
repobench analyze

# Build benchmark
repobench benchmark build

# Run agents
repobench run codex-local claude-local

# Get results
repobench report

What is RepoBench?

RepoBench transforms your repository's real engineering history into a private, reproducible, representative benchmark for coding agents.

Instead of relying on public benchmarks that don't match your work, RepoBench mines your actual merged PRs to create evals that reflect what your team actually ships.

The Pipeline

Repository history
        │
        ▼
   DISCOVER    What happened here?
        │
        ▼
     FILTER    Can it become an eval?
        │
        ▼
    VALIDATE   Can we prove correctness?
        │
        ▼
  REPRESENT    Does the benchmark match
               the actual workload?
        │
        ▼
      RUN      Execute agent configurations
        │
        ▼
    MEASURE    Quality / cost / latency
        │
        ▼
    DECIDE     What should we use?

Commands

Command Description
repobench doctor Check prerequisites
repobench init Initialize in current repo
repobench analyze Analyze repository workload
repobench candidates View mined candidate tasks
repobench task inspect <id> Inspect a candidate task
repobench benchmark build Build representative benchmark
repobench benchmark list List existing benchmarks
repobench run <configs...> Run agents via Harbor
repobench report Generate comparison report
repobench config show Show current configuration

Configuration

RepoBench creates repobench.yml in your repo:

version: 1

repository:
  provider: github
  lookback_days: 180

project:
  languages:
    - python
    - go
    - java
  install_command: pip install -e ".[dev]"
  test_command: pytest

benchmark:
  size: 24
  dimensions:
    task_type: 0.30
    subsystem: 0.40
    complexity: 0.30

execution:
  environment: docker
  concurrency: 4

agents:
  codex-default:
    agent: codex
    model: openai/gpt-4o

  claude-default:
    agent: claude-code
    model: anthropic/claude-opus-4

Supported Languages

  • Python
  • JavaScript / TypeScript
  • Go
  • Java (Maven / Gradle)

How it Works

1. Workload Analysis

RepoBench fetches your merged PRs via GitHub API and classifies each by:

  • Task type: bugfix, feature, refactor
  • Subsystem: payments, auth, frontend, etc.
  • Complexity: small, medium, large

2. Candidate Mining

From the workload, RepoBench identifies PRs that can become reliable evals:

  • Have linked issues or clear PR descriptions
  • Include test changes (verifier evidence)
  • Are within configurable size bounds
  • Don't require unsupported environments

3. Validation Pipeline

Each candidate passes rigorous validation:

  • Base health: tests pass before the change
  • No-op validation: new tests fail without the fix
  • Oracle validation: tests pass with the fix
  • Determinism: tests produce consistent results
  • Leakage protection: agent can't access gold solution

4. Representative Sampling

RepoBench selects benchmark tasks using stratified optimization to match your actual workload distribution across task type, subsystem, and complexity.

5. Execution via Harbor

Benchmarks are exported in Harbor format and executed via harbor run:

repobench run codex-default claude-default

6. Decision Report

repobench report
REPOBENCH REPORT
────────────────────────────────────────

Repository:    my-org/payments
Benchmark:     rb_b_20260825_a84f
Tasks:         24
Health:        87/100

                      Solve    $/Solve
Codex                  82%       $0.71
Claude                 86%       $1.52

Quality
Claude +4pp vs Codex
95% CI: -7pp → +14pp

No conclusive quality difference.

Recommendation: Codex
Reason: lowest cost among statistically
indistinguishable configurations.

Development

# Clone
git clone https://github.com/felipesousa/repobench.git
cd repobench

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Build package
python -m build

# Publish to PyPI
twine upload dist/*

License

Apache 2.0

Download files

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

Source Distribution

repobench-0.1.3.tar.gz (120.2 kB view details)

Uploaded Source

Built Distribution

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

repobench-0.1.3-py3-none-any.whl (87.2 kB view details)

Uploaded Python 3

File details

Details for the file repobench-0.1.3.tar.gz.

File metadata

  • Download URL: repobench-0.1.3.tar.gz
  • Upload date:
  • Size: 120.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.3

File hashes

Hashes for repobench-0.1.3.tar.gz
Algorithm Hash digest
SHA256 ec2969c4c763de373833d1b7df37c39698ec3e2146c7b548883c71bcecc6032a
MD5 734a7e3c34fde810d9be9033c145cc2d
BLAKE2b-256 b08d50fc423c1122f6c71b1b6345e723417e2b277ac5f506323f114ee36bb1d0

See more details on using hashes here.

File details

Details for the file repobench-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: repobench-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 87.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.3

File hashes

Hashes for repobench-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9422ca86763e73be3d6c807e13bf100d77e4a5c21c12ccf3099869564786d55f
MD5 9f7df9112704dc9c9fb2e5762f0fdce7
BLAKE2b-256 95acf7efdbc9eafaea6aa31f46a143bc8c9e241ff415dcdd47edc654aa4be904

See more details on using hashes here.

Release history Release notifications | RSS feed

0.8.1

2 files

0.8.0

2 files

0.3.0

2 files

0.2.0

2 files

This release

0.1.3 This release

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

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