Skip to main content
Terminal-Bench 2 evaluates whether an agent can complete realistic command-line tasks in task-specific containers. AgentCompass uses the Terminal-Bench 2.0 task set with a terminal harness, normally terminus2.

How it works

  1. Load tasks. On its first run, AgentCompass shallow-clones the Terminal-Bench 2.0 repository from GitHub into the data directory. Each task supplies its instruction, container definition, and verifier.
  2. Run the agent. The task’s container image and resource requirements are applied by the environment recipe. The task instruction is passed to the harness, which operates in the prepared terminal workspace.
  3. Verify the result. The benchmark runs the task’s tests/test.sh through the Harbor verifier. A verifier reward of 1 is recorded as correct.

Parameters

Configure Terminal-Bench-specific options with --benchmark-params '{...}'.

Run examples

agentcompass run takes the benchmark id, harness id, and model id in that order. The default configuration uses the local docker environment; the recipe applies each task’s image automatically. Use --benchmark-params for dataset and judge settings, --harness-params for agent and tool settings, and --execution-params for phase timeouts and multipliers. YAML uses benchmark.params, harness.params, and execution; explicit CLI values override YAML values. The recommended terminal agent is terminus2.
Verify the end-to-end flow works — sample_ids selects which case to run, with all other parameters using their defaults.

Other optional harnesses

codex and claude_code are two other harness options. Pass --recipe terminalbench2_docker_ac to use the AgentCompass prebuilt image. It includes download dependencies such as Node.js, npm, curl, and wget for Codex, Claude Code, and similar harnesses.
Omit --recipe to use the official task image. Because it does not include the Node bootstrap dependencies, provide the matching installation command explicitly.

Output

A run writes per-task details and the aggregate views summary.md and metrics.json under the run directory.

Aggregate metrics (summary.md)

The primary metric is binary correct: the Harbor verifier’s full reward (1) maps to true. At k=1, correct.native@1 is Terminal-Bench’s pass rate over evaluated observations. At k>1, the generic reducers can emit correct.avg@k and correct.pass@k, each with independent counts.

Per-task details (details/)

Each task JSON stores the binary observation at attempts.<N>.metrics.correct, together with execution status, the agent trajectory, Harness diagnostics, and raw verifier evidence. See Results.