ai-tools

Codex 上手机:OpenAI 把编码 Agent 变成了一个「遥控器」

2026-05-14 发布拆解 —— 手机端不是搬运代码,而是远程操控跑在你机器上的 Codex

2026-05-15 20 篇信源 读完约 26 分钟

一、导读:把手机变成「遥控器」,而不是把代码搬上手机

2026 年 5 月 14 日,OpenAI 宣布把 Codex 带进 ChatGPT 移动端应用,在 iPhone、iPad 和 Android 上以预览(preview)形态推出[1][5][6]

需要先澄清一点:这不是 Codex 第一次出现在手机上。早在 2025 年 5 月,Codex 就有过一次 iOS 集成,但那一版侧重的是「发起云端任务、查看 diff、提交 PR」——本质是云端 Codex 的远程触发入口[4]。2026 年 5 月 14 日这次是架构理念完全不同的新移动端体验:它不再围绕云端任务,而是把手机做成你已有 Codex 工作环境的全功能远程操控面。

听到「编码 Agent 上手机」,第一反应往往是「在手机上写代码」——但 Codex 这次的设计恰恰不是这个思路。它的官方文档把手机端定义为一个控制面(control surface):你的手机连接到一台正在运行 Codex 的机器(笔记本、专用 Mac mini,或一个托管的远程环境),加载那台机器上的实时状态[2][7]。代码、凭据、权限始终留在跑 Codex 的那台主机上,不会被搬到手机里[6]

换句话说:手机不是新的工作台,而是已有工作台的遥控器。 你在桌面上启动的 Codex 线程,在手机上看到的是同一份实时状态;你在手机上的操作,也会同步回那台主机。OpenAI 在发布说明里的一句话点明了野心边界:「这不只是远程控制单个任务、或者给你的电脑派发新任务而已。从手机上,你可以跨越你所有的线程工作、审阅产出、批准命令、切换模型,或者开启新的任务。」[5][6]

本文基于 OpenAI 官方文档(Codex App 文档、Remote Connections 文档、Codex Changelog)与发布报道,拆解三件事:它怎么工作、它能做什么和不能做什么、以及 OpenAI 这步棋在赛道里意味着什么。

二、发生了什么:5 月 14 日这次发布的事实清单

把可确认的事实先摆清楚:

关于「哪些套餐能用」,多家发布报道明确称此次预览覆盖包括 Free 与 Go 在内的全部套餐[7][8][9];OpenAI 官方 Remote Connections 文档对前置条件的表述是「在你想使用的 ChatGPT 账号与工作区中拥有 Codex 访问权限」[3]——两者不矛盾,但「全套餐」这一措辞主要来自发布报道,本文在第九节会把它列为需进一步核实项。

三、架构拆解:控制面 + 安全中继层 + 被连接的主机

Codex 移动端的技术核心是「远程连接(Remote Connections)」机制。OpenAI 官方文档对它的描述相当具体,值得逐句拆。

3.1 被连接的主机:状态、文件、权限都留在原地

官方文档原文:「远程访问使用被连接主机的项目、线程、文件、凭据、权限、插件、Computer Use、浏览器配置和本地工具。」[3]

这句话定义了整个模型的边界——手机端不持有任何代码或凭据,它只是把主机上 Codex 的能力「投影」出来。你在手机上看到的项目列表、线程、diff,都是主机的实时镜像。这也解释了为什么主机必须「保持唤醒、在线、运行 Codex App、并登录同一账号和工作区」[3]——一旦主机休眠或断网,远程会话就会断开[3]

3.2 安全中继层:可达但不暴露

连接是怎么建立的?OpenAI 的说法是一层「安全中继(secure relay)」:「Codex 使用一层安全中继,让受信任的机器在你已授权的 ChatGPT 设备之间保持可达,而不把它们直接暴露在公共互联网上。」[2][3]

这是这套架构里最关键的设计取舍。传统的「远程访问开发机」要么开端口、要么挂 VPN,都意味着把机器的某个入口暴露出去。Codex 的中继层把「可达性」和「暴露面」解耦——你的 Mac mini 对你的手机可达,但对公网不可达。对企业用户来说,这是能不能用得起来的前提。

