coding

Terminal-Bench

Active
2025-11-07 → today

Eighty-nine realistic terminal tasks graded in containers; version 2.1 repairs 2.0's dependency, resource, and specification defects.

last updated 2026-08-03

Performance over time

vendor-reported independent
50607080902026

Baseline: No aggregate blind human baseline is published. Every 2.0 task has a human-written solution and expert-time metadata, establishing solvability but not a comparable score.

Overview

Terminal-Bench evaluates whether an agent can complete complex work through a real command line. Terminal-Bench 2.0 contains 89 containerized tasks inspired by software engineering, system administration, security, data processing, machine learning, and scientific workflows. Every task provides an instruction, environment, human-written reference solution, and executable verifier.

Version 2.1 is the current protocol. It keeps the 89-task identity but repairs tasks whose dependencies drifted, resource budgets blocked valid solutions, or instructions disagreed with tests. Because 28 tasks changed, 2.0 and 2.1 scores must be treated as different axes.

Task details

An agent receives a textual objective and terminal access inside a prepared environment. It may inspect files, install or invoke tools subject to policy, write code, build programs, start services, and debug failures. After its time budget, task-specific tests inspect the final container state. Tasks range from building a Linux kernel under QEMU to configuring services, repairing concurrent code, training a model, or resolving a security flaw.

Example

The official site exposes build-linux-kernel-qemu: the agent must build Linux 6.9, generate an initramfs from a provided list, and boot it with QEMU so the verifier can observe the expected system. This is not a code-snippet question; compilation, filesystem state, command choice, and runtime behavior all matter.

Scoring methodology

Each task produces a binary verifier outcome and aggregate accuracy averages those outcomes. The result belongs to an agent-model pair, not a model alone: Codex CLI, Claude Code, Gemini CLI, and Terminus can score differently with the same underlying model. The 2.1 leaderboard requires at least five trials per task for submission, while individual reported rows may summarize those trials differently; preserve trial count and aggregation.

The official leaderboard states that a Terminal-Bench team member ran and verified every result below. Confidence intervals, hack adjustments, and total evaluation costs are reproduced exactly from the supplied 2.1 snapshot.

RankAgentModelEffortAccuracyDateAgent orgModel orgPRHacksCost
1Claude CodeFable 5xhigh83.8% ± 1.2%2026-06-07AnthropicAnthropic#75-0.2%$552.67
2CodexGPT-5.5xhigh83.1% ± 1.1%2026-05-01OpenAIOpenAI#45-0.2%$2,059.19
3Terminus 2Fable 5high80.4% ± 1.2%2026-06-05Terminal-BenchAnthropic#78-0.0%$438.64
4Cursor CLIGrok 4.5high79.3% ± 1.5%2026-07-09CursorxAI#86-9.0%$134.09
5Claude CodeOpus 4.8high78.9% ± 1.3%2026-07-09AnthropicAnthropic#92-0.0%$286.94
6CodexGPT-5.6 Terramax78.4% ± 1.3%2026-07-11OpenAIOpenAI#115-0.2%$421.15
7Terminus 2GPT-5.5xhigh78.0% ± 1.2%2026-05-01Terminal-BenchOpenAI#47-0.2%$493.85
8mini-SWE-agentMuse Spark 1.1xhigh76.2% ± 1.2%2026-07-09PrincetonMeta#94-0.0%$198.05
9CodexGPT-5.6 Lunamax75.7% ± 1.3%2026-07-11OpenAIOpenAI#112-0.9%$241.45
10Claude CodeSonnet 5high74.6% ± 1.6%2026-07-09AnthropicAnthropic#98-0.7%$288.18
11Terminus 2Gemini 3 Prohigh73.9% ± 1.3%2026-05-01Terminal-BenchGoogle#48-0.5%$224.44
12Claude CodeOpus 4.7max68.9% ± 1.4%2026-05-01AnthropicAnthropic#44-0.5%$599.52
13Terminus 2Opus 4.7max66.1% ± 1.4%2026-05-01Terminal-BenchAnthropic#46-0.0%$582.26
14Gemini CLIGemini 3 Prohigh65.8% ± 1.4%2026-05-01GoogleGoogle#66-0.5%$247.76
14Gemini CLIGemini 3.1 Prohigh65.8% ± 1.7%2026-05-05GoogleGoogle#68-0.2%$236.49
16Terminus 2Gemini 3.1 Prohigh65.6% ± 1.7%2026-05-05Terminal-BenchGoogle#69-0.5%$229.99
17Claude CodeGLM-5.1max58.7% ± 1.2%2026-05-01AnthropicZ.ai#67-0.0%$277.14

What it doesn’t measure

Terminal-Bench samples 89 curated container tasks, not routine desktop work, GUI use, interpersonal collaboration, production access controls, or long-term ownership. A passing final state does not reveal whether the trajectory was safe, efficient, or maintainable.

Known issues & criticisms

The 2.1 release documents three defects in 2.0: nine tasks had changing external dependencies, eight had resource limits that blocked at least one valid solution, and other tasks had instruction-test mismatches. Changes raised representative agent-model scores by as much as 12.1 points and even lowered two pairs slightly, proving the versions are not interchangeable. Public tests and agent access also create reward-hacking and leaderboard-integrity risks; the maintainers introduced trajectory review and policy updates in 2026.

Contamination notes

Risk is high because task instructions, environments, tests, and solutions are public and static. A canary asks training pipelines not to ingest the data, but compliance is voluntary. Continuous validation in 2.1 detects environmental drift; it does not create fresh hidden tasks.

How to run it

Install Docker and Harbor, authenticate to Harbor Hub if needed, then run 2.1 explicitly:

uv tool install harbor
harbor run \
  -d terminal-bench/terminal-bench-2-1 \
  -a terminus-2 \
  -m anthropic/claude-opus-4-6 \
  -k 1 \
  -n 4

For a leaderboard submission, the official 2.1 repository requires -k 5, public upload, and trajectory review. Reproduce historical 2.0 only with --dataset terminal-bench@2.0; label it 2.0 and never compare it directly with 2.1.

History & lineage

Terminal-Bench 1.0 launched on 2025-05-19. Version 2.0 and the Harbor harness launched on 2025-11-07 with 89 harder, more heavily verified tasks; its paper appeared on 2026-01-17 and was accepted to ICLR 2026. Version 2.1 launched on 2026-05-06, fixing 28 tasks and adding continuous validation. Terminal-Bench 3.0 is in development, so it is not declared as the successor yet.

Further reading