Aklman · Library

07 / 第七章

派上云 · 云端沙箱、并行与 PR 流.

这是 Codex 和同类拉开差距的一章。每个云端任务在 OpenAI 的隔离容器里跑:检出你的仓库、带网跑 setup 脚本、然后断网进入 agent 阶段 —— secrets 在动手前撤走,收尾交回一个 diff,一键开 PR。你可以同时派一批:五个 bug 各开一个任务,互不干扰地并行,你去干别的,回来挨个收。派活的入口也不止网页:GitHub 里 @codex 一句评论就能把 PR 上的活派进云端,手机上也能派能收。这一章讲环境怎么配、联网白名单怎么开、以及哪类活值得上云 —— 可验证、批量、不需要你陪跑的。


这是 Codex 和同类拉开距离的一章。前六章讲的活,不管在终端、编辑器还是本地 worktree,都还在你这台机器上、你多少看得见。云端不一样:活离开你的机器,进 OpenAI 的隔离容器,跑完回来是一份 diff、一个 PR。它最狠的地方不是「也能在别处跑」,是<strong>你能一次派一批,并行跑,回来挨个收</strong>。这一章讲一个云端任务怎么跑、环境怎么配、从哪几处派、以及哪类活值得上云。

I

一个云端任务怎么跑.

云端的一句话定位是「把活委派给隔离的云端环境里的 Codex」。1注 1OpenAI Codex 文档 · Codex cloud —— 一句话定位「把活委派给隔离的云端环境里的 Codex」。云端在 OpenAI 托管的隔离容器里跑,防止碰到你的主机或无关数据;采用两阶段:setup 阶段在 agent 之前跑、可联网装依赖,然后 agent 阶段默认离线(除非你为该环境开联网)。为云端环境配置的 secrets 只在 setup 期间可用、在 agent 阶段开始前被移除。截至 2026-07-17。你提交一个任务后,大致这样走:创建一个容器、按你选的分支或 SHA 检出仓库、跑你的 setup 脚本,然后进 agent 循环 —— 跑命令、改代码、验证(仓库里有 AGENTS.md 就用它找 lint / test 命令),完成后给出答案和一份改动 diff,你可以一键开 PR,或追问再改。2注 2OpenAI Codex 文档 · Cloud environments —— 每个云端对话:创建容器、按选定分支 / SHA 检出仓库,跑 setup 脚本(+ 缓存容器复用时可选的 maintenance 脚本),应用联网设置,agent 循环里跑命令、改代码、验证,若仓库有 AGENTS.md 就用它找 lint / test 命令;完成后给出答案和一份改动 diff,你可开 PR 或追问。默认镜像 universal(预装常见语言 / 工具,可 pin 版本);env vars 全程可用,secrets 只在 setup 可用;容器缓存至多 12 小时。截至 2026-07-17。 安全模型是这一步的关键,分两阶段:setup 阶段跑在 agent 之前、可以联网装依赖;然后agent 阶段默认断网1注 1OpenAI Codex 文档 · Codex cloud —— 一句话定位「把活委派给隔离的云端环境里的 Codex」。云端在 OpenAI 托管的隔离容器里跑,防止碰到你的主机或无关数据;采用两阶段:setup 阶段在 agent 之前跑、可联网装依赖,然后 agent 阶段默认离线(除非你为该环境开联网)。为云端环境配置的 secrets 只在 setup 期间可用、在 agent 阶段开始前被移除。截至 2026-07-17。更要紧的一条:你为云端环境配的 secrets 只在 setup 期间可用,在 agent 阶段开始前就被移除 —— 也就是说,真正干活、可能被 prompt injection 诱导的那个阶段,手里已经没有你的密钥了。1注 1OpenAI Codex 文档 · Codex cloud —— 一句话定位「把活委派给隔离的云端环境里的 Codex」。云端在 OpenAI 托管的隔离容器里跑,防止碰到你的主机或无关数据;采用两阶段:setup 阶段在 agent 之前跑、可联网装依赖,然后 agent 阶段默认离线(除非你为该环境开联网)。为云端环境配置的 secrets 只在 setup 期间可用、在 agent 阶段开始前被移除。截至 2026-07-17。这是「把活交出去」敢成立的底层:容器隔离你的主机,断网隔离外传,撤密钥隔离最坏情况。

II

环境:装什么,连什么.

