Aklman · Library

08 / 第八章

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

云端的价值不是独占「并行」—— 本地 subagents 和 worktrees 也能并行 —— 而是把活搬进 OpenAI 的可复现隔离容器:检出仓库、带网跑 setup、然后默认断网进入 agent 阶段,secrets 在动手前撤走,收尾交回一个 diff 或 PR。你可以同时派一批,离开自己的机器去干别的。这一章讲环境怎么配、联网白名单怎么开,以及什么时候该用单任务内的 subagents,什么时候该开多项云端任务。

MD海报

前七章讲的配置和本地工作,不管在终端、编辑器还是 worktree,都还依赖你这台机器。云端不一样:活进 OpenAI 的隔离容器,跑完回来是一份 diff、一个 PR。它的价值不是独占「并行」—— 第 6 章的 subagents 和本地 worktrees 也能并行 —— 而是<strong>离机、可复现、彼此隔离地跑一批独立任务</strong>。

I

一个云端任务怎么跑.

云端的一句话定位是「把活委派给隔离的云端环境里的 Codex」。1注 1OpenAI Codex 文档 · Codex cloud —— 一句话定位「把活委派给隔离的云端环境里的 Codex」。云端在 OpenAI 托管的隔离容器里跑,防止碰到你的主机或无关数据;采用两阶段:setup 阶段在 agent 之前跑、可联网装依赖,然后 agent 阶段默认离线(除非你为该环境开联网)。为云端环境配置的 secrets 只在 setup 期间可用、在 agent 阶段开始前被移除。截至 2026-08-05。你提交一个任务后,大致这样走:创建一个容器、按你选的分支或 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-08-05。 安全模型是这一步的关键,分两阶段:setup 阶段跑在 agent 之前、可以联网装依赖;然后agent 阶段默认断网1注 1OpenAI Codex 文档 · Codex cloud —— 一句话定位「把活委派给隔离的云端环境里的 Codex」。云端在 OpenAI 托管的隔离容器里跑,防止碰到你的主机或无关数据;采用两阶段:setup 阶段在 agent 之前跑、可联网装依赖,然后 agent 阶段默认离线(除非你为该环境开联网)。为云端环境配置的 secrets 只在 setup 期间可用、在 agent 阶段开始前被移除。截至 2026-08-05。更要紧的一条:你为云端环境配的 secrets 只在 setup 期间可用,在 agent 阶段开始前就被移除 —— 也就是说,真正干活、可能被 prompt injection 诱导的那个阶段,手里已经没有你的密钥了。1注 1OpenAI Codex 文档 · Codex cloud —— 一句话定位「把活委派给隔离的云端环境里的 Codex」。云端在 OpenAI 托管的隔离容器里跑,防止碰到你的主机或无关数据;采用两阶段:setup 阶段在 agent 之前跑、可联网装依赖,然后 agent 阶段默认离线(除非你为该环境开联网)。为云端环境配置的 secrets 只在 setup 期间可用、在 agent 阶段开始前被移除。截至 2026-08-05。这是「把活交出去」敢成立的底层:容器隔离你的主机,断网隔离外传,撤密钥隔离最坏情况。

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-08-05。两类值得分清: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-08-05。 联网是最该谨慎的一格。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-08-05。为什么这么小心?文档给的注入例子很直白:你让它去修一个 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-08-05。默认断网不是麻烦,是护栏 —— 只在真需要装依赖、真信任目标域名时才开一条缝。

III

两种并行,别混在一起.

第 6 章已经把选择钉住:subagents 在一项任务里面分角色,最好多路读、单路写;多个 cloud tasks 在多项任务之间隔离执行,每项各自产生 diff 或 PR。6注 6OpenAI Codex 文档 · Subagents —— 本地 ChatGPT 桌面应用、CLI、IDE 扩展默认支持 subagents,可在一项任务内并行委派独立的调查 / 审阅分块,再由主 agent 汇总;CLI 用 /agent 查看线程。它和多项 cloud tasks 不同:前者拆一件复杂活,后者让几件独立活各跑在自己的环境里。截至 2026-08-05。这里再加一条云端专属判断:只有任务能独立验收、环境能复现、完成后可单独合并,才值得另开容器。把一个紧耦合问题拆成五个云端 PR,会把共享上下文和集成成本推给你。 云端批量的真正变化,不是「一个 agent 跑快点」,是「一个人同时监工几件彼此独立的活」—— 而验收成了你唯一还需要亲手做的动作(第 10 章)。 Hosted Codex surface 在 chatgpt.com/codex 管云端任务;它不是 ChatGPT web 里可选择的普通 Codex 体验。GitHub 则在 PR 评论里用 @codex 派活,以 PR 为上下文起云端对话,权限允许时把修复推回分支:
# 在一个 PR 评论里(GitHub)
@codex fix the CI failures
 
# 在终端:把某个云端对话最新的 diff 应用到本地工作树(别名 codex a)
codex apply <TASK_ID>

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

账号开放时还有手机:ChatGPT 应用的 Remote 连回仍在运行的桌面 host,在路上也能派、也能收;它受 eligible account / rollout 影响,不是手机本地执行。7注 7OpenAI Codex 文档 · Remote connections —— ChatGPT 应用可在功能对账号开放时远程连接桌面 host,从其它设备继续查看 / 控制 Codex 工作;本地 host 必须仍在运行。Remote 与相关 CLI 控制仍可能受 eligible account / rollout 与 experimental 状态影响。截至 2026-08-05。收回来的路径同样多:网页直接开 PR,或在终端用 codex apply(别名 codex a)把某个云端对话最新的 diff 拉到本地工作树、在熟悉的环境里验;codex cloud 是 experimental 命令组,codex cloud exec 派任务、codex cloud list 列最近对话。5注 5OpenAI Codex 文档 · Command line options(CLI reference)—— 顶层命令 codex apply <TASK_ID>(别名 codex a)把某个云端对话最新的 diff 应用到你的本地工作树。codex cloud 是 experimental 命令组:默认开交互选择器,codex cloud exec 直接派任务、codex cloud list 列最近对话,不必打开 TUI。截至 2026-08-05。入口可以散开,交付标准只留一句:回来必须是可审的 diff。

IV

哪类活值得上云.

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

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

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

Aklman Library

讨论

讨论.

评论区初始化中…