过去用编码代理,你得坐在电脑前盯着终端,生怕它跑偏。现在 OpenAI 把 Codex 搬进了 ChatGPT 移动端——你可以在地铁上用手机发起任务,在咖啡馆里审批执行结果,回到办公室再在桌面端继续推进。同一个任务,多端同步,实时掌控。
Codex 的跨端工作流长什么样
Codex 的核心思路没变:你给出指令,它在沙盒环境里读代码、写代码、跑测试,每一步都等你确认。变化在于入口——ChatGPT 移动 App 成了新的控制面板。
实际操作流程大致是这样:
- 发起任务:在手机或桌面端输入自然语言指令,比如"给这个 Flask 项目加一个健康检查端点"。
- Codex 规划步骤:它会拆解任务,列出打算执行的命令和文件修改。
- 你逐步审批:每一步操作前,Codex 会暂停等你点"批准"。你在手机上也能看到完整的 diff 和命令。
- 执行与反馈:批准后 Codex 在远程沙盒执行,结果实时回传。你可以随时追加指令或中止任务。
关键点:审批权始终在你手里,Codex 不会自动执行未批准的步骤,不管你用的是手机还是电脑。
移动端能做什么,不能做什么
移动端不是"阉割版",它和桌面端共享同一个任务状态。但使用场景有天然差异:
适合手机做的事: - 快速发起一个新任务("把日志格式从 text 改成 JSON") - 审批正在等待确认的步骤——看 diff、点批准或拒绝 - 查看任务执行结果和测试输出 - 给正在跑的任务追加补充指令
不太适合手机做的事: - 大规模代码审查——小屏幕看长 diff 很痛苦 - 复杂的多步骤编排——更适合在桌面端仔细规划
实际体验中,最舒服的模式是混合使用:桌面端发起复杂任务,手机端负责审批和监控,两端交替推进。
实战:从手机发起一个 Codex 任务
下面用一个具体例子走一遍完整流程。假设你有一个 Python 项目,想让它支持从环境变量读取配置,而不是硬编码。
先在项目根目录准备一个 codex.md 文件,告诉 Codex 项目的基本约定:
# codex.md
## 项目约定
- Python 3.11,使用 Flask 框架
- 配置通过环境变量传入,使用 `os.environ.get()`,不硬编码
- 测试用 pytest,运行命令:`pytest tests/`
- 代码风格遵循 Black 格式化
项目里有个硬编码配置的模块 app/config.py:
# app/config.py — 当前版本,硬编码
DATABASE_URL = "postgres://localhost/mydb"
DEBUG = True
PORT = 5000
现在打开 ChatGPT 移动 App,进入 Codex 模式,输入指令:
把 app/config.py 里的硬编码配置改成从环境变量读取,
保留默认值,然后更新对应的测试。
Codex 会规划步骤并等待你的审批。你在手机上看到的审批界面会显示它打算执行的命令和文件变更,比如:
--- a/app/config.py
+++ b/app/config.py
@@ -1,4 +1,6 @@
+import os
-DATABASE_URL = "postgres://localhost/mydb"
-DEBUG = True
-PORT = 5000
+DATABASE_URL = os.environ.get("DATABASE_URL", "postgres://localhost/mydb")
+DEBUG = os.environ.get("DEBUG", "True").lower() == "true"
+PORT = int(os.environ.get("PORT", "5000"))
点批准,Codex 执行修改,然后跑测试。如果测试通过,任务完成;如果失败,它会尝试修复或等你追加指令。
远程环境配置:让 Codex 连上你的服务器
Codex 默认在 OpenAI 提供的沙盒里工作。如果你的项目需要访问私有仓库或内部服务,需要配置远程环境连接。
在桌面端用 CLI 设置 SSH 连接目标:
# 安装 Codex CLI(如果还没装)
npm install -g @openai/codex
# 配置远程环境——指向你的开发服务器
codex remote add \
--name dev-server \
--host dev.example.com \
--user deploy \
--ssh-key ~/.ssh/id_ed25519
# 验证连接
codex remote test dev-server
# 输出:✓ Connection to dev-server established
配置完成后,在手机端发起任务时可以选择执行环境:
在 dev-server 上,检查 /opt/app/logs 目录下最近 24 小时的错误日志,
统计出现频率最高的 5 个异常类型,输出一份简报。
Codex 会连到你的远程服务器执行,结果在手机上实时展示。
多端协作的几个实用习惯
跨端用 Codex,有几个习惯能让体验更顺畅:
给任务起明确的标题。 手机端任务列表一屏只能显示几条,标题写清楚意图比写"帮我改一下代码"好得多——"将 config.py 改为环境变量读取"一眼就能认出来。
善用 codex.md。 这个文件是 Codex 的"项目记忆",把约定、依赖、测试命令写进去,每次任务它都会先读这个文件。跨端操作时尤其重要——你在桌面端写的约定,手机端发起的任务也会遵守。
审批前看完整 diff。 手机屏幕小,容易只看摘要就点批准。建议对涉及安全或数据操作的变更,切换到桌面端仔细审查后再批准。
及时关闭不需要的任务。 Codex 任务会占用沙盒资源。在手机端任务列表里长按可以中止挂起的任务,避免浪费额度。
什么时候该用,什么时候不该用
Codex 跨端能力解决的是监控和审批的问题,不是让你在手机上写复杂代码的问题。适合的场景:
- 你在通勤或外出,团队报了一个小 bug,你想快速让 Codex 修一下
- 一个长时间跑的 Codex 任务在等你审批中间步骤,你不在电脑前
- 你想在特定远程环境上执行诊断命令,但不想手动 SSH
不适合的场景:
- 需要深度理解业务逻辑的重构——这类任务审批步骤多,手机端操作效率低
- 涉及生产环境直接变更——审批应该更慎重,建议只在桌面端操作
- 需要大量上下文输入的任务——手机打长指令太慢
一句话总结:手机端是方向盘和刹车,不是油门。用它来掌控方向和及时干预,把复杂规划留给桌面端。