e2b SDK 的标准环境变量处理,这正是同一个 worker 二进制文件能够跨沙箱平台部署的原因。
暂停,而非终止
LaunchKit 沙箱在空闲时暂停,任务继续时可在 1 至 2 秒内恢复运行;暂停期间沙箱磁盘必须保持完整。这一点至关重要:Agent 任务具有长生命周期和突发性,终止空闲沙箱会丢失工作状态,而让其常驻运行又会浪费你的容量。已结束的评测沙箱会在保留窗口内保持暂停(便于调试与重新评分——若后续仍可能需要重新评分,会先创建快照),窗口结束后回收;沙箱工作区在设计上是临时的,持久化结果始终归档到 LaunchKit 的对象存储。 你的沙箱平台必须通过两道功能门槛,均以实测方式验证(CubeSandbox 不暴露版本端点,验证只能依赖功能测试,而非版本号):- 超时自动暂停且磁盘数据完好 —— E2B 官方云:原生支持。CubeSandbox:需要 v0.5.0 或更新版本。
launchkit-worker doctor --probe会创建沙箱、等待其暂停、重新连接并验证磁盘数据是否完好。 - 快照与派生(见下文快照)—— E2B 官方云:原生支持。CubeSandbox:需要 v0.5.1 或更新版本(CubeCoW 快照引擎,已针对从快照启动强化)。
launchkit-worker doctor --probe会执行与 LaunchKit 云端探测完全相同的快照往返测试。
doctor --probe。任一门槛未通过的平台会被 LaunchKit 一致性探测拒绝:runtime 无法进入 connected 状态,其上的评测任务将被阻断,直到平台升级并重新探测通过。
密钥校验
E2B SDK 会按照 E2B 自有密钥格式(e2b_...)校验 API 密钥。兼容沙箱平台使用各自的格式(CubeSandbox 密钥形如 sk-cube-...),因此需要为这些平台关闭密钥校验:
- 桥接模式:在 worker 环境中设置
E2B_VALIDATE_API_KEY=false。 - 直连模式:请联系 LaunchKit 对接人,在 runtime 上关闭密钥校验。此后一致性探测仅检查可达性与 API 一致性,而非密钥真实性,并将该作用域记录到 runtime。
私有证书颁发机构
内网沙箱平台若使用私有 CA 签发的证书,在桥接模式下只需将 worker 指向你的 CA 证书包即可:SSL_CERT_FILE 仅控制 worker 进程的 TLS 校验。注意,若证书包替换(而非扩展)系统信任库,worker 到 LaunchKit 云的连接也会受影响,因此建议使用包含公共根证书的证书包。
模板构建
LaunchKit 的部分功能会通过 E2B 模板构建 API,在你的沙箱平台上派生沙箱镜像(即「模板」)。一致性探测会记录沙箱平台是否支持该能力;不支持模板构建的平台仍可使用预构建镜像运行任务。若你需要的功能依赖模板构建,LaunchKit 对接人会提前告知。快照
LaunchKit 的评测与训练引擎会对沙箱创建快照,并从快照派生新的沙箱(内存 + 磁盘)。这使得一次运行只需完成一次技能装载即可让每个试验都从该就绪状态派生、崩溃的试验可以从全新副本重试、已结束的试验可以在不重新运行 Agent 的前提下重新评分。快照支持是一致性探测在所有平台类型上的硬性要求:探测会创建沙箱、写入标记、创建快照、从快照启动第二个沙箱并验证标记存在于派生沙箱中——随后删除所有测试产物。在 CubeSandbox 上,这一功能往返测试正是 v0.5.1 门槛:v0.5.0 能通过暂停门槛,但会在这里失败。未通过的平台会停留在error 状态,runtime 上会记录失败的具体步骤;平台升级后,下一次探测通过即自动恢复连接。