evalstone/evalscope/docs/en/benchmarks/terminal_bench_v2.md
2026-07-08 08:57:50 +00:00

3.3 KiB

Terminal-Bench-2.0

Overview

Terminal-Bench v2 is a command-line benchmark suite that evaluates AI agents on 89 real-world, multi-step terminal tasks. Tasks range from compiling and debugging to system administration, running within isolated containers with rigorous validation.

Task Description

  • Task Type: Command-Line Agent Evaluation
  • Input: Terminal task specification
  • Output: Task completion via agent actions
  • Domains: System administration, compilation, debugging, file operations

Key Features

  • 89 real-world terminal tasks
  • Multi-step task completion requirements
  • Isolated container execution environment
  • Binary scoring (0/1) with auto-validation
  • Multiple agent types supported (terminus-2, claude-code, codex, etc.)

Evaluation Notes

  • Requires Python>=3.12 and pip install evalscope[terminal_bench]
  • Environment options: docker, daytona, e2b, modal
  • Configurable agent types and timeout settings
  • Maximum turns configurable (default: 200)
  • Usage Example

Properties

Property Value
Benchmark Name terminal_bench_v2
Dataset ID latest
Paper N/A
Tags Coding
Metrics acc
Default Shots 0-shot
Evaluation Split test

Data Statistics

Statistics not available.

Sample Example

Sample example not available.

Prompt Template

Prompt Template:

{question}

Extra Parameters

Parameter Type Default Description
environment_type str docker Environment type for running the benchmark. Choices: ['docker', 'daytona', 'e2b', 'modal']
agent_name str terminus-2 Agent type to be used in Harbor. Only terminus-2 uses the evalscope model for inference; other agents (claude-code, codex, etc.) run as standalone CLI tools with their own API keys. Choices: ['oracle', 'terminus-2', 'claude-code', 'codex', 'qwen-coder', 'openhands', 'opencode', 'mini-swe-agent']
timeout_multiplier float 1.0 Timeout multiplier. If timeout errors occur, consider increasing this value.
max_turns int 200 Maximum number of turns for the agent to complete the task.
environment_kwargs dict {} Extra kwargs passed to Harbor EnvironmentConfig. Supported keys: override_cpus, override_memory_mb, override_storage_mb, override_gpus, force_build, delete, env, etc.

Usage

Using CLI

evalscope eval \
    --model YOUR_MODEL \
    --api-url OPENAI_API_COMPAT_URL \
    --api-key EMPTY_TOKEN \
    --datasets terminal_bench_v2 \
    --limit 10  # Remove this line for formal evaluation

Using Python

from evalscope import run_task
from evalscope.config import TaskConfig

task_cfg = TaskConfig(
    model='YOUR_MODEL',
    api_url='OPENAI_API_COMPAT_URL',
    api_key='EMPTY_TOKEN',
    datasets=['terminal_bench_v2'],
    dataset_args={
        'terminal_bench_v2': {
            # extra_params: {}  # uses default extra parameters
        }
    },
    limit=10,  # Remove this line for formal evaluation
)

run_task(task_cfg=task_cfg)