Thomas Ricouard是 OpenAI Codex 团队的开发者体验负责人,法国资深开发者,曾在 Medium、Glose、Google 任职,精通 Swift/SwiftUI,目前专注 Codex 产品的移动端与桌面端协同体验。
这篇文章是他加入 OpenAI 两个月以来的实战经验总结,核心观点是:Codex Mobile 不是把桌面终端塞进手机,而是让手机成为远程控制编码任务的指挥台——电脑负责执行,手机负责决策。
文章覆盖了几个关键功能模块:通过选择主机、工作区和 worktree 来精确划定任务边界;用 Side Chat 在不打断主线程的情况下做思维分支;用 Plan 模式规划实现路径、用 Goal 设定可验证的持久目标;利用手机本身的能力(截图、拍照、录音)直接喂给任务;以及在手机上完成内联代码审查和 diff 检查,不用等回到电脑前才能推进决策。
整体思路是:识别离开办公桌后真正需要做的决策,让这些决策在手机上快速、清晰地完成。
以下为文章原文:
乍一看,这似乎只是从手机上查看 Codex 任务的一种方式。这确实有用,但它忽略了更重要的点。Codex Mobile 的真正力量在于:让你可以启动、指导、审查和组织运行在开发机器上的工作,而无需把手机当成一个迷你终端来使用。
过去一个月,我们为这个循环增加了大量深度功能:worktrees、goals、side chats、内联代码审查、排队和引导提示、附件、skills 和 plugins、归档线程,以及一系列让应用真正适合严肃工作的细节。
这是我希望每位新进阶用户都能拥有的“现场指南”。这是我在 OpenAI 工作两个月以来,关于如何与 Codex(尤其是 Codex Mobile)协作的各种笔记、技巧和经验总结。
正确的思维模型:你的手机就是控制中心
任务、Codex 运行和代码本身仍然运行在它应该运行的地方——你的 Mac、Windows 机器、开发盒或其他已连接的主机上。Codex Mobile 为你提供了一个原生界面来控制这些工作。
你可以将任何能运行 Codex Desktop 应用 或 Codex CLI 的 macOS 或 Windows 机器设置为主机。更多设置信息请查看我们的文档页面:点击这里 用正确的边界启动任务
优秀的代理工作始于正确范围的环境。Codex Mobile 允许你在首次提示前选择已连接的主机和工作区。对于新线程,你还可以选择分支、创建独立的 worktree,并运行与之关联的环境设置脚本。
这让你可以直接从手机实现几种非常实用的模式:
- 从预期的基准分支开始,而不是之后再修复 Git 状态。
- 让环境设置脚本先运行,再让 Codex 去构建或测试。
没错,最新版本中,你现在可以在移动端访问与桌面 Codex 应用中相同的环境脚本。也就是说,如果你创建一个 worktree,就会看到对应的环境,并在 worktree 创建后自动执行该脚本。
注意:目前还无法在 Codex Mobile 中编辑这些脚本。
使用 Side Chats 作为思维分支
长时间的编码线程会积累大量有价值的上下文。每遇到一个旁枝问题就打断主线程,会让主记录变得混乱,还可能让代理偏离目标。
Side chats 正是为了解决这个问题。
使用 /side 可以打开一个与当前线程关联的轻量级对话。使用 /side <提示> 可以直接带上问题打开。更棒的是,在转录中选中文字并选择 Ask in side chat,选中的段落会成为新对话的起始上下文。
我使用 side chats 来问这类问题:
区别很关键:主线程负责工作,side chat 帮助我理解工作。
这个功能在桌面和移动应用中都可用,我们仍在根据自己和用户的实际使用情况不断优化其体验。
用 Plan 规划路径,用 Goal 明确结果
移动应用完整支持 /goal 和 /plan。应用会显示 plan 工具的问题,以及 /goal 的界面,你可以看到它已经运行了多久、可以编辑、暂停等。
Plan 模式 和 Goal 解决不同的问题:
- Plan 模式 让 Codex 在修改代码前先提出实现路径。适用于任务描述不清晰、有风险,或可能涉及多个系统的场景。
- Goal 是持久性的。它告诉 Codex 要持续追求什么结果。在移动端,/goal 可以创建和管理这个目标,进度会持续可见。
实用模式是:
- 当工作需要多次迭代时,把接受的结果转化为 Goal。
- 让 Codex 继续完成实现、测试、审查反馈和清理,而无需每次都重复目标。
但说实话,大多数时候你甚至不需要直接使用 plan 模式。只要先和 Codex 聊一段时间关于某个问题,等你对实现细节满意了,再让 Codex 把当前内容设为 Goal 即可。
Codex 比我们更擅长写 Goal,所以通常让它自己写是更好的选择。
- Goals 回答:“在完成之前,哪些条件必须成立?”
使用 Goal 时重要的一点是:设定一个可验证的结束状态,不要过于宽泛。如果你告诉 Codex “完全按照 X 或 Y 去做”,它往往会走得太远,浪费大量 token。
不过现在你可以在手机上实时监控 token 使用情况,这已经不是大问题了,对吧?
这是你的手机!
你可能会忘记自己正在用手机操作。我们在输入框里内置了所有访问手机本地数据的工具!
你可以附加照片、拍照、浏览文件、录制提示等等!
这样说可能有点傻,但记住自己是在手机上,能解锁很多强大的工作流,尤其当你在开发移动原生或网页应用时。
例如,我在开发 ChatGPT iOS 版时,每当看到问题,就直接截图发给任务进行快速修复,不用跑回电脑前。
更棒的是,如果我在家且在同一个 Wi-Fi 下,我可以直接在设备上构建并运行应用,来测试 Codex 线程的结果。
你还可以在前台开始提示录音,然后在后台继续!
我还有几个长期置顶的线程,其中一个连接到 Linear 追踪器,我可以快速发送任何文字,线程的当前上下文会自动正确添加并标记对应项目和标签。
无需离开对话即可审查代码
已完成的轮次会显示变更文件的摘要。从这里你可以打开 diff、检查单个文件、展开或折叠部分、自动换行,并用语法高亮打开源文件。你可以对相关行添加内联评论,并把审查上下文发回给 Codex。
审查工作流有几个层次:
- 当你想让 Codex 专门针对某个文件进行推理时,把该文件链接回聊天。
重点不是让手机取代大显示器进行深度代码阅读(它做不到)。重点是:很多审查其实只卡在一两个决策上,而这些决策现在不需要等到我回到办公桌前再做。
保持更新
我们现在为 Codex Mobile 的最新更新维护了变更日志。
我也会经常发布和演示我们最新添加的功能!
更大的启示
最好的移动软件不是把桌面界面缩小。它会识别你在离开办公桌时真正重要的决策,并让这些决策快速、清晰且安全。而我们在这条路上才刚刚起步!
这就是我现在对 Codex Mobile 的理解:它是我选择合适环境、设定目标、重定向运行、回复批准、检查结果,并保持整个工程工作队列连贯的地方。
电脑负责干活,手机负责掌控全局。