Codex Desktop App 支持SSH远程连接了,附操作指南

lxiol
📝
如果你的代码、依赖、数据库、测试环境不在当前电脑上,而是在 Mac mini、Linux 服务器、VPS 或公司开发机上,那么新版 Codex Desktop App 的 Remote Connections / 远程连接 功能很值得关注。

原文链接:https://mp.weixin.qq.com/s/sc5Jq3T3iwhzuAQRC8D-4Q

如果你的代码、依赖、数据库、测试环境不在当前电脑上,而是在 Mac mini、Linux 服务器、VPS 或公司开发机上,那么新版 Codex Desktop App 的 Remote Connections / 远程连接 功能很值得关注。

大家好,我是王胖纸,Atlasnote的独立开发者。

今天想要和大家分享的是Codex desktop app的新功能,SSH远程连接开发。

如果你的代码、依赖、数据库、测试环境不在当前电脑上,而是在 Mac mini、Linux 服务器、VPS 或公司开发机上,那么新版 Codex Desktop App 的 Remote Connections / 远程连接 功能很值得关注。

它可以让你在本地 Codex Desktop App 里,通过 SSH 连接到远程机器,然后让 Codex 在远程机器上读代码、改代码、跑命令、执行测试。

这对多设备开发、远程服务器开发、本地长期运行项目的人非常实用。

它依赖两个前提

在配置 Codex App 之前,先搞清楚一件事:

Codex 远程连接不是单独存在的,它依赖 SSH 和远程 Codex CLI。

你至少要满足两个条件:

1
2
`第一,本地电脑能通过 SSH 登录远程机器;
第二,远程机器上已经安装并能运行 Codex CLI。`

也就是说,在打开 Codex App 填表之前,最好先在终端里确认两件事:

1
2
`1. 你能通过 SSH 登录远程机器;
2. 登录远程机器后,能正常运行 codex 命令。`

更稳妥的操作顺序是:

1
2
3
4
5
`1. 在远程 Mac 上开启 SSH 远程登录
2. 在本地 Mac 终端里测试能否 SSH 登录远程机器
3. 确认远程机器上能运行 Codex CLI
4. 开启 Codex Desktop App 的远程连接功能
5. 在 Codex App 里添加远程连接`

其中第五步有两种填写方式:

1
2
`方式 A:直接填写 用户名@远程机器地址,适合快速测试
方式 B:通过 ~/.ssh/config 配置 SSH 别名,适合长期使用和多机器管理`

下面我们按这个顺序来给出实际操作指南。

第一步:在远程 Mac 上开启 SSH 远程登录

在连接 Codex App 之前,先要确认远程机器允许被 SSH 登录。

如果你的远程机器是 Mac mini,需要在 Mac mini 本机 上打开:

1
`系统设置 → 通用 → 共享 → 远程登录`

把 远程登录 打开。

打开后,系统通常会显示一行提示,类似:

1
`若要远程登录这台电脑,请键入:ssh 用户名@这台电脑的地址`

这里的 用户名,就是后面 SSH 命令里 @ 前面的部分。

如果不确定用户名是什么,可以在 Mac mini 本机终端里执行:

1
`whoami`

输出什么,SSH 命令里的用户名通常就写什么。

如果你通过 Tailscale 连接远程 Mac,可以在 Tailscale 里找到这台 Mac 的地址。文章里统一用下面这种脱敏写法表示IP地址:

1
`100.84.xxx.xxx`

真正操作时,把它替换成你自己的 Tailscale IP 或 MagicDNS 地址即可。

第二步:在本地 Mac 终端里测试 SSH 登录

这一步是在你的 本地 MacBook / MacBook Air 的终端 里操作,不是在 Codex App 里操作。

打开终端后,输入:

1
`ssh 用户名@远程机器地址`

例如:

1
`ssh Selena@100.84.xxx.xxx`

第一次连接时,终端可能会提示是否信任这台主机。输入:

1
`yes`

然后回车。

接着会提示输入密码:

1
`Password:`

这里输入的是 远程 Mac mini 上这个用户的登录密码,不是 Apple ID 密码。输入时终端不会显示任何字符,直接输入密码后回车即可。

登录成功后,你当前这个终端窗口就已经进入远程 Mac 的命令行环境。可以执行:

1
2
3
`whoami
hostname
pwd`

如果 hostname 显示的是远程 Mac 的名字,说明 SSH 已经连通。

第三步:确认远程机器上能运行 Codex CLI

接下来要确认远程机器上已经安装 Codex CLI。

先 SSH 登录远程机器。如果你已经配置过 SSH 别名,可以这样登录:

1
`ssh macmini`

如果还没有配置别名,也可以直接用用户名和地址登录,例如:

