Finding the Right Fit:
Model–Harness Interactions across Agent TasksThanks: Corresponding author: boan@ntu.edu.sg.寻找最佳契合点:智能体任务中模型与框架的交互
致谢:通讯作者:boan@ntu.edu.sg。
Abstract摘要
Choosing an agent system means choosing both a language model and the harness through which it acts. We ask whether a strong model, harness, or pairing stays strong when the setting changes. We evaluate 66 configurations: four configurable harnesses (OpenHands, DeepSeek Harness, PI, and openJiuwen) paired with five models on TUA-Bench, ALE-CLI, and Terminal-Bench 4, plus the native Codex–GPT and Claude Code–Claude pairings. Model rankings reverse across harnesses. On Terminal-Bench 4, Claude leads GPT by 7.94 points in OpenHands but trails it by 30.16 points in PI. For four of the five models, the best harness changes from one benchmark to another, yet some pairings hold: openJiuwen gives Kimi its highest score on all three benchmarks, by 5.61 to 11.11 points. A model’s own vendor harness is not reliably its best, and higher cost does not reliably buy a higher score. On Terminal-Bench 4, GPT scores higher under PI than under DSH at less than a quarter of the cost per task. Matched trajectories suggest why fit varies. Models start almost all repairs themselves, so much depends on whether the harness hands failures back in a form the model can use. GPT does best with PI’s lean scaffold, while Kimi, which often issues malformed tool calls, does best in openJiuwen. We argue that the model, the harness, and the task should be evaluated together, and we release the harness adapters, evaluation code, and all 6,204 scored trajectories at https://github.com/liyix/finding-the-right-fit and https://huggingface.co/datasets/yixuanli97/finding-the-right-fit.选择智能体系统意味着同时选择语言模型和模型赖以执行任务的框架(harness)。我们探讨了当环境发生变化时,强大的模型、框架或两者组合是否依然保持优势。我们在 TUA-Bench、ALE-CLI 和 Terminal-Bench 4 上评估了 66 种配置:将四种可配置框架(OpenHands、DeepSeek Harness、PI 和 openJiuwen)与五种模型配对,外加原生的 Codex–GPT 和 Claude Code–Claude 组合。模型排名会随框架的不同而发生逆转。在 Terminal-Bench 4 上,Claude 在 OpenHands 中领先 GPT 7.94 分,但在 PI 中却落后 30.16 分。在五种模型中的四种里,最佳框架会随基准测试的不同而改变,但某些组合表现稳定:openJiuwen 在所有三个基准测试中都使 Kimi 获得了最高分,领先幅度为 5.61 到 11.11 分。模型自带的供应商框架并不一定是最优选择,更高的成本也不一定能带来更高的分数。在 Terminal-Bench 4 上,GPT 在 PI 下的得分高于 DSH,且每个任务的成本不到后者的四分之一。匹配的轨迹分析揭示了契合度差异的原因。模型几乎都是自行启动所有修复工作,因此很大程度上取决于框架能否以模型可用的形式反馈失败信息。GPT 在 PI 的精简脚手架下表现最佳,而经常发出格式错误工具调用的 Kimi 则在 openJiuwen 中表现最好。我们认为模型、框架和任务应作为一个整体进行评估,并发布了框架适配器、评估代码以及所有 6,204 条评分轨迹,网址为 https://github.com/liyix/finding-the-right-fit 和 https://huggingface.co/datasets/yixuanli97/finding-the-right-fit。
1 Introduction1 引言
A team deploying an agent faces two coupled choices: which model should reason, and which harness should turn its outputs into actions. A model leaderboard answers only the first. The harness decides how tools are presented, what stays in context, how errors come back to the model, and when the agent retries or stops. A model that does well in one harness can do much worse in another, and a harness that suits one model need not suit the next.部署智能体的团队面临两个相互关联的选择:应该使用哪个模型进行推理,以及应该使用哪个框架将其输出转化为行动。模型排行榜仅回答了第一个问题。框架决定了工具的呈现方式、哪些信息保留在上下文中、错误如何反馈给模型,以及智能体何时重试或停止。一个在某种框架下表现良好的模型在另一种框架下可能表现糟糕,而适合某个模型的框架未必适合下一个模型。
Prior work shows that harness choice affects task completion, efficiency, and failure behavior [32, 23, 9]. The practical question is how far a good result carries over. Does a model ranking hold when the harness changes? Does a good pairing hold when the task changes? Does the model vendor’s own harness settle the choice? A native harness is designed first for its vendor’s product, so it need not be the best way to use the model on every workload, while third-party harnesses such as OpenHands aim to serve models from many vendors. These questions come up whenever a team picks a harness for an existing model, upgrades the model inside an existing agent, or moves a working agent to a new application.先前的研究表明,框架的选择会影响任务完成度、效率和失败行为 [32, 23, 9]。实际问题在于,一个好的结果能在多大程度上推广。当框架改变时,模型排名是否依然成立?当任务改变时,好的组合是否依然有效?模型供应商自有的框架是否是最终选择?原生框架是首先为供应商自身产品设计的,因此未必是该模型在所有工作负载下的最佳使用方式,而 OpenHands 等第三方框架旨在服务来自多家供应商的模型。每当团队为现有模型选择框架、在现有智能体中升级模型,或将运行中的智能体迁移到新应用时,这些问题就会出现。
We compare model–harness pairings on TUA-Bench, ALE-CLI, and a 63-task non-H100 subset of Terminal-Bench 4, which cover general terminal use, professional workflows, and hard command-line tasks. Four configurable harnesses, OpenHands, DeepSeek Harness (DSH), PI, and openJiuwen, are each paired with Claude Opus 5, GPT-6 Astra, GLM-5.3, Kimi K3, and DeepSeek V4 Pro, and the native Codex–GPT and Claude Code–Claude pairings serve as references, for 66 configurations in total. Every harness uses high reasoning effort and its own context management, and we report the three benchmarks separately.我们比较了 TUA-Bench、ALE-CLI 和 Terminal-Bench 4 中 63 个非 H100 任务子集上的模型-框架组合,这些任务涵盖了通用终端使用、专业工作流和硬核命令行任务。四种可配置框架 OpenHands、DeepSeek Harness (DSH)、PI 和 openJiuwen 分别与 Claude Opus 5、GPT-6 Astra、GLM-5.3、Kimi K3 和 DeepSeek V4 Pro 配对,并以原生的 Codex–GPT 和 Claude Code–Claude 组合作为参考,总计 66 种配置。每个框架都使用高推理强度并拥有各自的上下文管理,我们分别报告了三个基准测试的结果。
The results show both shifting and persistent advantages. Claude beats GPT in OpenHands on Terminal-Bench but loses to it in the other three configurable harnesses, by as much as 30 points in PI. The best harness for Claude, GPT, GLM, and DeepSeek changes across benchmarks, whereas openJiuwen gives Kimi its best score on all three, and that lead comes from many tasks rather than a few outliers. Native pairings are mixed: Claude Code is Claude’s best harness on TUA-Bench and ALE-CLI but trails OpenHands on Terminal-Bench, and Codex never gives GPT its highest score. Cost varies as much as score. Spending more does not reliably buy a higher score, and the same model can cost several times more under one harness than under another.结果显示出既有变动又有持续的优势。在 Terminal-Bench 的 OpenHands 中,Claude 击败了 GPT,但在其他三个可配置框架中却输给了它,在 PI 中分差高达 30 分。Claude、GPT、GLM 和 DeepSeek 的最佳框架随基准测试而变,而 openJiuwen 在所有三个基准测试中都使 Kimi 获得了最佳分数,且这种领先源于大量任务而非少数离群值。原生组合表现不一:Claude Code 是 Claude 在 TUA-Bench 和 ALE-CLI 上的最佳框架,但在 Terminal-Bench 上却落后于 OpenHands;Codex 从未使 GPT 获得最高分。成本与分数一样波动巨大。投入更多并不一定能换取更高分数,同一个模型在不同框架下的成本可能相差数倍。
Matched trajectories help explain these differences. Models start almost all repairs themselves, so the deciding factor is often whether the harness returns a failure as feedback the model can use. A shell without a timeout turns a hung command into silence, and a stuck detector can end a run before a malformed call is fixed. A model that manages its own commands can do well with little scaffolding, as GPT does under PI, where it sets explicit timeouts on most of its shell calls. A model that makes more of these errors benefits from a harness that catches them, as Kimi does under openJiuwen. Many of the remaining failures happen at the very end, when the agent takes its own check as proof that the task is done.匹配的轨迹分析有助于解释这些差异。模型几乎都是自行启动所有修复工作,因此决定性因素通常在于框架是否将失败作为模型可用的反馈返回。没有超时的 Shell 会使挂起的命令变成死寂,而卡住的检测器可能会在格式错误的调用被修复前结束运行。能够管理自身命令的模型在精简脚手架下表现良好,正如 GPT 在 PI 下的表现,它对大多数 Shell 调用都设置了显式超时。犯此类错误较多的模型则受益于能捕捉错误的框架,正如 Kimi 在 openJiuwen 下的表现。许多剩余的失败发生在最后阶段,即智能体将自己的检查结果作为任务完成的证明时。
Our central claim is that the value of a harness depends on the model and the task. We contribute a cross-benchmark matrix of 66 configurations with scores and costs, evidence that model rankings, best harnesses, and native advantages change with the setting while some pairings persist, trajectory analyses that link these differences to how harnesses handle feedback, continuation, and completion, and implications for training data and harness design. We also release adapters that run all six harnesses on the three benchmarks, the evaluation and cost-accounting code, and all 6,204 scored trajectories in a common format (Appendix B).我们的核心观点是,框架的价值取决于模型和任务。我们贡献了一个包含 66 种配置的跨基准测试矩阵,提供了分数和成本数据;证明了模型排名、最佳框架和原生优势会随环境而变,同时某些组合具有持久性;通过轨迹分析将这些差异与框架处理反馈、延续和完成任务的方式联系起来,并探讨了对训练数据和框架设计的影响。我们还发布了适配器,可在三个基准测试上运行所有六种框架,并提供了评估和成本核算代码,以及所有 6,204 条统一格式的评分轨迹(附录 B)。
2 Related Work2 相关工作
Agent harnesses.智能体框架。
Most language-model agents run a loop in which the model reasons, calls a tool, and reads the result [31]. The harness is everything around this loop: the tools and how they are exposed [20, 30, 25], context and memory management [18], reusable skills [24, 12], planning and sub-agents, permission and sandbox rules, and the retry, timeout, and stopping policies that decide what happens when a step fails. OpenHands made many of these choices configurable in an open platform that serves models from many providers [26], while Agentless reached competitive results on software repair with a fixed pipeline and no autonomous loop [27]. Model vendors now ship their own coding agents, such as Codex [15] and Claude Code [1], alongside third-party harnesses such as OpenHands, PI [19], and DeepSeek Harness [4], and agent frameworks such as openJiuwen [17]. We compare existing harnesses under a common setup, without adding skills or memory beyond their defaults, rather than proposing a new one.大多数语言模型智能体运行一个循环,模型在此循环中进行推理、调用工具并读取结果 [31]。框架是围绕此循环的一切:工具及其暴露方式 [20, 30, 25]、上下文和内存管理 [18]、可重用技能 [24, 12]、规划和子智能体、权限和沙箱规则,以及决定步骤失败时如何处理的重试、超时和停止策略。OpenHands 在一个服务于多家供应商模型的开放平台中将许多此类选择配置化 [26],而 Agentless 在软件修复方面通过固定的流水线且无需自主循环取得了具有竞争力的结果 [27]。模型供应商现在推出了自己的编码智能体,如 Codex [15] 和 Claude Code [1],以及 OpenHands、PI [19] 和 DeepSeek Harness [4] 等第三方框架,以及 openJiuwen [17] 等智能体框架。我们是在通用设置下比较现有框架,而不添加超出其默认设置的技能或内存,而非提出一个新的框架。
Benchmarks and cost-aware evaluation.基准测试与成本感知评估。
Agent benchmarks now cover software repair [8], interactive environments [13], computer use [28], general terminal use [2], professional workflows [22], and hard command-line tasks [14]. The cited Terminal-Bench paper describes version 2.0, while our campaign uses a non-H100 subset of version 4, and our local task subsets and mean-reward conventions are not direct reproductions of upstream leaderboard results. Many leaderboards fix either the scaffold or the model, which leaves the interaction between the two unmeasured. Kapoor et al. [10] argue that agent evaluations should report cost alongside accuracy, and HAL runs models and scaffolds across nine benchmarks, reports both, and uses log analysis to expose shortcuts and tool-calling failures [9]. We follow this practice by pricing every configuration on a common basis.智能体基准测试目前涵盖软件修复 [8]、交互环境 [13]、计算机使用 [28]、通用终端使用 [2]、专业工作流 [22] 和硬核命令行任务 [14]。所引用的 Terminal-Bench 论文描述的是 2.0 版本,而我们的活动使用的是 4 版本的非 H100 子集,我们的本地任务子集和平均奖励惯例并非对上游排行榜结果的直接复制。许多排行榜要么固定脚手架,要么固定模型,这使得两者之间的交互未被衡量。Kapoor 等人 [10] 认为智能体评估应报告成本和准确性,HAL 在九个基准测试中运行模型和脚手架,报告两者,并使用日志分析来揭示捷径和工具调用失败 [9]。我们遵循这一做法,对每种配置进行统一计价。
Harness effects.框架效应。
Harness-Bench evaluates model–harness configurations on completion, process quality, efficiency, and failures, and finds that weaker models are more harness-sensitive and that output-contract violations are the largest failure class [32]. The Scaffold Effect reports harness-specific failure patterns and up to 40-fold differences in tokens per solved task, with small pass-rate changes [23]. The ALE-Claw analysis finds a larger spread across models than across harnesses and, in its tested settings, a lean harness that retains accuracy at lower cost [7]. We add a full cross of four configurable harnesses with five models on three benchmarks, include vendor-native pairings, and ask which advantages survive a change of task.Harness-Bench 在完成度、流程质量、效率和失败方面评估了模型-框架配置,发现较弱的模型对框架更敏感,且输出契约违规是最大的失败类别 [32]。The Scaffold Effect 报告了特定于框架的失败模式,以及在通过率差异很小的情况下,每个已解决任务的 Token 数量差异高达 40 倍 [23]。ALE-Claw 分析发现模型间的差异大于框架间的差异,且在其测试设置中,精简的框架能以更低的成本保持准确性 [7]。我们增加了四种可配置框架与五种模型在三个基准测试上的全交叉对比,包括供应商原生组合,并探讨了哪些优势在任务改变后依然存在。
Recovery, verification, and training.恢复、验证和训练。
Language agents can improve by reflecting on feedback from earlier attempts [21], but self-correction without external feedback is unreliable [6], and models often fail to verify their own outputs [5, 3]. Our trajectories show the same split: repairs succeed when the harness returns a usable signal, while final self-checks against self-built criteria often miss real errors. On the training side, Kim et al. [11] show that post-training with the harness in mind improves agents both in and out of distribution, while agents trained under a minimal harness degrade sharply when the tool environment shifts. Polar runs reinforcement learning through unmodified harnesses by proxying their model calls and reconstructing token-level trajectories, and its gains for the same model range from 0.6 points under the model’s own Qwen Code harness to 22.6 points under Codex [29]. We use matched trajectories to separate model-initiated, prompted, and system-performed steps before drawing implications for training data and harness design.语言智能体可以通过反思早期尝试的反馈来改进 [21],但没有外部反馈的自我修正不可靠 [6],且模型往往无法验证自己的输出 [5, 3]。我们的轨迹显示出同样的分歧:当框架返回可用的信号时,修复会成功;而根据自建标准进行的最终自检往往会漏掉真正的错误。在训练方面,Kim 等人 [11] 表明,在考虑框架的情况下进行后训练可以提高智能体在分布内和分布外的表现,而受训于极简框架的智能体在工具环境改变时性能会急剧下降。Polar 通过代理模型调用并重构 Token 级轨迹,在未经修改的框架上运行强化学习,其同一模型在不同框架下的收益范围从模型自身 Qwen Code 框架下的 0.6 分到 Codex 下的 22.6 分不等 [29]。我们利用匹配的轨迹在得出对训练数据和框架设计的影响之前,将模型启动、提示触发和系统执行的步骤进行了区分。
3 Experimental Setup3 实验设置
3.1 Configurations and task collections3.1 配置与任务集
The configurable grid contains reported entries. OpenHands [16], DSH [4], PI [19], and openJiuwen are each evaluated with the five models on all three task collections. Codex is evaluated only with GPT, and Claude Code only with Claude, adding six native references. Dashes in Table 1 denote unevaluated pairings.可配置网格包含 4×5×3=60 个报告条目。OpenHands [16]、DSH [4]、PI [19] 和 openJiuwen 分别与五种模型在所有三个任务集上进行评估。Codex 仅与 GPT 一起评估,Claude Code 仅与 Claude 一起评估,增加了六个原生参考。表 1 中的破折号表示未评估的组合。
The intended task-set sizes are 120 for TUA-Bench (TUA), 99 for ALE-CLI (ALE), and 63 for Terminal-Bench 4 (TB4). ALE uses the campaign’s local-Docker selection, and Terminal-Bench uses the shared non-H100 subset. The collections differ in workflow composition rather than forming orthogonal capability tests. All configurations use the same task identifiers.预期的任务集大小为:TUA-Bench (TUA) 120 个,ALE-CLI (ALE) 99 个,Terminal-Bench 4 (TB4) 63 个。ALE 使用了该活动的本地 Docker 选择,Terminal-Bench 使用了共享的非 H100 子集。这些集合在工作流组成上有所不同,而非形成正交的能力测试。所有配置使用相同的任务标识符。
Tasks affected by infrastructure failures were rerun. Each task counts once, using its last run for both reward and cost; a task without a valid outcome in that run receives zero, and partial rewards are retained. For openJiuwen–DeepSeek on ALE, image inputs in four image and computer-use tasks are served by DeepSeek V4.1 Flash, the provider’s standard fallback for image requests (Appendix A).受基础设施故障影响的任务已重新运行。每个任务计一次,使用其最后一次运行的结果同时计算奖励和成本;在该运行中没有有效结果的任务得分为零,保留部分奖励。对于 ALE 上的 openJiuwen–DeepSeek,四个图像和计算机使用任务中的图像输入由 DeepSeek V4.1 Flash 提供服务,这是该供应商针对图像请求的标准回退方案(附录 A)。
3.2 Harness configuration3.2 框架配置
We keep harness changes to a minimum, mainly what is needed to reach the models through a common endpoint. All models are served through OpenRouter and pinned to their first-party provider (Anthropic, OpenAI, Moonshot AI, DeepSeek, and Z.ai) with fallbacks disabled. Every harness requests high reasoning effort, although the same label need not imply the same thinking budget across harnesses. Sampling parameters are left at provider defaults, and context management, compaction, retries, and turn limits follow each harness’s native defaults (Appendix Table 5). Among the packaged harnesses, the one deliberate exception is OpenHands, whose context and output limits we set to 1M and 128K tokens because its defaults for a custom endpoint cap output at 16K. No configuration adds skills, MCP servers, memory, or custom prompts beyond its defaults. Harness tools are the native defaults; on ALE-CLI every harness also receives the benchmark’s fourteen computer-use tools. Time limits are the benchmarks’ own: 40 minutes per task for TUA-Bench, eight hours for Terminal-Bench, and the per-task limit of ALE-CLI (two hours for most tasks).我们将框架的更改保持在最低限度,主要是为了通过通用端点连接模型所需的更改。所有模型均通过 OpenRouter 提供服务,并锁定在其第一方供应商(Anthropic、OpenAI、Moonshot AI、DeepSeek 和 Z.ai),且禁用了回退功能。每个框架都要求高推理强度,尽管相同的标签在不同框架下并不一定意味着相同的思考预算。采样参数保留为供应商的默认值,上下文管理、压缩、重试和轮次限制遵循每个框架的原生默认值(附录表 5)。在打包的框架中,唯一刻意的例外是 OpenHands,我们将它的上下文和输出限制设置为 1M 和 128K Token,因为其自定义端点的默认输出上限为 16K。没有任何配置添加了超出其默认设置的技能、MCP 服务器、内存或自定义提示词。框架工具为原生默认值;在 ALE-CLI 上,每个框架还接收基准测试的十四个计算机使用工具。时间限制为基准测试自身的限制:TUA-Bench 每个任务 40 分钟,Terminal-Bench 为八小时,ALE-CLI 为每个任务的限制(大多数任务为两小时)。
openJiuwen [17] is an agent framework rather than a packaged coding agent and provides no official entry point for running these benchmarks. We therefore assembled a coding agent from its public harness API (v0.1.18), keeping the framework’s native components wherever it provides them: seven coding tools (file read, write, and edit; glob; directory listing; grep; and a shell), its task loop, its context compression, and its security and model-anomaly rails. Skills, persistent memory, task planning, and sub-agents are disabled. On TUA-Bench and Terminal-Bench, a small added rail reports the remaining time limit before each model call. The same composition is used for every model and benchmark, without model- or task-specific prompts or tuning.openJiuwen [17] 是一个智能体框架,而不是一个打包好的编码智能体,且没有提供运行这些基准测试的官方入口。因此,我们利用其公开的框架 API (v0.1.18) 组装了一个编码智能体,并在其提供原生组件的地方保留了这些组件:七个编码工具(文件读取、写入和编辑;glob;目录列表;grep;以及 Shell)、其任务循环、上下文压缩,以及安全和模型异常轨道。技能、持久内存、任务规划和子智能体均已禁用。在 TUA-Bench 和 Terminal-Bench 上,添加了一个小轨道,在每次模型调用前报告剩余时间限制。同样的组成用于每个模型和基准测试,没有特定于模型或任务的提示词或调整。
3.3 Recorded reward and empirical fit3.3 记录的奖励与经验契合度
For benchmark with intended task set and size , we report对于具有预期任务集 𝒯b 和大小 Nb 的基准测试 bb,我们报告
| (1) |
TUA and ALE allow partial credit, while Terminal-Bench is binary; we do not combine the three rewards into an overall score.TUA 和 ALE 允许部分得分,而 Terminal-Bench 是二元的;我们没有将三个奖励组合成总分。
We use empirical fit to describe which available harness has the highest recorded reward for a model and task collection:我们使用经验契合度(empirical fit)来描述对于给定的模型和任务集,哪个可用框架具有最高的记录奖励:
| (2) |
where contains only evaluated pairings. All score differences below are points on the 0–100 reward scale.其中 ℋm,b 仅包含已评估的组合。以下所有分数差异均为 0-100 奖励量表上的分值。
3.4 Cost and trajectory analysis3.4 成本与轨迹分析
Cost is the agent-model API cost in USD at OpenRouter prices, including auxiliary model calls made by the harness and excluding evaluator calls. Costs, model-call counts, token counts, and agent time are taken from the same last run of each task that determines its reward. The trajectory analyses in Section 5 compare the final scored runs of the same task and model under different harnesses.成本是以 OpenRouter 价格计算的美元智能体模型 API 成本,包括框架进行的辅助模型调用,不包括评估器调用。成本、模型调用次数、Token 数量和智能体时间均取自决定其奖励的每个任务的最后一次运行。第 5 节中的轨迹分析比较了同一任务和模型在不同框架下的最终评分运行。
4 Results4 结果
Table 1 reports the rewards of all 66 configurations, and Figure 1 places them against their cost per task.表 1 报告了所有 66 种配置的奖励,图 1 将它们与每个任务的成本进行了对比。
| Benchmark | Model | OpenHands | DSH | PI | openJiuwen | Codex | Claude Code |
|---|---|---|---|---|---|---|---|
| TUA-Bench | Claude Opus 5 | 0.6523 | 0.5884 | 0.5821 | 0.6539 | — | 0.6889 |
| GPT-6 Astra | 0.6101 | 0.6432 | 0.6538 | 0.6635 | 0.6368 | — | |
| GLM-5.3 | 0.6286 | 0.5616 | 0.5357 | 0.6301 | — | — | |
| Kimi K3 | 0.5054 | 0.5838 | 0.5878 | 0.6439 | — | — | |
| DeepSeek V4 Pro | 0.5649 | 0.5193 | 0.5758 | 0.6259 | — | — | |
| ALE-CLI | Claude Opus 5 | 0.5314 | 0.4348 | 0.5022 | 0.5127 | — | 0.5428 |
| GPT-6 Astra | 0.5386 | 0.4902 | 0.5846 | 0.5671 | 0.5630 | — | |
| GLM-5.3 | 0.5168 | 0.4613 | 0.4775 | 0.4830 | — | — | |
| Kimi K3 | 0.3915 | 0.4172 | 0.4802 | 0.5494 | — | — | |
| DeepSeek V4 Pro | 0.5120 | 0.4094 | 0.4772 | 0.5083 | — | — | |
| Terminal-Bench 4 | Claude Opus 5 | 0.5714 | 0.3492 | 0.3016 | 0.4127 | — | 0.4921 |
| GPT-6 Astra | 0.4921 | 0.5238 | 0.6032 | 0.5397 | 0.5556 | — | |
| GLM-5.3 | 0.4127 | 0.4286 | 0.3175 | 0.4127 | — | — | |
| Kimi K3 | 0.1111 | 0.1746 | 0.1111 | 0.2857 | — | — | |
| DeepSeek V4 Pro | 0.0317 | 0.0952 | 0.0635 | 0.0794 | — | — |
4.1 Model–Harness Interactions and Native Pairings4.1 模型-框架交互与原生组合
On Terminal-Bench 4, Claude records in OpenHands and GPT records , a Claude advantage of 7.94 points. DSH reverses the ordering, with for Claude and for GPT. PI records and , respectively, while openJiuwen records and . The Claude-minus-GPT differences are , , , and points. Thus the same models yield opposite rankings depending on the harness.在 Terminal-Bench 4 上,Claude 在 OpenHands 中记录为 36/63,GPT 记录为 31/63,Claude 领先 7.94 分。DSH 逆转了顺序,Claude 为 22/63,GPT 为 33/63。PI 分别记录为 19/63 和 38/63,而 openJiuwen 分别记录为 26/63 和 34/63。Claude 减去 GPT 的差异分别为 +7.94、−17.46、−30.16 和 −12.70 分。因此,相同的模型根据框架的不同会产生相反的排名。
The reversal is especially clear when comparing OpenHands with PI on the same Terminal-Bench 4 task set. Claude drops from 57.14% with OpenHands to 30.16% with PI, whereas GPT rises from 49.21% to 60.32%, shifting the Claude-minus-GPT gap by 38.09 percentage points. This contrast shows that the observed model ordering is not simply preserved across harnesses.这种逆转在同一 Terminal-Bench 4 任务集上比较 OpenHands 和 PI 时尤为明显。Claude 从 OpenHands 的 57.14% 下降到 PI 的 30.16%,而 GPT 从 49.21% 上升到 60.32%,使 Claude 减去 GPT 的差距变化了 38.09 个百分点。这种对比表明,观察到的模型排序并不能简单地在框架间保持一致。
Table 2 compares each native pairing with the strongest evaluated alternative using the same model. With Claude, Claude Code leads the best alternative on TUA and ALE, by 3.50 and 1.14 points, whereas OpenHands leads Claude Code on Terminal-Bench by 7.94 points. For GPT, openJiuwen exceeds Codex by 2.67 points on TUA, while PI exceeds Codex by 2.15 points on ALE and 4.76 points on Terminal-Bench. Native provenance therefore does not consistently identify the best harness.表 2 比较了每个原生组合与使用相同模型的最强评估替代方案。对于 Claude,Claude Code 在 TUA 和 ALE 上领先最佳替代方案 3.50 和 1.14 分,而在 Terminal-Bench 上 OpenHands 领先 Claude Code 7.94 分。对于 GPT,openJiuwen 在 TUA 上比 Codex 高出 2.67 分,而 PI 在 ALE 上比 Codex 高出 2.15 分,在 Terminal-Bench 上高出 4.76 分。因此,原生血统并不能始终确定最佳框架。
| Benchmark | Native pair | Score | Best alternative | Score | |
|---|---|---|---|---|---|
| TUA-Bench | CC–Claude | 0.6889 | openJiuwen | 0.6539 | -3.50 |
| TUA-Bench | Codex–GPT | 0.6368 | openJiuwen | 0.6635 | +2.67 |
| ALE-CLI | CC–Claude | 0.5428 | OpenHands | 0.5314 | -1.14 |
| ALE-CLI | Codex–GPT | 0.5630 | PI | 0.5846 | +2.15 |
| Terminal-Bench 4 | CC–Claude | 0.4921 | OpenHands | 0.5714 | +7.94 |
| Terminal-Bench 4 | Codex–GPT | 0.5556 | PI | 0.6032 | +4.76 |
4.2 Task-Dependent Fit4.2 任务依赖型契合度
The highest-scoring harness changes across collections for four of five models (Table 3). GPT changes from openJiuwen on TUA-Bench to PI on ALE-CLI and Terminal-Bench; GLM and DeepSeek change from openJiuwen to OpenHands to DSH, while Claude changes from Claude Code on TUA-Bench and ALE-CLI to OpenHands on Terminal-Bench. Kimi is the persistent pairing: openJiuwen scores 64.39%, 54.94%, and 28.57% on the three collections, leading the strongest observed alternatives by 5.61, 6.91, and 11.11 percentage points. The changing winners and one stable favorable pairing both argue for evaluating fit in the intended task setting.五个模型中有四个模型的最高分框架会随集合而变(表 3)。GPT 从 TUA-Bench 上的 openJiuwen 变为 ALE-CLI 和 Terminal-Bench 上的 PI;GLM 和 DeepSeek 从 openJiuwen 变为 OpenHands 再变为 DSH,而 Claude 从 TUA-Bench 和 ALE-CLI 上的 Claude Code 变为 Terminal-Bench 上的 OpenHands。Kimi 是持续表现良好的组合:openJiuwen 在三个集合上的得分分别为 64.39%、54.94% 和 28.57%,领先最强观察替代方案 5.61、6.91 和 11.11 个百分点。不断变化的获胜者和一种稳定的有利组合都支持在预期的任务环境中评估契合度。
The Kimi advantage is not attributable to a single outlier task. Against the strongest alternative harness in each collection (PI on TUA-Bench and ALE-CLI, and DSH on Terminal-Bench), openJiuwen is higher, tied, and lower on 22/85/13, 25/61/13, and 8/54/1 paired tasks, respectively (Figure 2). Removing the three largest positive task gaps still leaves mean advantages of 3.11, 3.88, and 6.35 points. The ALE grouping further localizes the effect: openJiuwen leads PI by 24.83 points over 19 life-science tasks and by 11.99 points over 12 business/finance tasks, but trails by 2.32 points over 18 computing/math tasks. Thus the aggregate advantage is broad across tasks but not universal across domains.Kimi 的优势并非归因于单个离群任务。在每个集合的最强替代框架(TUA-Bench 和 ALE-CLI 上的 PI,以及 Terminal-Bench 上的 DSH)对比中,openJiuwen 在 22/85/13、25/61/13 和 8/54/1 对任务中分别表现更高、持平或更低(图 2)。剔除三个最大的正向任务差距后,平均优势依然分别为 3.11、3.88 和 6.35 分。ALE 分组进一步定位了这种效应:openJiuwen 在 19 个生命科学任务中比 PI 领先 24.83 分,在 12 个商业/金融任务中领先 11.99 分,但在 18 个计算/数学任务中落后 2.32 分。因此,这种总体优势在任务间广泛存在,但并非在所有领域都通用。
| Model | TUA-Bench | ALE-CLI | Terminal-Bench 4 |
|---|---|---|---|
| Claude Opus 5 | Claude Code | Claude Code | OpenHands |
| GPT-6 Astra | openJiuwen | PI | PI |
| GLM-5.3 | openJiuwen | OpenHands | DSH |
| Kimi K3 | openJiuwen | openJiuwen | openJiuwen |
| DeepSeek V4 Pro | openJiuwen | OpenHands | DSH |
4.3 Performance and Resource Use4.3 性能与资源使用
Performance and cost.性能与成本。
Figure 1 shows benchmark-dependent performance–cost trade-offs across model–harness configurations. TUA-Bench and ALE-CLI offer several intermediate trade-offs, whereas Terminal-Bench 4 shows a larger performance gap between the lowest recorded-cost configurations and the highest-scoring ones. Higher cost does not consistently yield better performance, and changing the harness can alter both score and cost for the same model. On Terminal-Bench 4, GPT-6 Astra scores 60.32% with PI at $4.66 per task but 52.38% with DSH at $19.94 per task, while PI–Claude costs $20.28 per task for 30.16%. These patterns support evaluating complete configurations in their target task setting.图 1 显示了跨模型-框架配置的基准测试依赖型性能-成本权衡。TUA-Bench 和 ALE-CLI 提供了几种中间权衡,而 Terminal-Bench 4 显示出最低记录成本配置与最高分配置之间存在更大的性能差距。更高的成本并不总是带来更好的性能,改变框架可以同时改变同一模型的分数和成本。在 Terminal-Bench 4 上,GPT-6 Astra 在 PI 下以每个任务 4.66 美元的价格获得 60.32% 的得分,但在 DSH 下以每个任务 19.94 美元的价格仅获得 52.38%,而 PI–Claude 以每个任务 20.28 美元的价格获得 30.16%。这些模式支持在目标任务环境中评估完整的配置。
Process efficiency.流程效率。
Same-model comparisons reveal different resource-use profiles across harnesses. Lower costs coincide with fewer model calls and fewer uncached input tokens, even when completion-token use increases (Appendix Figure 6). On ALE-CLI, Claude Opus 5 costs $323 under PI and $498 under OpenHands, with 3,888 versus 4,472 model calls and 119M versus 184M uncached input tokens, although it generates more completion tokens under PI (2.4M versus 2.1M). On Terminal-Bench 4, GPT-6 Astra makes 2,560 calls with 110M uncached input tokens under PI, compared with 11,879 calls and 673M under DSH. The harnesses also differ in how much context they reuse: openJiuwen serves 94–99% of its input tokens from cache, compared with 49–77% for the other harnesses (Appendix Figure 8). Trajectory length alone is insufficient to judge efficiency: solved tasks take more model calls than failed ones in 18 of 20 configurations on TUA-Bench and 17 of 20 on Terminal-Bench 4, but in only 1 of 21 on ALE-CLI, and agent time follows the same pattern (Appendix Figure 9).同一模型的比较揭示了跨框架的不同资源使用概况。较低的成本通常伴随着较少的模型调用和较少的未缓存输入 Token,即使完成 Token 的使用量增加(附录图 6)。在 ALE-CLI 上,Claude Opus 5 在 PI 下的成本为 323 美元,在 OpenHands 下为 498 美元,模型调用次数分别为 3,888 次和 4,472 次,未缓存输入 Token 分别为 1.19 亿和 1.84 亿,尽管它在 PI 下生成的完成 Token 更多(240 万对 210 万)。在 Terminal-Bench 4 上,GPT-6 Astra 在 PI 下进行了 2,560 次调用,使用 1.1 亿个未缓存输入 Token,而在 DSH 下则进行了 11,879 次调用,使用了 6.73 亿个。框架在重用上下文的程度上也存在差异:openJiuwen 从缓存中提供 94-99% 的输入 Token,而其他框架为 49-77%(附录图 8)。仅凭轨迹长度不足以判断效率:在 TUA-Bench 的 20 种配置中有 18 种、Terminal-Bench 4 的 20 种中有 17 种,已解决的任务比失败的任务需要更多的模型调用,但在 ALE-CLI 的 21 种配置中仅有 1 种如此,智能体时间也遵循同样的模式(附录图 9)。
5 Trajectory Analysis and Case Studies5 轨迹分析与案例研究
5.1 Feedback and Recovery5.1 反馈与恢复
We coded every actionable failure signal and the agent’s response in ten same-task, same-model TB4 pairs (OpenHands vs. PI, all five models; 192 events in final scored attempts), plus six Kimi pairs contrasting openJiuwen with PI, and checked the resulting mechanisms against all final attempts on the three benchmarks. Almost all responses were model-initiated (180 of 192). Diagnosis or a targeted patch was the most common response (69%), and it resolved the signal in 116 of these 133 cases; strategy changes were rarer but always resolved the signal (16), and repetition was rare (11 events, 7 of them in one run). Runs that passed answered feedback with diagnosis or repair more often than runs that failed (81% vs. 56%) and almost never repeated themselves (1% vs. 11%). The decisive difference, however, was usually not whether the model could repair an error but whether the harness returned the failure as usable feedback. OpenHands ends a run after repeated identical failing actions: this ended 55 runs, 48 of them Kimi re-issuing an edit call without its required content argument, and only one of these runs scored above zero (on TB4 payments-pipeline-fix, Kimi completed its design under OpenHands, then re-issued one malformed edit four times and was stopped with no code written, while the same design passed under PI and openJiuwen). PI’s shell has no default timeout, so 34 PI runs on TB4 and TUA sat blocked in a final command that never returned and produced no signal at all; the other harnesses bound commands by default (see the matched case below). PI also ends a run when a turn is cut short by the output cap, whereas OpenHands continues and openJiuwen re-prompts the model to continue with its partial reasoning kept (100 runs resumed, 48 of which went on to score above zero). Of openJiuwen’s harness prompts, only this resumption was decisive in the pairs we read (2 of 6); its request to re-check all requirements before finishing triggered extra testing but did not decide any outcome. When the decisive signal came from the agent’s own test, failing runs in both harnesses tended to dismiss or skip it. The fit is model-specific rather than a uniform ranking: GPT-6, which sets explicit timeouts on 56–67% of its PI shell calls, obtains its best TB4 and ALE scores under PI’s minimal scaffold, while Kimi, penalized by the OpenHands editor and by PI’s unbounded and non-resuming behavior, scores highest under openJiuwen on all three benchmarks. Turns cut off by provider stream errors (25 of Kimi’s 62 PI runs on TB4) and sandbox stalls are scored as failures; we attribute them to harness resilience rather than model behavior.我们对十个相同任务、相同模型的 TB4 配对(OpenHands 对比 PI,所有五个模型;最终评分尝试中的 192 个事件)中的每一个可操作失败信号和智能体响应进行了编码,外加六个对比 openJiuwen 与 PI 的 Kimi 配对,并针对三个基准测试上的所有最终尝试检查了所得机制。几乎所有的响应都是模型启动的(192 个中的 180 个)。诊断或针对性补丁是最常见的响应(69%),并在这些 133 个案例中的 116 个中解决了信号;策略改变较少见但总是能解决信号(16 个),重复则很少见(11 个事件,其中 7 个在一次运行中)。通过的运行比失败的运行更频繁地以诊断或修复来响应反馈(81% 对 56%),并且几乎从不重复自己(1% 对 11%)。然而,决定性的差异通常不在于模型能否修复错误,而在于框架是否将失败作为可用反馈返回。OpenHands 在重复出现相同的失败动作后结束运行:这导致了 55 次运行终止,其中 48 次是 Kimi 在没有内容参数的情况下重复发出编辑调用,且这些运行中只有一次得分高于零(在 TB4 payments-pipeline-fix 上,Kimi 在 OpenHands 下完成了设计,然后重复了四次格式错误的编辑,在没有编写任何代码的情况下被停止,而相同的设计在 PI 和 openJiuwen 下通过了)。PI 的 Shell 没有默认超时,因此 TB4 和 TUA 上的 34 次 PI 运行在一个永远不会返回且没有产生任何信号的最终命令中被阻塞;其他框架默认绑定了命令(见下文匹配案例)。当轮次被输出上限截断时,PI 也会结束运行,而 OpenHands 会继续,openJiuwen 则提示模型在保留其部分推理的情况下继续(100 次运行恢复,其中 48 次最终得分高于零)。在 openJiuwen 的框架提示中,只有这种恢复在我们阅读的配对中是决定性的(6 次中的 2 次);其在完成前重新检查所有要求的请求触发了额外的测试,但没有决定任何结果。当决定性信号来自智能体自身的测试时,两个框架中的失败运行往往会忽略或跳过它。这种契合度是特定于模型的,而非统一的排名:GPT-6 在其 56-67% 的 PI Shell 调用中设置了显式超时,在 PI 的精简脚手架下获得了最佳 TB4 和 ALE 分数,而 Kimi 因 OpenHands 编辑器和 PI 的无界及不恢复行为而受损,在所有三个基准测试中均在 openJiuwen 下得分最高。因供应商流错误(Kimi 在 TB4 上 62 次 PI 运行中的 25 次)和沙箱停滞而被截断的轮次被计为失败;我们将其归因于框架的弹性而非模型行为。
Matched recovery case.匹配的恢复案例。
Kimi K3 passed the TUA task 056-move-textbox-left under openJiuwen (reward 1) and failed it under PI (reward 0), although both runs hit the same bug (Figure 3). The model piped a GIMP script into gimp -i -b - without a closing (gimp-quit 0), which leaves GIMP waiting for input indefinitely. Under PI, this was the model’s first GIMP call after three setup commands. PI’s shell has no default timeout and the model set none, so the call never returned: the run received no further signal and ended at the 40-minute deadline with no output file. Under openJiuwen, two earlier GIMP attempts crashed and the errors came back to the model, which moved its script into a file and simplified it. A third attempt used the same construct and hung, but the shell’s 300 s limit returned it as a timeout. The model then diagnosed the cause itself (“the script doesn’t call gimp-quit”), found that the output image had already been written, and verified it pixel by pixel (canvas size, background color, and the text now on the left). When it declared completion, the harness’s re-check prompt led to one more validation, which passed; the run took 11 minutes. The harness supplied the signal and the model supplied the recovery: openJiuwen’s bounded shell turned the hang into feedback, while PI’s unbounded shell turned the same hang into silence. Because the PI run never received feedback, its failure is not evidence that Kimi cannot recover, and the openJiuwen run was partly fortunate that the hung call had already written its output.Kimi K3 在 openJiuwen 下通过了 TUA 任务 056-move-textbox-left(奖励 1),而在 PI 下失败(奖励 0),尽管两次运行都遇到了相同的错误(图 3)。模型将一个 GIMP 脚本通过管道传输到 gimp -i -b - 中,而没有包含关闭命令 (gimp-quit 0),这导致 GIMP 无限期地等待输入。在 PI 下,这是模型在三个设置命令后的第一次 GIMP 调用。PI 的 Shell 没有默认超时,模型也没有设置超时,因此调用从未返回:运行没有收到进一步的信号,并在 40 分钟截止日期时结束,没有输出文件。在 openJiuwen 下,两次早期的 GIMP 尝试崩溃了,错误返回给模型,模型将脚本移动到一个文件中并进行了简化。第三次尝试使用了相同的结构并挂起,但 Shell 的 300 秒限制将其作为超时返回。模型随后自行诊断了原因(“脚本没有调用 gimp-quit”),发现输出图像已经写入,并逐像素进行了验证(画布大小、背景颜色以及现在位于左侧的文本)。当它宣布完成时,框架的重新检查提示导致了又一次验证,并顺利通过;运行耗时 11 分钟。框架提供了信号,模型提供了恢复:openJiuwen 的有界 Shell 将挂起转化为反馈,而 PI 的无界 Shell 将同样的挂起转化为死寂。因为 PI 运行从未收到反馈,其失败并不能证明 Kimi 无法恢复,且 openJiuwen 运行的部分成功是因为挂起的调用已经写入了输出。
5.2 Preserving Progress and Completing Deliverables5.2 保持进度与完成交付物
We inspected all 45 failed Terminal-Bench 4 tasks for openJiuwen with Kimi K3 and found that the bottleneck lies at the end of the trajectory rather than in intermediate progress. Intermediate state is largely preserved: openJiuwen’s context compression was triggered in only 1 of 63 Terminal-Bench 4 tasks, a rate we cross-checked on 120 TUA-Bench tasks and again observed only once. In the sole Terminal-Bench 4 case, layout-config-recreation, compression reduced 1,450 messages to three (834k to 7.8k tokens) while preserving the deliverable path, measured scores, rejected alternatives, and an explicit resume point.我们检查了 openJiuwen 与 Kimi K3 下所有 45 个失败的 Terminal-Bench 4 任务,发现瓶颈在于轨迹的末尾,而不是中间进度。中间状态在很大程度上得到了保留:openJiuwen 的上下文压缩仅在 63 个 Terminal-Bench 4 任务中的 1 个中被触发,我们在 120 个 TUA-Bench 任务上交叉检查了这一比率,也仅观察到一次。在唯一的 Terminal-Bench 4 案例 layout-config-recreation 中,压缩将 1,450 条消息减少为 3 条(约 834k 到约 7.8k Token),同时保留了交付路径、测量分数、拒绝的替代方案和显式的恢复点。
What is missing instead is a reliable mechanism for verifying completion. Of the 45 failures, 35 ended with a final report, and our review of each one found that all 35 state that every specified requirement has been verified (Figure 4). Three did not lack a signal: the agent observed a discrepancy while self-checking but attributed it to a cause outside the deliverable, namely a defect in its own test harness, a fix already applied in the current run, or pre-existing upstream behavior, and stopped treating it as unresolved. This is a characteristic self-verification failure [5, 3]; in all three, the item dismissed is a test the grader subsequently failed.缺失的是一种可靠的完成验证机制。在 45 个失败中,35 个以最终报告结束,我们对每一份报告的审查发现,所有 35 份报告都声明每项指定要求已得到验证(图 4)。有三个任务并不缺乏信号:智能体在自检时观察到了差异,但将其归因于交付物之外的原因,即其自身测试框架中的缺陷、当前运行中已应用的修复或预先存在的上游行为,并停止将其视为未解决。这是一种典型的自验证失败 [5, 3];在这三个案例中,被驳回的项目都是评分器随后判定失败的测试。
The failure is structural. No harness exposes the acceptance criterion to the agent during the run, so every configuration must construct its own, and the evidence a final check rests on is therefore produced by the agent itself. The 35 self-certified reports show that checking cannot substitute for supplying the criterion against which to check. Nor is the pattern unique to openJiuwen: on layout-config-recreation, PI with the same model failed the same two tests.这种失败是结构性的。没有任何框架在运行期间向智能体公开验收标准,因此每个配置都必须构建自己的标准,最终检查所依据的证据因此是由智能体自身产生的。35 份自认证报告表明,检查不能代替提供检查所依据的标准。这种模式并非 openJiuwen 所独有:在 layout-config-recreation 上,使用相同模型的 PI 也未能通过同样的两个测试。
Matched progress-to-delivery case.匹配的进度到交付案例。
Terminal-Bench 4’s retro-console-soc requires a synthesizable 8-bit game-console SoC whose simulated video output must match the reference frame pixel by pixel. The task ships only a test ROM, so both configurations had to construct their own acceptance criterion; what separates them is how they used it. On Kimi K3, openJiuwen scores 0.00 and DSH scores 1.00 (Figure 5).Terminal-Bench 4 的 retro-console-soc 需要一个可综合的 8 位游戏机 SoC,其模拟视频输出必须逐像素匹配参考帧。该任务仅提供测试 ROM,因此两个配置都必须构建自己的验收标准;将它们分开的是它们如何使用该标准。在 Kimi K3 上,openJiuwen 得分为 0.00,DSH 得分为 1.00(图 5)。
Both drove their measured mismatch to zero, openJiuwen after genuine repairs that cut it by more than two orders of magnitude (Figure 5(a)). It did not close the remaining gap, however, but moved the comparison, holding the RTL output at one frame while advancing its own model to another, and read the resulting zero as proof of pixel-exactness. A final confirmation step then reused the same criterion and returned no new issues; the final report asserted pixel-perfect output. Comparing the submitted framebuffer against the withheld reference, the grader rejected precisely that property (Figure 5(b)).两者都将其测量的差异驱动至零,openJiuwen 在经过将差异缩小两个数量级以上的真正修复后达到了这一点(图 5(a))。然而,它并没有消除剩余的差距,而是移动了比较对象,在保持 RTL 输出在某一帧的同时推进其自身模型到另一帧,并将由此产生的零读取为像素精确的证明。随后的最终确认步骤重用了相同的标准,没有返回新的问题;最终报告断言输出是像素完美的。将提交的帧缓冲区与保留的参考进行比较,评分器拒绝的正是该属性(图 5(b))。
DSH reached zero by removing the defect itself and passed every test, on a longer trajectory than openJiuwen’s. Trajectory length therefore does not separate the two; what separates them is whether the final zero was obtained by repairing the deliverable or by changing what was compared.DSH 通过自身消除缺陷达到了零,并通过了每一项测试,其轨迹比 openJiuwen 的更长。因此,轨迹长度并不能区分两者;区分它们的是最终的零是通过修复交付物获得的,还是通过改变比较对象获得的。
6 Implications for Data, Training, and Harness Design6 对数据、训练和框架设计的影响
What a trajectory teaches.轨迹教会了我们什么。
A scored trajectory is not a uniform record of model behavior. Each consequential step has an initiator: the model acting on its own, the model acting after a harness message, or the harness acting on the model’s behalf. This label changes what the step can teach. Model-initiated repair is the clearest training signal. Almost all responses to failure signals in the Terminal-Bench pairs were model-initiated (Section 5.1), and on payments-pipeline-fix the same Kimi K3 run under PI diagnosed and fixed four self-detected failures. Harness-performed operations are different. When OpenHands’ stuck detector ends a run after repeated malformed edit calls, the model receives no final message, and when a PI command never returns, the trace ends without any signal. Such endings record the outcome of the configuration, but they are weak evidence about what the model would have done with feedback. Prompted decisions need the most care. On TUA task 042-black-sale-coffee-makers, GPT-6 Astra hit a Google reCAPTCHA under openJiuwen, PI and DSH and, in all three, stopped and asked the user to complete it. PI and DSH ended there with reward 0. openJiuwen, whose completion rail returns a generic “Continue working on the original task” message when a round ends without a completion marker, sent that message twice. The model then installed an offline speech recognizer, transcribed the audio challenge, passed the check and completed the task (reward 1). The continuation message fired on only 9 of 120 GPT TUA tasks, and this was the only one of the 9 where it changed the outcome relative to both PI and DSH. The case shows that outcome reward alone is a poor filter for imitation data. The highest-reward trace here contains a prompted decision to defeat an anti-automation check, while the lower-reward traces contain the hand-back a deployment policy may prefer. The delivery cases show a related gap. On retro-console-soc and layout-config-recreation, openJiuwen–Kimi replaced the stated acceptance criterion with a check of its own and reported success against it (Section 5.2). The decision worth recording is therefore the choice of acceptance test, together with the evidence cited for completion, and not only the final artifact. These are proposals for how to annotate trajectories. We did not train on them.评分轨迹并非模型行为的统一记录。每个后果性步骤都有一个发起者:模型自主行动、模型在框架消息后行动,或框架代表模型行动。该标签改变了该步骤所能传授的内容。模型启动的修复是最清晰的训练信号。Terminal-Bench 配对中几乎所有对失败信号的响应都是模型启动的(第 5.1 节),在 payments-pipeline-fix 上,同一 Kimi K3 运行在 PI 下诊断并修复了四个自检出的失败。框架执行的操作则不同。当 OpenHands 的卡住检测器在重复出现格式错误的编辑调用后结束运行,模型没有收到最终消息;当 PI 命令从未返回,轨迹在没有任何信号的情况下结束。此类结束记录了配置的结果,但关于模型在有反馈的情况下会做什么,它们是薄弱的证据。提示触发的决策需要最谨慎的处理。在 TUA 任务 042-black-sale-coffee-makers 上,GPT-6 Astra 在 openJiuwen、PI 和 DSH 下遇到了 Google reCAPTCHA,并在所有三种情况下停止并要求用户完成它。PI 和 DSH 在此结束,奖励为 0。openJiuwen 的完成轨道在轮次结束而没有完成标记时返回通用的“继续处理原始任务”消息,它发送了两次该消息。模型随后安装了一个离线语音识别器,转录了音频挑战,通过了检查并完成了任务(奖励 1)。延续消息仅在 120 个 GPT TUA 任务中的 9 个中触发,这是 9 个中唯一一个相对于 PI 和 DSH 改变了结果的任务。该案例表明,仅凭结果奖励是模仿数据的不良过滤器。此处最高奖励的轨迹包含了一个击败反自动化检查的提示决策,而较低奖励的轨迹包含了部署策略可能更喜欢的交还。交付案例显示了相关的差距。在 retro-console-soc 和 layout-config-recreation 上,openJiuwen–Kimi 用其自身的检查替换了声明的验收标准,并据此报告了成功(第 5.2 节)。因此,值得记录的决策是验收测试的选择,连同引用的完成证据,而不仅仅是最终制品。这些是关于如何注释轨迹的建议。我们没有对此进行训练。
What to train and what to support at runtime.训练什么以及在运行时支持什么。
The traces separate behaviors that a generic harness message did not supply from failures that a harness default produced. Choosing an acceptance test that matches the task, and noticing when a self-built oracle has drifted from it, belong in the first group. openJiuwen asks the model to re-check every stated requirement before it finishes. This prompt fired on 54 of 63 Kimi Terminal-Bench tasks and on almost every TUA task, yet it did not decide the outcome in any matched pair we read. On retro-console-soc, the model spent seven more turns re-checking with the same self-built oracle and again reported pixel-exact output. The grader found 123 of 61440 pixels wrong. A reminder that does not change the evidence a model consults is unlikely to substitute for this judgment, which makes it a candidate for training on contrastive pairs such as the successful DSH run on the same task. Tool-argument adherence is a second candidate. Kimi’s repeated edit calls without required arguments ended most OpenHands stuck-detector runs, but the same model avoided them under openJiuwen’s separate write and edit tools. The agent RL framework Polar reports post-training gains that differ widely across harnesses for the same model, from 0.6 to 22.6 points [29], but we did not test training for our models. Other failures come from harness defaults and are cheaper to fix at runtime. These include bounded command timeouts that return a signal, argument errors that are returned to the model rather than silently ending the run, and continuation after a turn that stops early. The CAPTCHA case adds one requirement for continuation. A generic continue message cannot tell an unfinished step from one that should be escalated to a human. Continuation therefore needs a way for the model to report that a step requires a person, and a harness policy that respects that report. The broader implication is that no single model–harness pairing is the default choice. The highest-scoring harness changes across collections for four of five models (Table 1). Native provenance does not settle the choice either (Section 4.1). Claude Code leads the Claude comparisons on TUA and ALE, but OpenHands leads on Terminal-Bench by 7.94 points. Codex never records the highest GPT score; openJiuwen or PI exceeds it on each collection. A more natural practice is to select the model and harness for the benchmark and task at hand, and to evaluate each runtime support within that configuration. A configurable platform can support this practice. openJiuwen records the highest TUA score for four of five models and the highest Kimi score on all three collections, and its continuation, completion and budget behaviors are separate components that can be adjusted per configuration. Which support matters depends on a model’s habits rather than its overall strength: the most consequential continuation event involved GPT, while the tool-argument loop involved Kimi.轨迹区分了通用框架消息未能提供的行为与框架默认设置产生的失败。选择与任务匹配的验收测试,并注意自建预言机何时偏离该测试,属于第一组。openJiuwen 要求模型在完成前重新检查每项声明的要求。此提示在 63 个 Kimi Terminal-Bench 任务中的 54 个和几乎每个 TUA 任务中触发,但它在我们阅读的任何匹配配对中都没有决定结果。在 retro-console-soc 上,模型又花了七个轮次用相同的自建预言机进行重新检查,并再次报告了像素精确的输出。评分器发现 61440 个像素中有 123 个是错误的。一个不改变模型咨询证据的提醒不太可能取代这种判断,这使其成为在对比配对(如同一任务上成功的 DSH 运行)上进行训练的候选对象。工具参数遵循是第二个候选对象。Kimi 重复的缺少必要参数的编辑调用结束了大多数 OpenHands 卡住检测器的运行,但同一模型在 openJiuwen 的独立写入和编辑工具下避免了它们。智能体 RL 框架 Polar 报告称,同一模型在不同框架下的后训练收益差异巨大,从 0.6 到 22.6 分 [29],但我们没有测试模型的训练。其他失败来自框架默认设置,在运行时修复成本更低。这些包括返回信号的有界命令超时、返回给模型而不是静默结束运行的参数错误,以及轮次提前停止后的延续。CAPTCHA 案例为延续增加了一项要求。通用延续消息无法区分未完成的步骤和应该升级给人类处理的步骤。因此,延续需要一种方式让模型报告步骤需要人工干预,并需要一种尊重该报告的框架策略。更广泛的影响是,没有任何单一的模型-框架组合是默认选择。五个模型中有四个模型的最高分框架随集合而变(表 1)。原生血统也无法解决选择问题(第 4.1 节)。Claude Code 在 TUA 和 ALE 的 Claude 比较中领先,但 OpenHands 在 Terminal-Bench 上领先 7.94 分。Codex 从未记录最高 GPT 分数;openJiuwen 或 PI 在每个集合上都超过了它。更自然的实践是为当前的基准测试和任务选择模型和框架,并在该配置内评估每项运行时支持。可配置平台可以支持这种实践。openJiuwen 在五个模型中的四个上记录了最高 TUA 分数,并在所有三个集合上记录了最高 Kimi 分数,其延续、完成和预算行为是可以在每个配置中调整的独立组件。哪些支持重要取决于模型的习惯而非其整体强度:最严重的延续事件涉及 GPT,而工具参数循环涉及 Kimi。
| Observed behavior (initiator) | Data / training implication | Runtime harness implication |
|---|---|---|
| Kimi re-issues edit calls without required arguments until OpenHands’ stuck detector ends the run; the same model repairs failures under PI (TB4; M, then S) | Collect malformed call error corrected call; train argument adherence. Do not treat the system termination as a model failure to recover | Return argument errors as structured feedback and warn before terminating; offer separate write and edit tools |
| All three GPT runs hand a CAPTCHA to the user; only openJiuwen’s generic continue message leads to solving the audio challenge (TUA 042; M, then P) | Label prompted decisions; do not select imitation data by reward alone; keep policy-compliant hand-backs as positive examples | Scope continuation prompts; provide an explicit escalation channel for steps that need a human |
| Kimi substitutes its own acceptance check and reports success; the re-check round reuses the same oracle (TB4 retro-console-soc; M, then P) | Contrastive pairs (DSH success, same task) at the acceptance-test decision; train alignment of evidence with stated criteria | A generic re-check prompt is insufficient; expose checkable deliverable criteria where the task permits |
7 Limitations7 局限性
The study compares model–harness configurations on three fixed task subsets with one counted run per task. Model settings, tools, and execution budgets are not uniformly matched, so the observed differences do not isolate the causal effect of any single component, and run-to-run variance is not measured. The trajectory analyses rest on a small number of matched pairs, and the data and harness implications we draw from them are proposals rather than tested improvements.本研究在三个固定任务子集上比较了模型-框架配置,每个任务计一次运行。模型设置、工具和执行预算未统一匹配,因此观察到的差异不能隔离任何单一组件的因果效应,且未测量运行间的方差。轨迹分析基于少量匹配配对,我们从中得出的数据和框架影响是建议而非经过测试的改进。
8 Conclusion8 结论
Across 66 configurations, model rankings, the best harness for each model, and the standing of native pairings all depend on the task setting, while some pairings, such as openJiuwen with Kimi, stay ahead on all three benchmarks. Cost changes with the harness as much as score does, and matched trajectories tie much of this variation to how a harness returns failures, continues interrupted work, and decides when a task is finished. Model–harness fit is therefore a practical unit for agent evaluation and deployment. Identifying which harness components drive a given fit, and choosing configurations automatically for unseen tasks, are natural next steps.在 66 种配置中,模型排名、每个模型的最佳框架(harness)以及原生配对的表现都取决于任务设置,而像 openJiuwen 与 Kimi 这样的部分配对在所有三个基准测试中均保持领先。成本随框架的变化与分数的变化同样显著,匹配的轨迹将大部分差异归因于框架如何处理失败、如何继续中断的工作以及如何判断任务完成。因此,模型与框架的适配度是智能体评估和部署的实用单位。识别哪些框架组件推动了特定的适配度,并为未见任务自动选择配置,是接下来的自然研究方向。
References参考文献
- [1] (2026) Claude Code. Note: https://github.com/anthropics/claude-codeVersion 2.1.251 Cited by: §2. [1] Anthropic (2026) Claude Code. 注:https://github.com/anthropics/claude-code 版本 2.1.251 引用:§2.
- [2] (2026) TUA-Bench: a benchmark for general-purpose terminal-use agents. arXiv preprint arXiv:2606.28480. External Links: Link Cited by: §2. [2] S. Chen, L. Wang, X. Yang, Z. Liu, Y. Cong, Y. Ji, F. Zhou, X. Zhang, F. Yang, and B. Zeng (2026) TUA-Bench: a benchmark for general-purpose terminal-use agents. arXiv 预印本 arXiv:2606.28480. 外部链接:链接 引用:§2.
- [3] (2026) Learning to self-verify makes language models better reasoners. In Forty-third International Conference on Machine Learning, External Links: Link Cited by: §2, §5.2. [3] Y. Chen, Y. Wang, Y. Zhang, Z. Ye, Z. Cai, Y. Shi, Q. GU, H. Su, X. Cai, X. Wang, A. Zhang, and T. Chua (2026) Learning to self-verify makes language models better reasoners. 载于:第 43 届国际机器学习会议 (International Conference on Machine Learning), 外部链接:链接 引用:§2, §5.2.
- [4] (2026) DeepSeek Harness. Note: https://github.com/deepseek-ai/deepseek-harnessCampaign package: @deepseek-ai/dsh@0.1.1-rc.2 Cited by: §2, §3.1. [4] DeepSeek AI (2026) DeepSeek Harness. 注:https://github.com/deepseek-ai/deepseek-harness 封装包:@deepseek-ai/dsh@0.1.1-rc.2 引用:§2, §3.1.
- [5] (2024) A closer look at the self-verification abilities of large language models in logical reasoning. In Proceedings of the 2024 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (Volume 1: Long Papers), pp. 900–925. Cited by: §2, §5.2. [5] R. Hong, H. Zhang, X. Pang, D. Yu, and C. Zhang (2024) A closer look at the self-verification abilities of large language models in logical reasoning. 载于:2024 年北美计算语言学协会会议论文集:人类语言技术 (第 1 卷:长论文), 第 900–925 页. 引用:§2, §5.2.
- [6] (2023) Large language models cannot self-correct reasoning yet. arXiv preprint arXiv:2310.01798. External Links: Link Cited by: §2. [6] J. Huang, X. Chen, S. Mishra, et al. (2023) Large language models cannot self-correct reasoning yet. arXiv 预印本 arXiv:2310.01798. 外部链接:链接 引用:§2.
- [7] (2026) Does the harness matter? lessons from ALE-Claw on agents’ last exam. Note: https://agents-last-exam.org/blogs/harness-mattersPublished June 11, 2026 Cited by: §2. [7] Y. Huang and Y. Sun (2026) Does the harness matter? lessons from ALE-Claw on agents’ last exam. 注:https://agents-last-exam.org/blogs/harness-matters 发布于 2026 年 6 月 11 日 引用:§2.
- [8] (2023) SWE-bench: can language models resolve real-world GitHub issues?. arXiv preprint arXiv:2310.06770. External Links: Link Cited by: §2. [8] C. E. Jimenez, J. Yang, A. Wettig, et al. (2023) SWE-bench: can language models resolve real-world GitHub issues?. arXiv 预印本 arXiv:2310.06770. 外部链接:链接 引用:§2.
- [9] (2025) Holistic agent leaderboard: the missing infrastructure for AI agent evaluation. arXiv preprint arXiv:2510.11977. External Links: Link Cited by: §1, §2. [9] S. Kapoor, B. Stroebl, P. Kirgis, et al. (2025) Holistic agent leaderboard: the missing infrastructure for AI agent evaluation. arXiv 预印本 arXiv:2510.11977. 外部链接:链接 引用:§1, §2.
- [10] (2024) AI agents that matter. arXiv preprint arXiv:2407.01502. External Links: Link Cited by: §2. [10] S. Kapoor, B. Stroebl, Z. S. Siegel, et al. (2024) AI agents that matter. arXiv 预印本 arXiv:2407.01502. 外部链接:链接 引用:§2.
- [11] (2026) The interplay of harness design and post-training in LLM agents. arXiv preprint arXiv:2606.25447. External Links: Link Cited by: §2. [11] K. Kim, Y. Choi, S. Lee, S. Jun, D. Kim, and S. Park (2026) The interplay of harness design and post-training in LLM agents. arXiv 预印本 arXiv:2606.25447. 外部链接:链接 引用:§2.
- [12] (2026) MIND-Skill: quality-guaranteed skill generation via multi-agent induction and deduction. arXiv preprint arXiv:2605.08670. External Links: Link Cited by: §2. [12] Y. Li, M. Cai, Z. Xiao, W. Wang, Y. Deng, and B. An (2026) MIND-Skill: quality-guaranteed skill generation via multi-agent induction and deduction. arXiv 预印本 arXiv:2605.08670. 外部链接:链接 引用:§2.
- [13] (2023) AgentBench: evaluating LLMs as agents. arXiv preprint arXiv:2308.03688. External Links: Link Cited by: §2. [13] X. Liu, H. Yu, H. Zhang, et al. (2023) AgentBench: evaluating LLMs as agents. arXiv 预印本 arXiv:2308.03688. 外部链接:链接 引用:§2.
- [14] (2026) Terminal-Bench: benchmarking agents on hard, realistic tasks in command line interfaces. arXiv preprint arXiv:2601.11868. External Links: Link Cited by: §2. [14] M. A. Merrill, A. G. Shaw, N. Carlini, et al. (2026) Terminal-Bench: benchmarking agents on hard, realistic tasks in command line interfaces. arXiv 预印本 arXiv:2601.11868. 外部链接:链接 引用:§2.
- [15] (2026) Codex CLI. Note: https://github.com/openai/codexVersion 0.150.1 Cited by: §2. [15] OpenAI (2026) Codex CLI. 注:https://github.com/openai/codex 版本 0.150.1 引用:§2.
- [16] (2026) OpenHands: AI-driven development. Note: https://github.com/OpenHands/software-agent-sdkSoftware Agent SDK, openhands-tools 1.44.1 Cited by: §3.1. [16] OpenHands (2026) OpenHands: AI-driven development. 注:https://github.com/OpenHands/software-agent-sdk 软件智能体 SDK, openhands-tools 1.44.1 引用:§3.1.
- [17] (2026) openJiuwen. Note: https://github.com/openJiuwen-aiVersion 0.1.18 Cited by: §2, §3.2. [17] openJiuwen (2026) openJiuwen. 注:https://github.com/openJiuwen-ai 版本 0.1.18 引用:§2, §3.2.
- [18] (2023) MemGPT: towards LLMs as operating systems. arXiv preprint arXiv:2310.08560. External Links: Link Cited by: §2. [18] C. Packer, S. Wooders, K. Lin, et al. (2023) MemGPT: towards LLMs as operating systems. arXiv 预印本 arXiv:2310.08560. 外部链接:链接 引用:§2.
- [19] (2026) Pi: AI agent toolkit. Note: https://github.com/earendil-works/piCampaign version: v0.84.4 Cited by: §2, §3.1. [19] Pi contributors (2026) Pi: AI agent toolkit. 注:https://github.com/earendil-works/pi 封装版本:v0.84.4 引用:§2, §3.1.
- [20] (2023) Toolformer: language models can teach themselves to use tools. arXiv preprint arXiv:2302.04761. External Links: Link Cited by: §2. [20] T. Schick, J. Dwivedi-Yu, R. Dessì, et al. (2023) Toolformer: language models can teach themselves to use tools. arXiv 预印本 arXiv:2302.04761. 外部链接:链接 引用:§2.
- [21] (2023) Reflexion: language agents with verbal reinforcement learning. arXiv preprint arXiv:2303.11366. External Links: Link Cited by: §2. [21] N. Shinn, F. Cassano, E. Berman, et al. (2023) Reflexion: language agents with verbal reinforcement learning. arXiv 预印本 arXiv:2303.11366. 外部链接:链接 引用:§2.
- [22] (2026) Agents’ last exam. arXiv preprint arXiv:2606.05405. External Links: Link Cited by: §2. [22] Y. Sun, X. Han, W. Zhang, et al. (2026) Agents’ last exam. arXiv 预印本 arXiv:2606.05405. 外部链接:链接 引用:§2.
- [23] (2026) The scaffold effect in coding agents: harness choice as a hidden variable in coding-agent evaluation. arXiv preprint arXiv:2607.22585. External Links: Link Cited by: §1, §2. [23] N. Vats and O. Golev (2026) The scaffold effect in coding agents: harness choice as a hidden variable in coding-agent evaluation. arXiv 预印本 arXiv:2607.22585. 外部链接:链接 引用:§1, §2.
- [24] (2023) Voyager: an open-ended embodied agent with large language models. arXiv preprint arXiv:2305.16291. External Links: Link Cited by: §2. [24] G. Wang, Y. Xie, Y. Jiang, et al. (2023) Voyager: an open-ended embodied agent with large language models. arXiv 预印本 arXiv:2305.16291. 外部链接:链接 引用:§2.
- [25] (2024) Executable code actions elicit better LLM agents. arXiv preprint arXiv:2402.01030. External Links: Link Cited by: §2. [25] X. Wang, Y. Chen, L. Yuan, et al. (2024) Executable code actions elicit better LLM agents. arXiv 预印本 arXiv:2402.01030. 外部链接:链接 引用:§2.
- [26] (2024) OpenHands: an open platform for AI software developers as generalist agents. arXiv preprint arXiv:2407.16741. External Links: Link Cited by: §2. [26] X. Wang, B. Li, Y. Song, et al. (2024) OpenHands: an open platform for AI software developers as generalist agents. arXiv 预印本 arXiv:2407.16741. 外部链接:链接 引用:§2.
- [27] (2024) Agentless: demystifying LLM-based software engineering agents. arXiv preprint arXiv:2407.01489. External Links: Link Cited by: §2. [27] C. S. Xia, Y. Deng, S. Dunn, and L. Zhang (2024) Agentless: demystifying LLM-based software engineering agents. arXiv 预印本 arXiv:2407.01489. 外部链接:链接 引用:§2.
- [28] (2024) OSWorld: benchmarking multimodal agents for open-ended tasks in real computer environments. arXiv preprint arXiv:2404.07972. External Links: Link Cited by: §2. [28] T. Xie, D. Zhang, J. Chen, et al. (2024) OSWorld: benchmarking multimodal agents for open-ended tasks in real computer environments. arXiv 预印本 arXiv:2404.07972. 外部链接:链接 引用:§2.
- [29] (2026) Polar: agentic RL on any harness at scale. arXiv preprint arXiv:2605.24220. External Links: Link Cited by: §2, §6. [29] B. Xu, H. Zhang, S. Zhang, S. Han, M. Liu, J. Hu, S. Diao, Z. Jin, Y. Zou, M. Demoret, J. Kautz, and Y. Dong (2026) Polar: agentic RL on any harness at scale. arXiv 预印本 arXiv:2605.24220. 外部链接:链接 引用:§2, §6.
- [30] (2024) SWE-agent: agent-computer interfaces enable automated software engineering. arXiv preprint arXiv:2405.15793. External Links: Link Cited by: §2. [30] J. Yang, C. E. Jimenez, A. Wettig, et al. (2024) SWE-agent: agent-computer interfaces enable automated software engineering. arXiv 预印本 arXiv:2405.15793. 外部链接:链接 引用:§2.
- [31] (2022) ReAct: synergizing reasoning and acting in language models. arXiv preprint arXiv:2210.03629. External Links: Link Cited by: §2. [31] S. Yao, J. Zhao, D. Yu, et al. (2022) ReAct: synergizing reasoning and acting in language models. arXiv 预印本 arXiv:2210.03629. 外部链接:链接 引用:§2.
- [32] (2026) Harness-Bench: measuring harness effects across models in realistic agent workflows. arXiv preprint arXiv:2605.27922. External Links: Link Cited by: §1, §2. [32] Y. Yao, X. Tan, C. Liu, Y. Li, Z. Wang, W. Yu, Z. Tan, Y. Tian, G. Zhao, L. Sun, X. Zhang, and T. Yang (2026) Harness-Bench: measuring harness effects across models in realistic agent workflows. arXiv 预印本 arXiv:2605.27922. 外部链接:链接 引用:§1, §2.
Appendix A Run details附录 A 运行详情
Harnesses and models.框架与模型。
Table 5 lists the harness versions and their native tools, context management, and turn limits. TUA-Bench and Terminal-Bench run through Harbor v0.22.0 and ALE-CLI through its own runner. The OpenRouter model identifiers and pinned providers are anthropic/claude-opus-5 (Anthropic), openai/gpt-6-astra (OpenAI), moonshotai/kimi-k3 (Moonshot AI, FP4), deepseek/deepseek-v4-pro-0813 (DeepSeek), and z-ai/glm-5.3 (Z.ai, FP8).表 5 列出了各框架版本及其原生工具、上下文管理和轮次限制。TUA-Bench 和 Terminal-Bench 通过 Harbor v0.22.0 运行,ALE-CLI 则通过其自带的运行器运行。OpenRouter 模型标识符及固定服务商分别为:anthropic/claude-opus-5 (Anthropic)、openai/gpt-6-astra (OpenAI)、moonshotai/kimi-k3 (Moonshot AI, FP4)、deepseek/deepseek-v4-pro-0813 (DeepSeek) 以及 z-ai/glm-5.3 (Z.ai, FP8)。
| Harness | Version | Tools | Context management | Turn limit |
|---|---|---|---|---|
| OpenHands | SDK 1.44.1 | terminal, file editor, task tracker, think, finish | 1M-token window, no condensation | 500 steps; stuck detector |
| DSH | 0.1.1-rc.2 | 26 standard tools | native compaction at 80% of the window | none |
| PI | 0.84.4 | read, bash, edit, write | native compaction near the window limit | none |
| openJiuwen | 0.1.18 | read, write, edit, glob, list, grep, bash | native context compression | 8 outer rounds |
| Codex | 0.150.1 | native code-execution tool | native compaction (272K window) | none |
| Claude Code | 2.1.251 | 21 native tools | native auto-compaction (1M window) | none |
Task collections.任务集。
Terminal-Bench uses the 63-task non-H100 (CPU-only) subset of v4.0.0 (commit 452bf305c6da), and ALE-CLI uses 99 local-Docker tasks (commit 0b6465b13c85).Terminal-Bench 使用 v4.0.0(提交号 452bf305c6da)中 63 个非 H100(仅 CPU)的任务子集,ALE-CLI 使用 99 个本地 Docker 任务(提交号 0b6465b13c85)。
Reruns.重运行。
Tasks affected by infrastructure failures, such as environment start-up or Docker readiness failures and provider errors, were rerun. Each task counts its last run; a task without a verifier result in that run counts as zero.受基础设施故障(如环境启动或 Docker 就绪失败以及服务商错误)影响的任务已重新运行。每个任务计入其最后一次运行的结果;若该次运行中没有验证器结果,则计为零。
openJiuwen–DeepSeek on ALE-CLI.ALE-CLI 上的 openJiuwen–DeepSeek。
DeepSeek V4 Pro does not accept images, and the provider’s API serves image requests with DeepSeek V4.1 Flash. This applied to 343 calls in four image and computer-use tasks.DeepSeek V4 Pro 不接受图像,服务商 API 使用 DeepSeek V4.1 Flash 处理图像请求。这适用于四个图像和计算机使用任务中的 343 次调用。
Appendix B Code and data release附录 B 代码与数据发布
The code is available at https://github.com/liyix/finding-the-right-fit. It contains the adapters that run each of the six harnesses on the three benchmarks, the configuration used in this study (harness versions, OpenRouter routes pinned to first-party providers, reasoning effort, and time limits), and the scripts that select the final run of each task, reconcile costs with OpenRouter’s per-generation records, and produce the tables and figures in this paper.代码可在 https://github.com/liyix/finding-the-right-fit 获取。它包含在三个基准测试上运行六个框架中每一个的适配器、本研究中使用的配置(框架版本、固定为第一方服务商的 OpenRouter 路由、推理工作量和时间限制),以及用于选择每个任务最终运行结果、将成本与 OpenRouter 的每次生成记录进行核对,并生成本文表格和图表的脚本。
The data are available at https://huggingface.co/datasets/yixuanli97/finding-the-right-fit. They contain a per-task results table and one trajectory for each of the 6,204 scored runs, converted from each harness’s native logs into a common chat format with reward, cost, token usage, and agent time. Of these runs, 6,067 include the full model–tool conversation; the remaining 137, mostly runs whose environment never started, carry results only. Secrets and host paths are removed, very long outputs are truncated, and no verifier files or reference data are included. The data are released for analysis of agent behavior and harness comparison under CC BY-NC 4.0; following the benchmarks’ own terms, they should not be used to train, fine-tune, or distill models.数据可在 https://huggingface.co/datasets/yixuanli97/finding-the-right-fit 获取。数据包含一个按任务划分的结果表,以及 6,204 次评分运行中每一次的轨迹,这些轨迹已从各框架的原生日志转换为包含奖励、成本、令牌使用量和智能体时间的通用聊天格式。在这些运行中,6,067 次包含完整的模型-工具对话;其余 137 次(主要是环境未启动的运行)仅包含结果。已移除敏感信息和主机路径,超长输出已被截断,且不包含验证器文件或参考数据。数据发布旨在用于分析智能体行为和框架比较,遵循 CC BY-NC 4.0 协议;根据基准测试自身的条款,不得用于训练、微调或蒸馏模型。
Appendix C Additional resource-use figures附录 C 资源使用补充图表
Appendix D Cost by configuration附录 D 按配置划分的成本
| Model | OpenHands | DSH | PI | OJW | Native |
|---|---|---|---|---|---|
| TUA-Bench (120 tasks) | |||||
| Claude Opus 5 | 86.60 | 91.74 | 70.28 | 162.44 | 113.73 |
| GPT-6 Astra | 86.03 | 150.97 | 76.92 | 157.62 | 113.08 |
| GLM-5.3 | 51.86 | 56.47 | 29.82 | 45.15 | – |
| Kimi K3 | 46.85 | 47.83 | 33.51 | 56.67 | – |
| DeepSeek V4 Pro | 14.52 | 12.81 | 12.07 | 43.53 | – |
| ALE-CLI (99 tasks) | |||||
| Claude Opus 5 | 498.26 | 352.20 | 323.34 | 484.45 | 570.21 |
| GPT-6 Astra | 275.51 | 672.49 | 266.97 | 513.90 | 481.88 |
| GLM-5.3 | 204.91 | 160.74 | 138.12 | 195.41 | – |
| Kimi K3 | 217.04 | 105.47 | 151.43 | 220.40 | – |
| DeepSeek V4 Pro | 49.20 | 42.06 | 25.73 | 66.83 | – |
| Terminal-Bench 4 (63 tasks) | |||||
| Claude Opus 5 | 814.82 | 1122.42 | 1277.48 | 1208.69 | 780.15 |
| GPT-6 Astra | 340.30 | 1256.48 | 293.30 | 697.58 | 290.35 |
| GLM-5.3 | 465.53 | 411.55 | 376.45 | 717.10 | – |
| Kimi K3 | 551.35 | 494.85 | 486.79 | 750.68 | – |
| DeepSeek V4 Pro | 50.59 | 82.43 | 92.32 | 75.69 | – |