远程执行器集成测试
为本地与远程执行环境验证 Codex 集成功能。
技能明确限定远程执行测试场景,并说明 Docker、Wine、环境变量和 devbox 的数据流;但未说明敏感数据处理、权限边界、用户确认、回滚策略或远程主机信任模型,因此扣分。
文档提供了 codex_core、app-server、Docker、Wine 的具体命令和跳过宏,路径较清晰;但依赖、版本兼容性、失败诊断和异常输入处理说明不足,且静态审查不能证明可运行,因此扣分。
目标受众和适用场景明确,覆盖 Linux、Wine 及 macOS devbox;但要求 x86_64 Linux,未定义更多不适用情形、触发条件或中文环境支持,远程/devbox 访问可能受中国大陆网络影响,因此扣分。
结构简洁,包含测试夹具、跳过规则、Docker、Wine 和 devbox 示例,并有 Apache-2.0 许可及 OpenAI 来源;但缺少安装依赖、版本策略、变更记录、维护责任和故障排查说明,因此扣分。
文档直接给出可复制的 core 与 app-server 测试命令,能够覆盖主要任务;但结果格式、成功判据、替代方案和环境失败时的可用输出未充分说明,静态证据不足以确认实际效果,因此扣分。
文档包含具体命令、宏名称和脚本路径,仓库工作流还提及 Linux remote-env tests,具备有限可审计性;但没有本技能专属的可复现测试证据或独立交叉验证,且本次未执行,因此扣分。
- 远程测试会启动 Docker/Wine 执行器,并可能通过 SSH 使用 devbox;使用前应明确主机权限、网络访问、凭据和测试数据边界。
- 文档未提供依赖版本、失败排查、成功判据或 Windows/macOS 非目标环境的完整行为说明。
它能做什么 & 适用场景
该技能指导针对远程执行器运行 Codex 集成测试,覆盖 app-server/exec-server 分离架构。它支持两种执行器方案:Linux Docker 容器和通过 Wine 运行的 Windows exec-server。测试默认要求 x86_64 Linux 主机;macOS 用户可以连接 devbox 执行测试。内容还说明了 core 与 app-server 测试夹具、配置相关的跳过宏,以及 Docker 和 Bazel 命令。
指导测试用例通过 TestCodexBuilder::build_with_auto_env() 或 TestAppServer::new_with_auto_env() 选择远程执行环境;为 app-server 线程发送自动环境启动请求;使用 skip_if_target_windows!、skip_if_wine_exec!、skip_if_host_windows!、skip_if_remote! 和 skip_if_no_remote_env! 按配置跳过测试;通过 scripts/test-remote-env.sh 启动和清理 Docker 远程环境;运行 codex-core 和 codex-app-server 集成测试;通过 Bazel 运行 Wine exec-server 测试;指导用户通过 SSH 使用 macOS devbox。
- 维护 codex-core 集成测试,并希望验证其在 Docker 远程执行器上的行为。
- 维护 app-server 测试,需要在 Linux 主机与远程 exec-server 分离的环境中运行测试。
- 开发跨 Windows 执行器功能,并通过 Wine 验证 Windows exec-server。
- 测试因主机、目标系统或远程执行器限制而需要按配置跳过的用例。
- 在 macOS 上开发 Codex,并通过包含 codex 检出的 devbox 运行远程测试。
优缺点一览
- 同时覆盖 Docker Linux exec-server 和 Wine Windows exec-server。
- 提供 core、app-server 夹具和配置化跳过宏的具体用法。
- 包含可直接复制的 Docker、Bazel 和 devbox 测试流程。
- 远程执行器测试目前要求 x86_64 Linux 主机。
- Wine 测试依赖跨平台构建,因此只能在 Bazel 中运行。
- 未提供独立技能的安装步骤,也未说明完整的环境版本要求。
如何安装
README 只说明如何安装整个 Codex CLI 集合,例如在 macOS 或 Linux 上运行 curl -fsSL https://chatgpt.com/codex/install.sh | sh,或使用 npm install -g @openai/codex、brew install --cask codex。未说明如何单独安装或注册 .codex/skills/remote-tests/SKILL.md。
如何使用
在 codex 仓库中按需将测试夹具改为自动远程环境。Docker core 测试可运行:bash -c 'set -euo pipefail; unset CODEX_TEST_REMOTE_EXEC_SERVER_URL; source scripts/test-remote-env.sh; trap codex_remote_env_cleanup EXIT; cd codex-rs; just test -p codex-core --test all'。app-server 测试将包名替换为 codex-app-server。Wine 测试运行 bazel test //codex-rs/core:core-all-wine-exec-test 或 bazel test //codex-rs/app-server:app-server-all-wine-exec-test。