codex Harness 在 Benchmark 准备好的工作区中以非交互方式运行 OpenAI Codex CLI。
工作原理
- 准备 Codex CLI。 可选 Runtime Capsule 可先提供 Node/npm;随后 Harness 仍按
install_strategy使用镜像内 CLI、按需安装或上传可执行文件。 - 配置并运行。 Harness 写入当前会话使用的 Codex provider 配置后,在任务工作区中以非交互方式运行 CLI。Recipe 可以把该配置放在仓库外,避免其进入最终补丁。
- 回收结果。 Codex 的 JSON 事件会被规整为轨迹、最终回答和执行状态,并返回
RunResult。
参数
通过--harness-params '{...}' 传入 Harness 参数。这里只列出通常需要调整的安装、provider 与执行行为,其余路径和上传配置使用内置默认值。
参数总览
| 参数 | 类型 | 默认值 | 可选值 / 取值 | 说明 |
|---|---|---|---|---|
install_strategy | 字符串 | install_if_missing | preinstalled / install_if_missing / upload | 准备 Codex 的方式。 |
install_command | 字符串 | npm install -g @openai/codex | 命令 | 缺少 Codex 时执行的安装命令。 |
setup_capsule_tag | 字符串 | 未设置 | node24-v1 | 在安装 Codex 前注入可选的预定义 Node 工具链 Capsule。 |
sandbox | 字符串 | workspace-write | read-only / workspace-write / danger-full-access | Codex sandbox 策略。 |
reasoning_effort | 字符串 | 未设置 | provider 支持的推理强度 | 作为 model_reasoning_effort 写入 Codex 配置。 |
dangerously_bypass_approvals_and_sandbox | 布尔值 | true | true / false | 是否传 —dangerously-bypass-approvals-and-sandbox。仅在需要保留 Codex 审批与 sandbox 流程时设为 false。 |
model API
Codex 需要 OpenAI 兼容的--model-base-url 与 --model-api-key。--model-api-protocol openai-responses 会使用 Responses API,openai-chat 会使用 Chat Completions API;命令行协议优先于 Harness 的内部 wire_api 回退值。基础 URL 缺少 /v1 时,Harness 会自动补上。
运行示例
- 默认配置
- 自定义参数
- Runtime Capsule
使用默认安装与工作区写入策略运行。
输出
Harness 为每个任务返回RunResult:轨迹、最终回答与执行状态。单任务详情与聚合指标由 Benchmark 写入 运行目录(详见 结果)。
任务执行 deadline 统一通过 --execution-params 中的 run_timeout_seconds 和 run_timeout_multiplier 设置。详见阶段超时。