1
`ssh Selena@100.84.xxx.xxx`

登录成功后,在远程机器上执行:

1
2
`which codex
codex --version`

如果能看到 Codex 的路径和版本号,说明远程机器上的 Codex CLI 可以正常使用。

你还可以直接执行:

1
`codex`

确认 Codex CLI 能正常启动。

第四步:开启 Codex Desktop App 的远程连接功能

在你已经能通过 SSH 登录远程机器,并确认远程 Codex CLI 可用之后,才轮到配置 Codex Desktop App。

在本地电脑上编辑 Codex 配置文件:

1
`nano ~/.codex/config.toml`

加入下面这段:

1
2
`[features]
remote_connections = true`

保存后,彻底退出并重启 Codex Desktop App。

这段配置的作用是打开 Codex App 里的远程连接功能入口。官方文档也说明:如果远程连接入口还没有出现,可以在 ~/.codex/config.toml 里启用这个 alpha feature flag。

注意,这个配置是写在本地电脑上的,不是写在远程机器上。

也就是说,如果你是在 MacBook 上使用 Codex Desktop App,就在 MacBook 的:

1
`~/.codex/config.toml`

里添加这段。

第五步:在 Codex App 里添加远程连接

重启 Codex Desktop App 之后,进入:

1
`Codex App → Settings → Connections → Add connection`

这里会看到一个添加连接的窗口,通常有四个字段:

1
2
3
4
`Display name
HostName
SSH port
Identity file`

这个窗口的作用是:手动添加一个 SSH 远程主机。

假设你要连接的是家里的 Mac mini,并且 Mac mini 的 Tailscale IP 是:

1
`100.84.xxx.xxx`

Mac mini 上的用户名是:

1
`Selena`

这里有两种填写方式。

方式 A:直接填写用户名和远程地址

这是最直接的方式,适合快速测试。

1
2
3
4
5
6
7
8
9
10
11
`Display name
macmini

HostName
Selena@100.84.xxx.xxx

SSH port
22

Identity file
先留空`

也就是:

字段

填什么

解释

Display name
macmini
你自己看的名字,可以随便起

HostName
Selena@100.84.xxx.xxx
远程 Mac 的用户名 + 远程机器地址

SSH port
22
SSH 默认端口

Identity file

先留空

如果连接失败,再考虑指定私钥路径

如果你只是想先确认 Codex App 能不能连上远程机器,可以先用方式 A。

方式 B:通过 ~/.ssh/config 配置 SSH 别名

如果你准备长期使用,或者以后要管理多台远程机器,更推荐方式 B。

先在本地 Mac 的终端里打开 SSH 配置文件:

1
`nano ~/.ssh/config`

加入类似下面的配置:

1
2
3
4
`Host macmini
 HostName 100.84.xxx.xxx
 User Selena
 Port 22`

这里的意思是:

1
2
3
4
`Host macmini = 给这台远程机器起一个别名
HostName 100.84.xxx.xxx = 远程机器的真实地址
User Selena = 登录远程机器使用的用户名
Port 22 = SSH 默认端口`

保存后,在终端里测试:

1
`ssh macmini`

如果可以正常登录,说明这个 SSH 别名配置成功。

然后回到 Codex App 的连接窗口,这样填:

1
2
3
4
5
6
7
8
9
10
11
`Display name
macmini

HostName
macmini

SSH port
22

Identity file
留空`

也就是:

字段

填什么

解释

Display name
macmini
你自己看的名字,可以随便起

HostName
macmini``~/.ssh/config
里配置的 SSH 别名

SSH port
22
SSH 默认端口

Identity file

先留空

如果 ssh macmini 已经能正常登录,通常可以先不填

方式 B 的好处是:以后如果远程 IP、用户名、密钥路径变化,只需要改 ~/.ssh/config,不用在每个工具里重新改。

Identity file 要不要填?

这个字段最容易让人困惑,单独解释一下。

一般先不填。

只有当你平时 SSH 需要指定私钥时,才需要填。

例如你的私钥路径是:

1
`/Users/Selena/.ssh/id_ed25519`

那可以填这个路径。

对应的 SSH 配置可能长这样:

1
2
3
4
5
`Host macmini
 HostName 100.84.xxx.xxx
 User Selena
 Port 22
 IdentityFile ~/.ssh/id_ed25519`

如果你不确定,就先留空。

判断标准很简单:

1
`ssh macmini`

或者:

1
`ssh Selena@100.84.xxx.xxx`

如果这两条命令已经能正常登录,Identity file 通常就不用填。

保存后做什么?

填写完成后,点击:

1
`Save`

保存连接。

