Terminal-Bench 2.1 agent results

TerminalBench 2.1

A leaderboard for coding agents on TerminalBench-2.1: 89 tasks, 3 attempts per task. Rankings sort by Final Score. Each column shows results by agent used.

Best Final Score 31.46 OpenCode - MiniMax-M3
Completed Models No partial progress rows
Scoreable Attempts 89 tasks x 3 tries
Exported TerminalBench 2.1 zh89

Benchmark Leaderboard

Final Score is the primary ranking signal. It weights Pass^3 most strongly for stable agent performance, while Pass@3 keeps each model's best-of-three reach visible.

Agent
# Agent / Model Agent Version Final Score Pass^3 Pass@3 Attempt Score Solved Tasks Solved Attempts Coverage Tokens K (In / Out / Total) Log Archive Full Tree Exported Model Dir
MiniMax-M3 OpenCodeMiniMax - minimax/MiniMax-M3
opencode-cli 31.46
/89 - 0%
/89 - 0%
/ - 0%
/89 / / 0% -- MB MB opencode-minimax-m3
step-3.7-flash OpenCodeStepFun - stepfun/step-3.7-flash
opencode-cli 98.88
/89 - 0%
/89 - 0%
/ - 0%
/89 / / 0% -- MB MB opencode-stepfun-3.7-flash
Notes: Final Score = 100 × S^0.55 × R^0.25 × A^0.20, where S=(Pass^3)^(1/3), R=1-(1-Pass@3)^(1/3), and A=Attempt Score. Pass^3 counts tasks solved in all 3 attempts. Pass@3 counts tasks solved at least once across 3 attempts. Attempt Score is solved scoreable attempts divided by 453. Tokens are shown in K and summed across all exported attempts. Input includes cache read/write tokens when exported. OpenCode rows use per-step command.log usage when available; other rows fall back to per-task run_summary.json fields. -- means non-zero usage was not exported. Agent Version combines each run's exported runtime label with the current local CLI version command when historical reports do not include exact semver. Completed rows are rankable only when the exported summary reports 453 scoreable attempts; partial rows are shown as progress references at the bottom.

Visual Leaderboard

Switch metrics to compare the same agent/model pairs by reach, consistency, and per-attempt solve rate.

MiniMax-M3 OpenCode - MiniMax
step-3.7-flash OpenCode - StepFun

Reach vs Consistency

Pass@3 shows whether an agent can solve a task at least once; Pass^3 shows whether it solves the same task all three times. The gap is useful when comparing stochastic or retry-sensitive agents.

Pass@3
OpenCode - MiniMax-M3
OpenCode - step-3.7-flash
Pass^3