agentcompass config docs env <provider-id> 查看。未声明字段(包括拼写错误和所有 provider 专属参数)统一报“未知参数”错误。出站访问通过通用网络策略配置,再由适配器在内部生成对应的原生 API 选项。
所有 provider 共用一份 schema。Provider ID 只选择实现及其支持的能力,不会增加公开参数。setup 包含 image、workdir、build_timeout_seconds 和 os;evaluation_setup 为独立 verifier 使用相同结构。资源、网络和环境变量字段也全部通用。Host 凭证通过适配器已有的环境变量或 SDK 配置提供,不属于任务执行设置。
Recipe 默认由 AgentCompass 自动匹配。常规评测不需要设置或改写 Recipe;只有 Benchmark 文档明确要求替代 Recipe、排查匹配问题或加载团队自定义逻辑时,才需要手动配置。
选择 provider 与配置入口
下列入口都能提供 Environment 参数。选择哪一种,取决于这些值只用于当前评测,还是需要在其他运行或程序中复用:agentcompass run
使用 --env <id> 选择 provider;省略时默认使用 host_process。运行 agentcompass list env 可以查看当前安装中可用的 provider ID。
--env-params 接收一个 JSON 对象,用于设置本次评测的 Environment 参数;同名字段会覆盖配置文件中的值:
配置文件
可复用的 provider 参数直接写在environments.<id> 下,不要增加 params 包装层:
Python SDK 单评测
SDK 使用 Python 字典传递参数,不需要把它们转换成 JSON 字符串:agentcompass launch 与 SDK 多评测
在 launch 编排中,id 选择 provider,其他字段直接写在 environment 下:
environment 中覆盖这些默认值。Python SDK 的 OrchestrationSpec 使用相同的字段结构。完整说明见 agentcompass launch 的映射规则和 Python SDK 的多评测请求。
嵌套字段怎么写
Provider 参数既可以是字符串、数字或布尔值,也可以是对象和列表。参数参考中的resources.cpu 表示“resources 对象里的 cpu 字段”,不是名为 resources.cpu 的扁平键。
下面四种写法等价,都会为 Daytona 设置 2 个 vCPU 和 6 GiB 内存。
CLI 使用 JSON 对象:
launch 编排将参数与 id 写在同一层,参数内部仍可嵌套:
resources.cpu: 2 和 resources.memory_mb: 6144,本次请求只传入 {"resources":{"memory_mb":8192}} 时,结果是 2 个 vCPU 和 8192 MiB 内存。
不要额外增加 params 包装层,也不要把字段路径写成 {"resources.cpu":2}。嵌套字段、单位和可用值以相应 provider 的参数参考为准。
分清字段归属
Environment 参数由两类字段组成:
无论使用哪种入口,共享 setup 字段、共享网络字段和 provider 字段都写在同一层,不需要再增加
params。例如,在配置文件中,它们都直接写在 environments.docker 下。
查看字段与配置结果
查询当前安装版本中某个 provider 的专属字段、类型和默认值:config show 只展示内置值和配置文件的合并结果,不包含本次运行额外传入的 CLI、SDK 或编排字段,也不会展示 Recipe 在任务开始前补充的最终 Environment 设置。命令的完整行为见 agentcompass config。
Environment 参数如何生效
Environment 参数不是一次性从某一个入口读取,而是按以下阶段逐步形成:
下面的命令没有设置 Docker 镜像。匹配的 SWE-bench Verified Recipe 会根据样本补充镜像和任务工作区,因此通常只需选择 provider:
config docs 输出为准。
评测总超时、并发和 Environment 启动速率属于运行控制。Modal 的
timeout 和 OpenSandbox 的 lifecycle_seconds 等字段只限制单个 sandbox 的存活时间,不等同于评测总超时。相关页面
原生适配器可能要求某些变量保持特定值,用于启动 runner 或映射统一的 Model、execution 配置。用户声明的环境变量与这些约束冲突时,命令在启动前失败,错误只列出变量名。应修改对应的 Model、Harness 或 execution 配置,避免通过生成的变量覆盖它;相同值可以接受。这不会新增 CLI 字段。内部 Python runner 在可以自行引导模块导入时保留用户的PYTHONPATH;mini-SWE-agent CLI 仍需要生成模块所在目录,会拒绝冲突的 PYTHONPATH。