接下来,会显示连接成功,接着在Codex 远程连接配置界面中选择Creat a remote projects,会让你选择远程机器上的项目目录,例如:

1
`/Users/Selena/Projects/Atlasnote`

选好项目目录后,Codex 就可以在这个远程项目里工作。

你可以先让它执行一些低风险任务,例如:

1
`请先查看当前项目结构,不要修改文件。`

或者:

1
`运行 git status,并告诉我当前工作区是否干净。`

再进一步让它跑测试:

1
`请运行 npm test,检查当前项目是否能通过测试。`

不要一上来就让它大规模改代码。先确认它确实进入了正确的远程目录、能读取项目、能运行命令,再交给它更复杂的任务。

如果保存后连接失败,不要直接怀疑 Codex App。先回到终端分别测试:

1
2
`ssh macmini
ssh macmini "which codex"`

这样能快速判断问题到底出在 SSH 连接,还是远程机器上的 Codex CLI。

常见问题排查

1. SSH 连接不上

先不要管 Codex App,先单独解决 SSH。

测试:

1
`ssh 用户名@远程机器地址`

如果失败,常见原因包括:

1
2
3
4
5
6
`远程机器没有开启 SSH
用户名写错
IP 地址写错
端口不对
当前网络无法访问远程机器
Tailscale 没有连接成功`

如果远程机器是 Mac mini,检查:

1
`系统设置 → 通用 → 共享 → 远程登录`

2. SSH 直连可以,但 ssh macmini 不行

这说明 SSH 别名配置有问题。

检查:

1
`cat ~/.ssh/config`

确认格式类似这样:

1
2
3
4
`Host macmini
 HostName 100.84.xxx.xxx
 User Selena
 Port 22`

注意:

1
2
3
4
`Host 后面是别名
HostName 后面是真实地址
User 是远程机器用户名
文件路径是本地电脑上的 ~/.ssh/config`

3. SSH 能连上,但 Codex App 连接失败

大概率是远程机器上的 codex 命令找不到。

在本地执行:

1
`ssh macmini "which codex"`

如果没有输出,说明远程 login shell 找不到 Codex。

这时需要检查远程机器的 shell 配置,比如:

1
`echo $PATH`

以及 Codex CLI 的实际安装位置。

4. Codex App 里看不到 Connections

先确认本地配置文件内容:

1
`cat ~/.codex/config.toml`

应该能看到:

1
2
`[features]
remote_connections = true`

然后彻底退出并重启 Codex Desktop App。

如果还是没有入口,可能和当前 App 版本、账号状态或功能灰度有关。这个功能目前仍带有实验性质,不一定所有环境都完全一致。

5. 不要把远程 app server 暴露到公网

这一点很重要。

Codex 远程连接适合通过 SSH 使用,不要随便把远程 app server 直接暴露到公网。

OpenAI 关于 Codex app server 的文档也提醒:loopback listener 适合 localhost 和 SSH port forwarding;如果把非本地 WebSocket listener 暴露出去,需要先配置认证,不要把未认证服务暴露在共享或公网环境中。

务实建议:

只通过 SSH 连接,不要手动开放 Codex app server 端口到公网。

尤其是多人共享服务器、公司服务器、云服务器,更要谨慎。

总结

Codex Desktop App 支持 SSH 远程连接之后,它就不只是一个“本地 AI 编程助手”了。

它更像是一个可以连接多个开发现场的控制台:

1
2
3
4
5
`MacBook 本地项目
Mac mini 项目
Linux 服务器项目
VPS 项目
公司 devbox 项目`

最稳妥的第一步,不是打开 Codex App 设置,而是先在终端里确认两件事:

1
2
`能 SSH 登录远程机器;
远程机器上能运行 codex 命令。`

只要这两个条件满足,Codex Desktop App 的远程连接才真正有效。

如果你对Atlasnote 感兴趣,可以到官网:atlasnote.ai 下载免费试用。也可以参考这篇Atlasnote使用指南。

AtlasNote 完整使用指南 v1.0:从零构建你的专属知识地图

如果你是一个AI新手,想要进阶了解更多AI知识,可以了解一下我的AI新手进阶65课:

全网最贴心AI教程:注册、付费、Prompt,使用指南、私藏工具,Agent….你想要的都在这里了


💬 本文评论区已开启,但暂无读者留言。

本文转载自微信公众号,如有侵权请联系删除。

  • 标题: Codex Desktop App 支持SSH远程连接了,附操作指南
  • 作者: lxiol
  • 创建于 : 2026-04-29 20:22:07
  • 更新于 : 2026-05-12 16:07:03
  • 链接: https://blog.lxiol.cn/2026/04/29/Codex-Desktop-App-支持SSH远程连接了附操作指南/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。