云端跑得对不对,一半看环境配得对不对。默认镜像叫 universal,预装了常见语言和工具,你可以 pin 具体版本、加 setup 脚本装额外依赖。2注 2OpenAI Codex 文档 · Cloud environments —— 每个云端对话:创建容器、按选定分支 / SHA 检出仓库,跑 setup 脚本(+ 缓存容器复用时可选的 maintenance 脚本),应用联网设置,agent 循环里跑命令、改代码、验证,若仓库有 AGENTS.md 就用它找 lint / test 命令;完成后给出答案和一份改动 diff,你可开 PR 或追问。默认镜像 universal(预装常见语言 / 工具,可 pin 版本);env vars 全程可用,secrets 只在 setup 可用;容器缓存至多 12 小时。截至 2026-07-17。两类值得分清:env vars 全程可用,secrets 只在 setup 可用(前面说过,agent 阶段前撤走)。容器还会缓存至多 12 小时,新任务和追问都快 —— 改了 setup 脚本或 secrets 会自动失效重建。2注 2OpenAI Codex 文档 · Cloud environments —— 每个云端对话:创建容器、按选定分支 / SHA 检出仓库,跑 setup 脚本(+ 缓存容器复用时可选的 maintenance 脚本),应用联网设置,agent 循环里跑命令、改代码、验证,若仓库有 AGENTS.md 就用它找 lint / test 命令;完成后给出答案和一份改动 diff,你可开 PR 或追问。默认镜像 universal(预装常见语言 / 工具,可 pin 版本);env vars 全程可用,secrets 只在 setup 可用;容器缓存至多 12 小时。截至 2026-07-17。 联网是最该谨慎的一格。agent 阶段默认断网;要开,按环境选 On,再用域名白名单收窄 —— 预设有 None(从零加)、Common dependencies(一份常见包管理与源码域名)、All(无限制),还能限定只放 GET / HEAD / OPTIONS 这类只读方法。3注 3OpenAI Codex 文档 · Agent internet access —— agent 阶段默认断网;setup 脚本仍可联网装依赖。按环境开启,可选择 Off / On,On 时用域名白名单(None / Common dependencies 预设 / All 无限制)加允许的 HTTP 方法(为多一层保护,可只放 GET / HEAD / OPTIONS)。风险:prompt injection、代码 / secrets 外泄、拉进恶意或受限依赖。文档给的注入例子:issue 文本里藏 curl 外传命令,诱 agent 执行。截至 2026-07-17。为什么这么小心?文档给的注入例子很直白:你让它去修一个 GitHub issue,issue 文本里藏了一条 curl 外传命令,联网又不设防的 agent 可能就把你的数据发去了攻击者的服务器。3注 3OpenAI Codex 文档 · Agent internet access —— agent 阶段默认断网;setup 脚本仍可联网装依赖。按环境开启,可选择 Off / On,On 时用域名白名单(None / Common dependencies 预设 / All 无限制)加允许的 HTTP 方法(为多一层保护,可只放 GET / HEAD / OPTIONS)。风险:prompt injection、代码 / secrets 外泄、拉进恶意或受限依赖。文档给的注入例子:issue 文本里藏 curl 外传命令,诱 agent 执行。截至 2026-07-17。默认断网不是麻烦,是护栏 —— 只在真需要装依赖、真信任目标域名时才开一条缝。

III

一次派一批,从四处派入.

云端最能拉开差距的用法,是并行:五个 bug 各开一个云端任务,它们在各自的容器里同时跑,你去干别的,回来挨个看 diff、挨个开 PR。这不是「一个 agent 跑快点」,是「一个人同时监工五件活」—— 而验收成了你唯一还需要亲手做的动作(第 9 章)。 派入的口子也不止网页一个。网页(chatgpt.com/codex)是主入口;GitHub 上一句评论就能派 —— 在 PR 里 @codex 加一句话,它用这个 PR 作上下文起一个云端对话,有权限时把修复推回分支:
# 在一个 PR 评论里(GitHub)
@codex fix the CI failures
 
# 在终端:把某个云端对话最新的 diff 应用到本地工作树(别名 codex a)
codex apply <TASK_ID>

GitHub 上派活,或把云端 diff 拉回本地

还有手机:ChatGPT 应用的 Remote 连回你桌面的 host,在路上也能派、也能收。4注 4OpenAI Codex 文档 · Codex code review in GitHub —— GitHub 上 PR 评论里 @codex(非 review)会用该 PR 作上下文起一个云端对话,例如「@codex fix the CI failures」,它有权限时能把修复推回分支。截至 2026-07-17。收回来的路径同样多:网页直接开 PR,或在终端用 codex apply(别名 codex a)把某个云端对话最新的 diff 拉到本地工作树、在你熟悉的环境里验;codex cloud 命令组(codex cloud exec 派任务、codex cloud list 列最近对话)则从终端浏览、执行云端对话。5注 5OpenAI Codex 文档 · Command line options(CLI reference)—— 顶层命令 codex apply <TASK_ID>(别名 codex a)把某个云端对话最新的 diff 应用到你的本地工作树。codex cloud 是从终端浏览 / 执行云端对话的命令组:默认开交互选择器,codex cloud exec 直接派任务、codex cloud list 列最近对话,不必打开 TUI。截至 2026-07-17。派活的口子和收活的口子都铺开了,四个面在这里合流成一句话:活在哪都能派,回来都是可审的 diff。

IV

哪类活值得上云.

不是所有活都该上云。云端的甜点位有三个特征:可验证 —— 有测试、有构建、有能对比的产出,你才敢让它在你看不见时跑完;可并行 —— 一批彼此独立的活,并行才划算,一件串行的活上云只是多绕一圈;不需要你陪跑 —— 要你逐字盯着改的活,留在编辑器更快。反过来,一件需要你反复口头拉扯、边看边改的探索型任务,上云是把沟通成本翻倍,那种活属于第 2、3 章的本地面。 动手 · 派第一批云端任务:

活离开你的机器, 回来是一份可审的 diff.

Work leaves your machine, and comes back a reviewable diff.

Aklman Library

讨论

讨论.

评论区初始化中…