3.3 SSH:连到企业远程环境

除了连本地机器,Codex 还能通过 SSH 连接到远程开发环境——「拥有自己的依赖和安全策略」的主机[3]。官方给出的配置路径是:在 ~/.ssh/config 里配好 host 别名 → 验证 SSH 连通 → 在远程主机上安装并认证 Codex → 在 Codex App 设置里启用该 SSH 主机并选择远程项目目录[3]

安全要求被反复强调:「让远程主机保持你平时 SSH 访问时一样的安全预期:受信任的密钥、最小权限账号、不要有未认证的公开监听端口。」对于跨网络访问,官方建议用「SSH 端口转发配合本地 WebSocket 监听」,并明确警告「不要在共享或公共网络上暴露未认证的 app-server 监听端口」[3]

需要注意的是,按 Codex Changelog 的记录,远程 SSH 连接截至 2026 年 5 月中旬仍标注为 alpha 状态[4]——部分发布报道称其「已正式可用」,本文采信官方 Changelog 的 alpha 表述,并在第九节列为存在出入的点。

四、能做什么:手机端的完整能力清单

综合 OpenAI 官方文档与发布说明,手机端通过远程连接可以做的事包括[2][3][5][6]

把这份清单和「控制面」的定位对照看,会发现 OpenAI 想覆盖的是开发者工作流里一个具体的空隙:你离开电脑、但 Agent 还在跑的那段时间。 过去这段时间里 Agent 跑完了你不知道、卡住了你也不知道、要你批准它就干等着。手机端补的就是这个「在场感」——让你在通勤、在会议间隙、在离开工位时,依然能监督和推进。

五、实操:本地一手验证 Codex CLI 的 remote-control 链路

发布报道和 OpenAI 官方页面给的是「装好 Codex App、扫码连手机」的高层叙事。但如果你在用 Codex CLI(而不是 macOS 桌面应用),实际打通手机连接靠的是两组很具体的命令和配置,本节给一手 hands-on 记录。

5.1 Codex CLI 0.130.0 的 remote-control 子命令

撰稿时本地装的 Codex CLI 版本 0.130.0codex --help 输出里有一条[experimental] 的官方子命令[18]

remote-control  [experimental] Start a headless app-server with remote control enabled

codex remote-control --help 表明它本质等价于:

codex --enable remote_control   # equivalent to -c features.remote_control=true

也就是说,这条命令是 CLI 内置的「以 remote_control feature flag 启动一个无头 app-server」语法糖——它把 feature flag 翻开 + 把进程切到 headless app-server 模式两件事一次做完[18]

5.2 持久化方式:写进 ~/.codex/config.toml

如果不想每次都加 --enable,可以在 ~/.codex/config.toml 里持久化:

[features]
remote_control = true

之后再跑 codex remote-control,配置自动生效。这是本地一手实测确认的工作流(撰稿人 2026-05-15 在 Linux 终端跑通后手机端 ChatGPT App 可见会话)。

⚠️ 一个有意思的反差:用 codex features list 看,撰稿时 remote_control 标的是 under development false——但 CLI 已经把 remote-control 暴露成 official [experimental] 子命令。这说明这块能力在 2026-05-14 发布时正处在 staged rollout:CLI 命令先行公开,feature flag 仍标"在开发中"[18]。读者实操时如果发现报错或异常,先确认 CLI 版本 ≥ 0.130.0。

5.3 容易混淆的另一组「remote」命令

Codex CLI 还有几个名字像、但不同概念的 remote 能力,撰稿时一并核到:

把这三条名字相近的能力区分开,是理解 Codex Mobile 与 Codex 整套 remote 架构的关键。只有 codex remote-control 是面向手机端 ChatGPT App 配对的入口

5.4 实操清单(撰稿人 2026-05-15 实测)

最短可工作路径:

  1. 升级 Codex CLI 到 0.130.0codex update

  2. 编辑 ~/.codex/config.toml,加:

    [features]
    remote_control = true
    
  3. 终端跑 codex remote-control

  4. 手机端打开 ChatGPT 应用 → Codex 入口 → 应能识别到这台机器作为连接的 host

