Codex
Codex 云端环境配置:安装脚本、密钥、联网与缓存
Codex Cloud 的每个任务都从一个可复用的云端环境启动,环境里定义了要拉取的仓库、依赖、环境变量与密钥、以及允许的联网范围。这篇把新旧两套体验的配置差异讲清楚,包括安装脚本、预装镜像、network secret 的代理替换机制和缓存失效规则。
今天就能做
- 对照自己用的是当前版还是 Legacy,把 setup 脚本里需要持久化的变量改写到 ~/.bashrc 或环境变量设置。
- 把私有 registry token 从环境变量改成 network secret 并填好 Allowed domains,避免原始凭证进入 agent 进程。
- 联网权限先选 Package managers 或 Custom domains only,只在确实需要时开 All,并定期核对出口 IP 列表。
先分清你在用哪套环境
- 当前版 Codex Cloud 用于网页、桌面端和移动端的任务;Legacy 版仍承载 Code Review 以及 GitHub、Linear 集成,用 @codex 在 PR 里触发任务时跑的还是 Legacy。
- 当前版由 Codex 在对话中自动识别运行时、包版本和工具,测试通过后发布,字段只有 install script 和 start skill;Legacy 版要自己在设置里填 setup script 和可选的 maintenance script。
- OpenAI 表示计划弃用 Legacy,但两套设置目前都得维护。
安装脚本的两个坑
- 当前版初始 setup 失败时,先回 setup 对话找报错的那条命令让 Codex 诊断,也可以点 Try again;如果修复要改源码、manifest 或 lockfile,先开一个编码任务改完再回来。
- Legacy 版对 npm、yarn、pnpm、pip、pipenv、poetry 能自动装依赖,更复杂的要手写脚本,例如先 pip install pyright 再 poetry install --with test 和 pnpm install。
- Legacy 的 setup script 跑在独立 Bash 会话里,export 不会带到 agent 阶段,要持久化就写进 ~/.bashrc 或环境变量设置。
- maintenance script 在恢复缓存容器时执行,用来在缓存基于旧 commit 时更新依赖。
预装镜像与本地复现
- Legacy 的 agent 跑在 universal 默认镜像里,预装常见语言和工具,可在设置里固定 Python、Node.js 等版本;当前版则在 setup 对话里指定版本。
- 参考镜像 openai/codex-universal 用 CODEX_ENV_* 变量选择 Python、Node.js、Rust、Go、Swift、Ruby、PHP、Java 等运行时,Python 自带 poetry、uv、ruff、mypy、pyright,Node.js 自带 corepack、yarn、pnpm。
- 本地可用 docker run 挂载当前目录并传入 CODEX_ENV_PYTHON_VERSION、CODEX_ENV_NODE_VERSION 来近似云端环境;镜像有 amd64 和 arm64,但官方只跑 amd64,Apple 芯片上加 --platform linux/amd64。
环境变量与 network secret 的区别
- 当前版分两类:环境变量是程序直接读到的原始值,适合 APP_MODE=development 这类配置;network secret 由代理在 HTTPS 443 上替换真实凭证,只对 Allowed domains 生效,原始值不会落到本地进程或文件。
- 程序确实需要读原始凭证时,就存成环境变量而不是 network secret;保存环境级 network secret 时,其域名会自动加进受限联网白名单。
- 共享环境下每人可在 Settings > Codex Cloud > Personal vault 填自己的值,可作用于全部或指定环境,只有被请求的值才会进入任务,环境专属值优先于通用默认值。
- Legacy 的 secret 额外加密,但只在 setup 阶段可用,agent 阶段开始前会被移除,所以只能用来在安装时认证私有源。
联网权限怎么开
- 当前版打开 Allow Codex to access internet 后有三档:Package managers 覆盖 npm、PyPI、crates.io、Go proxy、Maven、Gradle、Ubuntu/Debian 源和 GitHub;Custom domains only 只放行你加的域名;All 为完全不限制。
- 注册根域名会连带放行 www,其他子域要单独加;放行目标不等于给对方服务授权或提供凭证。若服务按来源 IP 过滤,OpenAI 提供 agent 出口 IP 列表,建议每天核对。
- Legacy 的 setup 脚本始终有网,agent 默认断网,可选 None、Common dependencies、All 白名单,还能限制为只允许 GET、HEAD、OPTIONS,所有流量走 HTTP/HTTPS 代理。
- 官方列出的风险包括不可信内容引发的 prompt injection、代码或密钥外泄、恶意依赖和许可证受限内容,按任务最小化放行。
缓存与保存状态
- 当前版三条规则:新任务从已发布环境的文件系统起步;已有任务保留自己的文件,包括未提交改动和已装工具;仓库刷新在后台跑,保留依赖缓存而不重跑安装和启动命令。
- 改共享配置走环境的 … 菜单选 Edit,让 Codex 测试后 Republish,已有任务状态不受影响;任务保存的 VM 状态在最后一次操作后可恢复七天,但不能替代版本控制。
- Legacy 缓存容器状态最长 12 小时,缓存时克隆仓库、切默认分支、跑 setup script,恢复时切任务分支、跑 maintenance script;改脚本、环境变量或 secret 会自动失效,也可手动 Reset cache。
- Business 和 Enterprise 的缓存对有权访问的人共享,重置会影响整个工作区。
原文:Codex cloud environment: setup, secrets, internet, caching
来源:Kipt · 2026-10-26
查看原文本文由 AI 阅读原文后整理,未经人工逐字核对,内容以原文为准。
登录后可以点赞、查看和发表评论