Skip to main content

SWE-bench CLI Logo

SWE-bench CLI

A command-line interface for interacting with the SWE-bench API. Use this tool to submit predictions, manage runs, and retrieve evaluation reports.

Read the full documentation here. For submission guidelines, see here.

Installation

pip install sb-cli

Authentication

Before using the CLI, you'll need to get an API key:

  1. Generate an API key:
sb-cli gen-api-key your.email@example.com
  1. Set your API key as an environment variable - and store it somewhere safe!
export SWEBENCH_API_KEY=your_api_key
# or add export SWEBENCH_API_KEY=your_api_key to your .*rc file
  1. You'll receive an email with a verification code. Verify your API key:
sb-cli verify-api-key YOUR_VERIFICATION_CODE

Subsets and Splits

SWE-bench has different subsets and splits available:

Subsets

  • swe-bench-m: The main dataset
  • swe-bench_lite: A smaller subset for testing and development
  • swe-bench_verified: 500 verified problems from SWE-bench Learn more

Splits

  • dev: Development/validation split
  • test: Test split (currently only available for swe-bench_lite and swe-bench_verified)

You'll need to specify both a subset and split for most commands.

Usage

Submit Predictions

Submit your model's predictions to SWE-bench:

sb-cli submit swe-bench-m test \
    --predictions_path predictions.json \
    --run_id my_run_id

Options:

  • --run_id: ID of the run to submit predictions for (optional, defaults to the name of the parent directory of the predictions file)
  • --instance_ids: Comma-separated list of specific instance IDs to submit (optional)
  • --output_dir: Directory to save report files (default: sb-cli-reports)
  • --overwrite: Overwrite existing report (default: 0)
  • --gen_report: Generate a report after evaluation is complete (default: 1)

Get Report

Retrieve evaluation results for a specific run:

sb-cli get-report swe-bench-m dev my_run_id -o ./reports

List Runs

View all your existing run IDs for a specific subset and split:

sb-cli list-runs swe-bench-m dev

Predictions File Format

Your predictions file should be a JSON file in one of these formats:

{
    "instance_id_1": {
        "model_patch": "...",
        "model_name_or_path": "..."
    },
    "instance_id_2": {
        "model_patch": "...",
        "model_name_or_path": "..."
    }
}

Or as a list:

[
    {
        "instance_id": "instance_id_1",
        "model_patch": "...",
        "model_name_or_path": "..."
    },
    {
        "instance_id": "instance_id_2",
        "model_patch": "...",
        "model_name_or_path": "..."
    }
]

Submitting to the Multimodal Leaderboard

To submit your system to the SWE-bench Multimodal leaderboard:

  1. Submit your predictions for the swe-bench-m / test split using the CLI
  2. Fork the experiments repository
  3. Add your submission files under experiments/multimodal/YOUR_MODEL_NAME/
  4. Create a PR with your submission

See the detailed guide in our submission documentation.

Note: Check your test split quota using sb-cli quota swe-bench-m test before submitting.

Related projects

SWE-bench    SWE-smith    SWE-agent    SWE-ReX

Metadata

Release files for sb-cli 0.1.5

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

Source distribution (sdist)

Source distribution for sb-cli 0.1.5
File Size Uploaded
sb_cli-0.1.5.tar.gz 590.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sb-cli 0.1.5
File Interpreter ABI Platform
sb_cli-0.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 603.9 kB

Release files / sb_cli-0.1.5.tar.gz

Download URL sb_cli-0.1.5.tar.gz
Size 590.4 kB
Tags Source
SHA-256 checksum
How to use checksums
8f6bb247446994a36c306a584d2f8730ca5a6f35cba029407227a436cc26241c
BLAKE2b-256 checksum
How to use checksums
6a758745d62d1ee79b7ce13bb94eee3d57067a6562b3a47008d7e3b6ff700370
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.11

Release files / sb_cli-0.1.5-py3-none-any.whl

Download URL sb_cli-0.1.5-py3-none-any.whl
Size 13.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f599d4d979c02cd4535233ee01e54084f77f5b211590e73ce0c0d3db98f51523
BLAKE2b-256 checksum
How to use checksums
5ec6563dec4ca22c473536a06440a199b0d65ac18db0ac807e3c7d5b4e0d4775
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.11

Release history Release notifications | RSS feed

This release

0.1.5 This release

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release 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