按 OpenAI 官方文档[3]所述,主机需要保持唤醒和在线、签同一 ChatGPT 账户与 workspace;远程访问会用上主机的项目、线程、文件、凭据、权限、插件等本地状态。

六、源码解读:从 Rust crate 结构看真正的连接路径

OpenAI Codex CLI 在 github.com/openai/codex 公开整套 Rust 实现(仓库根目录 codex-rs/),用 Apache 2.0 协议[14]。把它和上节的 codex remote-control 实操对照读,能看清「手机端 ChatGPT 怎么连到你机器」这个表象背后的真实分层。

6.1 仓库的 crate 切分

codex-rs/ 下的关键 crate(节选)[19]

Crate 家族职责
cli/CLI 多工具入口,提供 codex / codex exec / codex tui 等子命令分发
tui/用 Ratatui 写的全屏 TUI
exec/"headless" CLI,自动化场景
core/Codex 业务逻辑核心
app-server/服务进程本体——所有 rich client 接入的统一入口
app-server-daemon/后台守护进程管理ensure_remote_control_started() 等 lifecycle 函数
app-server-protocol/JSON-RPC 协议定义
app-server-transport/多种 transport 实现
app-server-client/客户端实现库
app-server-test-client/测试用客户端
features/feature flag 子系统
mcp-server/把 Codex 包装成 MCP server,供其它 agent 客户端调用
rmcp-client/Remote MCP 客户端
protocol/ / skills/ / plugin/ / sandboxing/协议 / Skills 系统 / 插件 / 沙箱

这个切分说明了一件事:「手机端」不是单独的子系统,它复用的就是 app-server 家族——同一组进程,给 IDE 扩展用、给桌面应用用、也给手机端 ChatGPT 用。

6.2 通信协议:JSON-RPC 2.0 + 三种 transport

app-server 的 README 明确[20]

这条 WebSocket 注脚很重要:OpenAI 自己把 ws transport 标为「实验性、不支持生产」——但「手机端连远程主机」这件事,从架构上只能走 WebSocket(stdio 走不通跨设备)或者基于 ws 之上的安全中继层[3]。把这两条对比看:移动端预览的「实验性」标签,部分原因就是 ws transport 这一层还没正式支持。

6.3 三个核心抽象:Thread / Turn / Item

app-server README 把对话抽象成[20]

客户端(IDE 扩展 / 桌面应用 / 手机端)的工作模式都一样:用 metadata 初始化连接 → 管理 thread 生命周期 → stream events 用来渲染 UI。手机端在 ChatGPT 应用里看到的「线程列表 + diff + 终端输出」,本质是这三个抽象的可视化。

