云端任务与 GitHub
用 Codex Cloud 在云端跑任务、在终端里提交和取回云端任务,以及在 GitHub Pull Request 里用 @codex review 做代码审查。
Codex Cloud 把任务放到 OpenAI 的云端环境里运行:每个任务有独立的工作区,你的电脑休眠或关机也不影响,结果可以在网页、手机或桌面应用里查看。
使用条件
- 必须用 ChatGPT 账号登录,API Key 不能用云端功能;
- 至少需要 Plus 套餐;
- 用邮箱 + 密码登录的账号,必须先开启 MFA(见拿到账号后的第一步);
- 云端任务和本地对话共用额度,通常更耗额度。
第一个云端任务
打开 ChatGPT
在网页、手机或桌面应用里打开 ChatGPT,用你的账号登录。
创建或选择环境
在网页或桌面应用里,选择 Work in > Cloud,打开 Select environment。已有环境直接选;没有的话点 Create environment 新建(新建环境只能在网页或桌面应用里操作)。
让 Codex 准备项目
选择你的 GitHub 仓库,点 Get started;如果还没连接 GitHub,会提示你授权。Codex 会检查仓库、安装依赖和工具,并测试工作流程;缺少权限或信息时会问你。
检查并发布环境
新环境需要你检查设置和测试结果,保存后点 Publish,等待显示 Environment published。
开始任务
点 Start a new task,描述任务并发送。完成后查看改动和测试结果,可以继续追加要求,满意后提交或直接开 Pull Request。
环境里的密钥与网络
在环境配置里可以添加两类值:
| 类型 | 用途 | 说明 |
|---|---|---|
| 环境变量(Environment variable) | 程序需要直接读取的值 | 直接传给环境里的程序 |
| 网络密钥(Network secret) | 发给特定 HTTPS 服务的凭据 | 程序拿到的是占位符,只有访问允许的域名时才由代理替换成真实值 |
凭据类的值优先用网络密钥:真实值不会出现在环境里的进程或文件中。
在终端里使用云端
codex cloud 目前标注为 experimental(实验性),用法可能会变。
# 打开交互式选择器,浏览云端任务
codex cloud
# 直接提交一个任务到指定环境
codex cloud exec --env <ENV_ID> "修复登录页的表单校验"
# 列出最近的云端任务
codex cloud list
# 把最近一个云端任务生成的改动应用到本地
codex applycodex cloud exec 还支持 --attempts 1-4,让云端同时尝试多个方案(best-of-N)。
GitHub 代码审查
把 GitHub 仓库连接到 Codex 后,可以让它像同事一样审查 Pull Request。
手动请求审查
在 PR 的评论里写:
@codex reviewCodex 会先回一个 👀,然后发一份标准的 GitHub 代码审查。为了让评论聚焦,它在 GitHub 上只标出 P0 和 P1 级别的问题。
想让它重点看某方面,可以直接写在评论里:
@codex review for issues in the database migration自动审查
- 把 GitHub 仓库连接到 Codex;
- 打开 Codex 代码审查设置;
- 选择仓库,在 Review code 下打开 Automatic review,用 Review trigger 选择什么时候触发。
配置自动审查需要你对该仓库有 push 或 admin 权限。
让 Codex 直接修
审查完后,在同一个 PR 里继续评论:
@codex fix the P1 issue@codex 后面写 review 以外的内容,比如 @codex fix the CI failures,Codex 会以这个 PR 为上下文启动一个云端任务;有权限时会把修复推回到分支上。
自定义审查规则
在仓库的 AGENTS.md 里加一个 ## Code Review Rules 小节,写上你们团队最在意的检查项。建议:
- 先写两三条最常被人工审查指出的问题;
- 说清楚要标出的行为、为什么重要,以及什么情况是正常的;
- 格式、lint 这类机械检查交给 CI,不要写进审查规则。
详见 AGENTS.md 项目说明。
Codex 没反应时
- 确认已在 Codex 设置里为该仓库开启代码审查;
- 确认 PR 所在的仓库已经连接到 Codex;
- 评论内容必须是
@codex review,不要拼错; - 自动审查还要检查仓库设置和个人设置里的 Automatic review 是否都已打开。
在 GitHub 上触发的审查计入 Code Review 用量;在本地或 GitHub 之外做的审查计入普通用量。