研究把 21 个模型-外壳配对(7 个模型 × 3 个外壳:Claude Code、Codex CLI、Pi)放进同一套考题。SWE-bench Lite 与 Terminal-Bench 2.0 各 30 道随机题,每题跑 3 次抓波动,外壳用原生配置的高努力档,每次尝试封顶 100 个 agent 步。成本按 2026 年 9 月 1 日的固定直连接口价估算,模型间不打折。
现象
结论先抛出来:外壳选择几乎不动成功率,却能撬动最高 5 倍的成本。同一个模型,在相近成功率下,账单可以差出五倍。
第二个现象更刺耳:模型常常在别人家的外壳里比在自己家表现更好。Claude 系列模型不一定非得配 Claude Code。
第三个现象:Pi 这个极简开源外壳,在成本和成功率上都能和旗舰外壳掰手腕。榜单上看似属于模型的能力,有一部分其实是外壳给的。
架构全景
外壳是模型与代码库之间的软件层,负责决定模型看到哪些文件、如何调用工具、何时加质量闸门。它管的不是智能,是智能的调度与上下文装配。
本次入榜的三个外壳代表三种体量:Claude Code 与 Codex CLI 是厂商重型外壳,Pi 是社区极简外壳。三者都跑同一批模型、同一批题,所以差异只能来自外壳本身。
核心模块拆解
成本差异的根因落在三个模块:系统提示词、工具描述、缓存命中。
外壳每轮都会把系统提示词和工具描述重新发一遍。这道固定开销叫 startup tax。轻量外壳的 startup tax 约 700 token,重型外壳能到 26000 token。
缓存是另一道分水岭。Codex 把约 70% 的输入 token 走缓存读,价格约为原价十分之一。Claude Code 只有 1.5% 走缓存,几乎全价付输入。
关键机制
startup tax 乘以轮数,几乎决定了单题 token 总量。一项 12 配置基准里,这个公式在两个模型上的 R² 都到 0.99。
也就是说,一个 26000 token 的地板价,跑 15 轮,光脚手架就吃掉约 39 万输入 token。模型本身的聪明程度没变,账单一半是为外壳的包袱付的。
缓存命中率不只看外壳,还受服务商路由和接口方言影响。Anthropic 式与 OpenAI 式通信的缓存策略不同,同样的外壳在不同端点表现两样。
边界条件
外壳对成功率的影响以点计,对成本的影响以倍计。Composio 的测试里,通过率从 46.7% 到 66.7%,差 20 个点;成本却差出数倍。
这道题只在当前两个开源基准和三家外壳内成立。更重的私有任务、更长的会话,成本差距可能放大也可能收敛。
采购侧该盯的是"每个验证通过结果的成本",不是裸 token 数。裸 token 会被通过率和缓存档位同时扭曲。
架构组件关系
- 外壳 = 模型 + 上下文装配 + 工具调度
- startup tax = 系统提示词 + 工具描述,每轮重发
- 缓存命中率决定输入 token 实际单价
如果正在做 coding agent 选型,可以先用同一模型在 Pi 和自家旗舰外壳各跑 10 道内部题,对比单题成本与通过率,再决定要不要为外壳付费。
参考资料
- [源码] HarnessTax. https://harnesstax.github.io/