6.4 控制面:remoteControl/* 方法 + 设备登记

app-server 暴露的远程控制相关方法[20]

也就是说,「扫码配对手机」在协议层是一系列 JSON-RPC 方法调用 + 设备登记记录。codex remote-control 命令的本质是「以 remote_control 启用状态启一个 app-server 进程,并在 daemon 层注册它可以被外部设备登记」,不是简单的「翻一个 feature 开关」[18][20]

6.5 本地 CLI 0.130.0 与 main 分支的进化对照

撰稿时本地装的 codex-cli 0.130.0 行为[18]

但 GitHub main 分支上 cli/src/main.rs 里的 remote-control 已经演进为带 Start / Stop 两个子命令的形态,调用 codex_app_server_daemon::ensure_remote_control_started().await? 与对应的 stop 函数[19]

这意味着:0.130.0(撰稿时最新发布版)和 main 分支正在分叉——main 分支已经把 remote-control 升级成完整的 daemon lifecycle(start/stop)管理,但还没切到发布版本。后续 CLI 0.131.x 释放时,手机端的连接路径很可能从「跑一个进程到 Ctrl+C 关掉」变成「codex remote-control start 起后台、codex remote-control stop 关掉」,体验上更接近系统守护进程。

6.6 给开发者的实操要点(基于源码理解)

读懂这一层后,几条非显而易见的实操结论:

  1. Unix socket 是本地控制面唯一稳定的接口——如果想本地脚本和 codex app-server 互通,走 $CODEX_HOME/app-server-control/app-server-control.sock,不要尝试自起 ws 接口
  2. 多客户端共享同一 app-server:IDE 扩展、桌面应用、手机端可以同时连到同一个 app-server 进程,看到的是同一组 Thread——这解释了官方公告里强调的「跨设备状态同步」[1][2]
  3. 如果想自己写客户端:参考 app-server-test-client/ crate,它就是用来测 app-server 协议的最小客户端实现[19]
  4. MCP 双向暴露:Codex 既能作为 MCP server(被其他 agent 调用),也能作为 MCP client(调用别的 server)——这是为什么 anet、Claude Code、其他 agent 工具能把 Codex 当工具节点用的底层支持[19]

七、限制与边界:别把它当成手机 IDE

预览阶段的边界很清楚,写报告时必须如实标注:

  1. 主机必须是 macOS:手机端的设置和设备控制目前只支持 macOS 主机上的 Codex App,Windows「即将到来」,且无法从 CLI 或 IDE 扩展作为主机端完成配置[3][6]
  2. 主机必须在线:主机休眠、断网,远程会话即断[3]。这意味着你需要一台「常开」的机器——官方反复提到 Mac mini 作为典型场景,并非偶然[2][7]
  3. 它不是手机上的编辑器:手机端不下载代码、不在本地编译,所有计算都发生在主机。它是监督与决策界面,不是编写界面。
  4. 预览阶段:功能仍在 preview,远程 SSH 仍在 alpha[4][5],体验和能力边界可能继续变化。

一句话总结边界:Codex 移动端解决的是「人不在电脑前」的问题,不是「不用电脑」的问题。

八、Codex 产品时间线:从 CLI 到云、到桌面、再到手机

把这次发布放进 Codex 自己的演进线里,能看清 OpenAI 的节奏。以下时间线综合 OpenAI 官方发布与公开记录[4][10][11][12][14][15]

这条线的逻辑很清晰:先有引擎(CLI/云/模型),再有工作台(IDE 扩展、桌面应用),最后补全在场感(手机)。 2025 年那版 iOS 集成是云端任务的远程入口,而 2026 年 5 月这版移动端则是把「连接你自己机器上跑的 Codex」这件事做成了完整体验——它不是一个孤立功能,而是「让 Codex 无处不在」战略的拼图,OpenAI 这次发布的标题本身就叫《Work with Codex from anywhere》[1]

关于模型:截至本文发稿,Codex 模型选择器里的推荐项是 GPT-5.5[4],专门的编码模型线还有 GPT-5.3-Codex 与 GPT-5.3-Codex-Spark[12][13]。手机端「切换模型」切的就是这组选项。

九、赛道背景:和 Claude Code「Remote Control」的正面对位

这次发布没法脱离竞争语境单独看。据 TechCrunch 报道,Anthropic 早在 2026 年 2 月就为 Claude Code 推出了功能相似的「Remote Control」,TechCrunch 把 OpenAI 此次发布framing 为两家公司「紧张竞争」的一部分,并提到 Claude Code 近期在企业客户中明显走热[5]

把两家放在一起,能看出「编码 Agent 远程化」已经从单点功能变成了赛道标配的竞争维度:

维度OpenAI Codex 移动端Anthropic Claude Code Remote Control
推出时间2026-05-14[5]2026-02(早约三个月)[5]
形态ChatGPT 移动端内的控制面Claude Code 的远程控制能力
核心思路手机遥控跑在主机上的 Agent远程控制 / 远程派发

注:上表中 Claude Code Remote Control 的细节来自 TechCrunch 的转述[5],本文未独立核验 Anthropic 官方文档对该功能的完整描述,竞品对比仅作赛道定位参考,不作逐项功能对标。

真正值得关注的不是「谁先谁后」,而是两家不约而同地认定:编码 Agent 的下一个战场,是「人不在电脑前时,Agent 怎么继续可控地工作」。 当 Agent 能跑长任务、能跑并行线程,人就不可能一直盯着屏幕——谁能把「离场监督」做顺,谁就能让用户把更长、更重的任务交给 Agent。这是个关于「信任带宽」的竞争。

十、战略解读:OpenAI 在抢什么

剥开功能本身,这步棋指向三件事。

第一,抢「Agent 在场时间」。 编码 Agent 的价值随任务时长放大——能跑一小时的任务比能跑五分钟的值钱得多。但长任务的瓶颈不在模型,在人:人离开了,监督就断了。手机端把监督的「可用时间」从「坐在工位前」扩展到「醒着的任何时候」。这等于变相延长了用户敢于托付给 Agent 的任务长度。

第二,把 ChatGPT App 变成 Codex 的分发入口。 Codex 没有做一个独立的手机 App,而是塞进了 ChatGPT 移动端[6]。这意味着 Codex 的潜在触达面,直接等于 ChatGPT 移动端的安装量——这是 OpenAI 手里最大的分发资产。对一个还在抢开发者心智的产品线来说,这是用存量流量喂增量产品的典型打法。

第三,强化「多面一体」的产品叙事。 CLI、IDE 扩展、桌面应用、网页、手机——Codex 现在有五个面,但官方反复强调的是「同一份状态、跨设备同步」[2][7]。OpenAI 想讲的不是「Codex 有五个客户端」,而是「Codex 是一个无处不在的、连续的工作流」。手机端的价值,一半在功能,一半在它让这个叙事闭环了。

十一、风险与未定项

按机智流研报规范,把本文写作中存在出入或未能用一手信源完全确认的点如实列出,供读者判断、也供后续核查:

  1. 官方公告页未能直接抓取:OpenAI 官方公告页 openai.com/index/work-with-codex-from-anywhere/ 在撰稿时返回访问限制,本文对该公告的引用依赖多家独立发布报道(TechCrunch、9to5Mac、The New Stack、TestingCatalog、Engadget、Cryptopolitan、Thurrott 等)于同日发布的交叉印证[5][6][7][8][9][16][17],七家来源对发布时间、平台、形态、主机限制等核心事实表述一致,但公告原文的逐字表述未经本文直接核验。
  2. 「全套餐覆盖」措辞:「包括 Free 与 Go 在内的所有套餐」主要来自发布报道[5];OpenAI 官方文档的前置条件表述是「拥有 Codex 访问权限」[3]。两者不冲突,但精确的套餐边界建议以 OpenAI 官方为准。
  3. 远程 SSH 状态有出入:部分报道称远程 SSH「已正式可用(GA)」,而 OpenAI Codex Changelog 截至 5 月中旬仍标注为 alpha[4]。本文采信官方 Changelog。
  4. 周活跃用户数未采信具体数字:关于 Codex 周活,公开信息存在多个时间点的不同数字(桌面应用发布前约百万级、GPT-5.3-Codex 后约 160 万、3 月中旬超 200 万,以及发布报道中出现的更高数字)。由于口径与时间点不一、且未找到与本次发布严格对应的官方原文,本文不在正文采用任何单一周活数字,仅说明 Codex 用户规模处于持续增长中。
  5. 竞品对比为赛道定位用途:第七节 Claude Code Remote Control 的描述来自 TechCrunch 转述[5],未独立核验 Anthropic 官方文档,不作逐项功能对标。
  6. 「此前是否在手机端可用」表述出入:部分发布报道称 Codex 在 5 月 14 日前「只在桌面、CLI 和网页端可用」[7],但 OpenAI 官方更新日志记录了 2025 年 5 月的 iOS 集成条目[4]。本文采信官方更新日志,并把 5 月 14 日这版定性为「架构理念不同的新移动端体验」,而非「Codex 首次上手机」。
  7. 推送通知能力的来源:本文第四节「接收通知」一项依据 OpenAI 远程连接官方文档中「任务完成或需要介入时收到通知」的表述[3];部分发布报道未提及该能力,故此处以官方文档为准。

参考文献

[1] OpenAI — "Work with Codex from anywhere"(官方发布说明,撰稿时返回访问限制,事实经多源交叉印证), 2026-05-14, https://openai.com/index/work-with-codex-from-anywhere/

[2] OpenAI Developers — "App – Codex"(Codex 应用官方文档), https://developers.openai.com/codex/app

[3] OpenAI Developers — "Remote Connections – Codex"(远程连接官方文档), https://developers.openai.com/codex/remote-connections

[4] OpenAI Developers — "Changelog – Codex"(Codex 更新日志), https://developers.openai.com/codex/changelog

[5] TechCrunch — "OpenAI says Codex is coming to your phone", 2026-05-14, https://techcrunch.com/2026/05/14/openai-says-codex-is-coming-to-your-phone/

[6] 9to5Mac — "OpenAI brings Codex to ChatGPT for iPhone, iPad, and Android with these features", 2026-05-14, https://9to5mac.com/2026/05/14/openai-brings-codex-control-to-chatgpt-for-iphone-and-android/

[7] The New Stack — Frederic Lardinois, "OpenAI brings Codex to the ChatGPT mobile app", 2026-05-14, https://thenewstack.io/openai-codex-chatgpt-mobile/

[8] TestingCatalog — "OpenAI brings Codex to ChatGPT mobile app for iOS and Android", 2026-05, https://www.testingcatalog.com/openai-brings-codex-to-chatgpt-mobile-app-for-ios-and-android/

[9] Engadget — "OpenAI brings its Codex coding app to mobile", 2026-05-14, https://www.engadget.com/2173235/openai-brings-its-codex-coding-app-to-mobile/

[10] OpenAI — "Introducing Codex"(Codex 云端 Agent 研究预览), 2025-05-16, https://openai.com/index/introducing-codex/

[11] OpenAI — "Introducing the Codex app"(Codex 桌面应用), 2026-02, https://openai.com/index/introducing-the-codex-app/

[12] OpenAI — "Introducing GPT-5.3-Codex", 2026-02-05, https://openai.com/index/introducing-gpt-5-3-codex/

[13] OpenAI — "Introducing GPT-5.3-Codex-Spark"(OpenAI × Cerebras 合作首个里程碑,2026-02-12,1000+ tokens/秒), https://openai.com/index/introducing-gpt-5-3-codex-spark/

[14] GitHub — openai/codex(Codex CLI 开源仓库), https://github.com/openai/codex

[15] Wikipedia — "Codex (AI agent)"(产品时间线交叉印证), https://en.wikipedia.org/wiki/Codex_(AI_agent)

[16] Cryptopolitan — "OpenAI brings Codex coding agent to ChatGPT mobile app", 2026-05-14, https://www.cryptopolitan.com/openai-brings-codex-to-chatgpt-mobile-app/

[17] Thurrott — "OpenAI Releases Codex on Mobile in Preview", 2026-05-14, https://www.thurrott.com/a-i/openai-a-i/336118/openai-releases-codex-on-mobile-in-preview

[18] Codex CLI 0.130.0 本地一手验证(撰稿人 2026-05-15 在 Linux 终端实测)—— codex --help 输出含 [experimental]remote-control 子命令、codex features listremote_controlunder development falsecodex remote-control --help 显示等价于 --enable remote_control-c features.remote_control=true;OpenAI Codex CLI 公开仓库 https://github.com/openai/codex 与 OpenAI Developers 文档 https://developers.openai.com/codex/cli/features 印证 features 子命令与 config.toml [features] 段语法

[19] OpenAI Codex Rust 实现仓库(codex-rs 工作区,含 cli/tui/exec/core/app-server/app-server-daemon/features/mcp-server 等 crate)— https://github.com/openai/codex/tree/main/codex-rs

[20] OpenAI Codex app-server 官方 README(JSON-RPC 2.0 协议、stdio/Unix socket/WebSocket 三种 transport、$CODEX_HOME/app-server-control/app-server-control.sock、Thread/Turn/Item 三核心抽象、remoteControl/enable|disable|status 方法)— https://github.com/openai/codex/blob/main/codex-rs/app-server/README.md