本项目的目标是:只用配置本地的Codex,就可以通过SSH管理所有远程服务器。
传统方案通常有几个问题:
- 把 Codex 部署到远端成本高:需要单独配置代理、Codex 登录、API 中转或Auth
- 本地和远端会话割裂:远端单独运行 Codex 后,会话、上下文、模型选择和中转配置与本地环境分离。
- 远端会话可能暴露:多人共用服务器时,远端 Codex 的登录状态、会话记录和配置容易被其他用户看到。
- 本地 Codex 直接操作远端不顺手:Windows PowerShell 语法、SSH 非登录 shell 的 PATH、文件上传下载和补丁应用经常互相干扰。
- 没有
apply_patch时容易退回粗暴改文件:AI 可能使用 heredoc、sed 或git apply重写文件,增加误改和上下文丢失风险。
本项目采用一个轻量的 Codex Remote Patch Bridge:
本地 Codex
│
└── 本地 MCP:mcp-ssh-apply-patch
│
└── @aiondadotcom/mcp-ssh
│
└── SSH 连接远端
│
└── ~/.local/bin/apply_patch
│
└── 远端 Codex 可执行文件
远端只需要一个很薄的 apply_patch wrapper。wrapper 直接调用远端 Codex 的绝对路径,避免 SSH MCP 的非登录 shell 找不到 codex。
本地 MCP 的显示名默认为:
mcp-ssh-apply-patch
- 会话中转特别统一:只在本地配置一次 Codex;切换模型、中转或账号时,不需要在每台服务器重复配置。
- 无需登录特别省事:远端只负责执行本地 patch parser,不需要登录 OpenAI、配置 API key 或连接中转站。
- 多人共用特别安全:远端不保存本地 Codex 会话、账号和中转配置。
- 手机控制特别方便:手机即可控制所有远程会话,真正实现手机办公。
- 修改代码特别直接:AI 不需要先把代码拉回本地再上传,直接通过 SSH 在远端执行
apply_patch。 - 一键配置特别简单:只需要提供远端 SSH profile、Codex 路径和 MCP 名称,其他 AI 就能按指导书完成配置。
把本仓库链接交给 AI,并使用类似下面的指令:
请按照这个仓库的 GUIDE.md,帮我配置本地 Codex MCP 和远端环境 xxx。
如果信息不完整,AI 必须先询问:
- 远端 SSH profile 或 host alias 是什么;
- 远端
apply_patch放在哪里;默认是~/.local/bin/apply_patch; - 远端 Codex 可执行文件在哪里;
- 新 MCP 的显示名称;默认是
mcp-ssh-apply-patch。
欢迎Star、Issue、Pull Request、Feedback!