目录入口见 README。
先看这条:4.0 的社区提交已正式关闭。 官方
leaderboard/SUBMIT.md原文——社区提交当前关闭,只有维护方自己跑的结果会被加入榜单。自己跑只能拿到 Harbor Hub 链接,不等于上榜。
是什么
一句话:在容器化终端里考 agent 能否独立完成小时级真实工作流,是目前唯一同时测「模型 + agent harness」且未饱和的成熟公开榜。
- 维护方:Stanford × Laude Institute;执行框架为 Harbor。
- 榜单:https://www.tbench.ai/
- 任务形态:66 题 / 7 领域 / 统一 8 小时超时 / 每题 5 trials = 330 trials;agent 容器与 verifier 容器隔离,verifier 自动判分。
- 指标:Resolution rate + 95% 置信区间,同时公开成本、token、步数与 reward hack 率。
- 当前水位:GPT-6 Astra Max + Codex 58.2%±2.8(2026-09)。
版本警示
4.0(2026-08-28)改动任务集与资源规则,与 2.x / 3.0 分数不可直接比较。各版任务数不同:1.0 为 80 题、2.0/2.1 为 89 题、3.0 为 74 题、4.0 为 66 题。榜首从 2.1 的 83.8% 回落到 58.2%,是换尺不是退步。
资源要求
66 题中 3 题需要单卡 H100:
fp8-rmsnorm-gemm— 写/调优 FP8 RMSNorm + GEMM CUDA kerneljax-speedrun-gpu— JAX 训练配方(verifier 另需 1×H100、16 CPU、32GB)math-eval-grader— 跑 pinned Qwen2.5-Math-1.5B 做数学 grader
其余 63 题为 CPU 任务。GPU 只有 modal / daytona / gke / beam / opensandbox 后端支持。
怎么打
第 1 步:装 Harbor
需 Python ≥ 3.12。
uv tool install 'harbor[modal]'第 2 步:跑评测
harbor run -d terminal-bench/terminal-bench@4.0.0 \
-e modal \
-a claude-code \
-m anthropic/claude-sonnet-5 \
-k 5
harbor view jobs
harbor upload jobs/<name> # 默认私有;加 --public 公开关键参数:-d 数据集、-e 后端(默认 docker)、-a agent、-m 模型、-k trials(官方要求 5)、-n 并发、--upload。
第 3 步:接入自研 agent
重要:网上流传的
--agent-import-path是 2.x 时代的旧参数,Harbor 0.23.0 已移除。当前正确写法是把 import path 直接传给-a:
harbor run -d terminal-bench/terminal-bench@4.0.0 \
-a my_package.my_agent:MyAgent \
-m <provider/model> -k 5 -n 100 -e modal两条基类路线:
| 基类 | 适用 | 必须实现 |
|---|---|---|
BaseInstalledAgent(推荐) | agent CLI 装进任务容器内运行 | name()、install()、run() |
BaseAgent | agent loop 跑在 Harbor 侧,操纵沙箱 | name()、version()、setup()、run() |
最小示例:
from harbor.agents.base import BaseAgent
from harbor.environments.base import BaseEnvironment
from harbor.models.agent.context import AgentContext
class MarkerAgent(BaseAgent):
@staticmethod
def name() -> str: return "marker-agent"
def version(self) -> str: return "1.0.0"
async def setup(self, environment: BaseEnvironment) -> None: pass
async def run(self, instruction, environment, context) -> None:
await environment.exec(command="echo 'Hello, world!' > /app/hello.txt")交互靠 BaseEnvironment 对象直接调用,不是自定义 RPC:
result = await environment.exec(command="ls /app", cwd="/app", timeout_sec=60)
result.return_code; result.stdout; result.stderr三个要点:
run()正常返回即代表任务结束,不要自己停容器;成败由 Harbor 在 run 结束后跑 verifier 判定。- token 与成本要写进
context: AgentContext,否则榜单成本列为空。 - 不产 ATIF 轨迹会直接过不了静态检查。
第 4 步:上官方榜——当前走不通
harbor upload 只是把 job 传到 Harbor Hub(默认私有),不等于上榜。
2.1 时代曾有的自助通道(uv run lb submit <hub-job-url>,经静态分析 → promotion → 维护者 /judge → /apply → merge)目前已关闭;2.0 的 HF PR 通道也已关闭。
当前唯一公开接触渠道是 Discord(#terminal-bench 频道)与每周四 9am PT 的公开会。没有公开的提榜专用邮箱。
即便暂时上不了榜,也应把产物准备成可提交形态:
harbor run -d terminal-bench/terminal-bench@4.0.0 \
-a <agent> -m <provider/model> -k 5 -n <并发> \
-e modal --upload --public未来的收录硬性标准
来自 4.0 校验代码,现在就可按此准备:
- 必须跑 pinned 数据集,不得修改
timeout_multiplier必须为None/1.0,不得覆盖 agent / verifier 超时与 CPU / 内存 / GPU / 存储- 66 题全覆盖、每题 ≥5 trials
- 报错的 trial 按 reward 0 计入,不得剔除
- 每个得分 trial 必须有 ATIF 轨迹
成本
官方 4.0 榜 26 行数据(仅模型 API 成本,不含沙箱基础设施费):
| 指标 | 数值 |
|---|---|
| 完整一轮成本 | 9,603.86 |
| 中位数 / 均值 | 3,593 |
| Token 区间 | 0.89B – 21.6B |
| 折合每 trial | 29.1 |
头部实例:
| 模型 + Agent | effort | 分数 | Token | 成本 |
|---|---|---|---|---|
| GPT-6 Astra + Codex | max | 58.18% | 1.5B | $3,267 |
| Claude Fable 5.1 + Claude Code | max | 57.88% | 2.7B | $6,244 |
| GPT-5.6 Luna + Codex | max | 17.27% | 11.6B | $347(最便宜) |
| Claude Sonnet 5 + Claude Code | max | 12.42% | 21.6B | $9,604(最贵) |
Sonnet 5 的 token 消耗与超时问题被官方在 4.0 公告里专门点名。缓存命中率对成本影响极大(如 GPT-6 Astra 缓存 1.443B vs 未缓存 1.506B)。
并发直接决定时间:330 trials 串行约 10 天量级;官方 Modal 配置 n_concurrent_trials: 330 理论约 3 小时,实际数小时到十几小时。
常见坑
- 以为 upload 就上榜 → 最常见误解,upload 只是传 Hub(默认私有)。
- 用旧参数
--agent-import-path→ 0.23.0 直接报错,应传给-a。 - 不写 AgentContext → 成本列缺失;不产 ATIF → 静态检查失败。
- 改了超时或资源覆盖 → 成绩无法用于任何官方记录。
- 想剔除报错 trial → 不行,按 reward 0 计入。
- 在 docker 后端跑 GPU 题 → 环境启动即校验失败。
- 没配 max_retries → 长跑中失败数被放大。模型侧错误会区分处理:
AgentSafetyRefusalError默认不重试,OutputTokenExceededError/ContextWindowExceededError/ApiUsageLimitError等需显式排除不可重试项。 - 跨版本比较 → 4.0 与 2.x / 3.0 分数不通用。
- key 未注入 agent 阶段 → Claude Code 只认
ANTHROPIC_API_KEY,用--ae/--agent-env或--env-file传入。 - agent 没实现
version()或返回 None → 提交的 source_filter 匹配不上(CI 按 agent + version + model 聚合)。
相关
- swe-bench-live — 另一个榜单的打榜指南(当前唯一能自助提交)
- README — 本目录入口
- terminal-bench — 评测集定义与版本演进
- terminal-bench — 4.0 与 2.1 分数快照
- harbor — 官方执行框架
- coding-agent-leaderboards — 榜单横向地图
信源
信息来自 tbench.ai/run、leaderboard/SUBMIT.md、Harbor 官方文档、Harbor 0.23.0 CLI 实测与 Harbor Hub 榜单 API。数据截至 2026-09-19。成本与 token 来自官方榜公开数据,仅含模型 API 成本,不含沙箱基础设施费。