0xcaff/codex-web

a browser frontend for codex desktop, running on a machine you control.

什么是 codex‑web

codex‑web 是一个轻量级的 Node.js 包装器,为 Codex Desktop AI 代理平台提供浏览器界面,让您从任何设备控制代理,而后台运行在您信任的机器上(如笔记本电脑、家庭服务器、云虚拟机等)。

实际上它:

  1. 启动一个 Node.js 服务器,提供一个网页 UI。
  2. 将该 UI 连接到 codex CLI(Codex Desktop 代理平台的命令行客户端)。
  3. 将重负载任务——文件访问、凭证使用、命令执行——保留在主机上,而不是在浏览器中执行。

结果是一个轻量级的包装器,使原本仅限桌面的体验可以通过手机、平板或任何远程计算机访问,而无需在这些设备上安装完整的桌面 UI。


为什么它存在?

原始的 Codex Desktop 在终端窗口中运行,对于长时间运行的代理或在未安装桌面客户端的设备上使用该工具来说非常不便。通过将 UI 暴露在 HTTP 上,您可以:

  • 关闭笔记本电脑后仍让代理持续运行。
  • 从任何带有浏览器的设备重新连接。
  • 将后端保留在可信机器上,保留对本地文件、凭证和已登录的 OpenAI 账户的访问权限。

如何运行它

  1. 前提条件 – 在主机上安装并登录 codex CLI(使用 codex login --device-auth)。
  2. 启动服务器 – 可通过 npx 或 Nix 启动:
    npx --yes github:0xcaff/codex-web   # 一行命令,无需安装
    # 或者
    nix run github:0xcaff/codex-web
    
  3. 在浏览器中打开 http://127.0.0.1:8214(或您配置的地址)。

高级:代理到外部应用服务器

如果您希望 Codex 应用服务器 独立于 web 包装器运行(这样 codex‑web 崩溃不会导致代理进程终止),可以手动启动应用服务器,并使用提供的 codex_remote_proxy 脚本将 codex‑web 指向其 Unix 套接字。README 中包含确切的命令序列。


安全注意事项

由于 Web UI 可以执行主机用户能执行的任何命令,任何能够访问服务器的网络对等方都将获得对主机的完全控制权。建议:

  • 仅在可信网络上运行服务器。
  • 将其置于 VPN、WireGuard、Tailscale 或 SSH 隧道之后。
  • 如需更严格的访问控制,可添加外部反向代理或认证网关。

当前功能

  • 支持 macOS、Linux 以及任何可运行 codex CLI + Node 的平台。
  • 基于浏览器的 UI(轻量包装器,更新迅速)。
  • 支持 Codex Desktop 的功能,例如:
    • 子代理 – 可以启动其他代理的代理。
    • 内联图像 – 在 UI 中直接显示视觉输出。
    • 编辑器侧边栏 – 嵌入在网页视图中的代码编辑器。
    • 语音转文本 – 语音到文本的集成。

发展路线图(缺失功能)

  • 浏览器面板 – 可能使用 iframe 嵌入额外的网页内容。
  • Linux 计算机使用集成 – 使代理能够控制 Linux 桌面。
  • 终端支持 – 通过浏览器实现交互式 shell 访问。
  • Git 工作器集成 – 更紧密的 Git 操作支持。
  • 由社区驱动的一般性改进。

适合谁?

  • 已经使用 Codex Desktop 并希望获得便携式、基于浏览器 UI 的开发者。
  • 需要代理在中心化、始终在线的机器上运行,而用户从任何地方交互的团队。
  • 能够处理通过网络暴露强大本地代理所带来的安全影响的人。

提及的替代方案

  • pocodex – 早期项目,缺少子代理和内联图像支持。
  • Codex Remote(内置功能标志) – 通过 SSH 工作,但需要客户端安装桌面客户端,因此不支持移动端。
  • OpenAI 即将推出的移动应用 – 尚未发布;codex‑web 目前填补了这一空白。

如何贡献或获取帮助

  • 在仓库中打开 Issue 报告 bug 或提出功能请求。
  • 在 X(Twitter)上分享有趣的使用案例,并标记 @0xcaff
  • 对于商业或高度定制化部署,作者欢迎通过电子邮件直接联系。

总结

codex‑web 是一个极简的 Node.js 服务器,将 Codex Desktop AI 代理平台转变为可在浏览器中访问的 UI,同时将所有执行保留在可信主机上。它适用于远程、移动或多设备访问,但您必须保护服务器,因为任何能访问它的人都能完全控制主机。

相关

  • 项目
  • 项目
  • 项目
  • 项目