Go · 项目报告

b-nnett/codex-subscription-router

该仓库暂未提供 GitHub 项目描述。

已完成 打开 GitHub
B
367星标
38Fork
6Issue
MIT许可证

分析结果

项目分析

Codex Subscription Router 是一个面向 macOS Apple Silicon 的非官方工具,用 Go 和少量构建脚本实现。它基于本机已安装的官方 ChatGPT macOS 应用生成一个独立签名的“补丁版”桌面应用,通过本地 Go 多路复用器把一个桌面连接分发到多个 ChatGPT/Codex 订阅账号,实现多订阅额度池化、按额度路由新会话、会话粘性绑定账号、额度耗尽自动故障转移等能力。项目不分发 OpenAI 二进制文件,只提供源码和构建工具,MIT 许可证。

适用领域 AI 开发工具 / ChatGPT/Codex 桌面客户端增强 / 多账号/多订阅管理 / macOS 本地应用补丁与签名 / Go 后端多路复用 / Electron/ASAR Patch / 本地安全与权限管理
配置难度 中高。普通终端用户可以按一键脚本安装,但要稳定使用需要理解 macOS 签名、隐私权限、官方 App 版本兼容、源码构建和账号隔离。对于熟悉 Go、Node、Electron/ASAR、macOS codesign 的开发者较容易审计和二次开发;对非技术用户不太友好。
商业价值 对拥有多个 ChatGPT/Codex 订阅的个人开发者和小团队有较高实用价值,可以更充分地使用已购买额度,减少单账号额度耗尽造成的工作中断,并提升 AI 编程工具的连续性。但商业化价值受限于非官方身份、版本脆弱性、合规风险、不能分发 OpenAI 二进制以及仅支持 macOS Apple Silicon。更适合作为高级用户自用工具、内部效率工具或研究多账号路由/桌面端 patch 技术的开源项目,而不适合作为大规模 SaaS 或面向普通消费者的稳定商业产品。
01

技术亮点

  • 多订阅池化:在一个独立桌面应用内管理多个 ChatGPT/Codex 订阅。
  • 额度感知路由:新会话优先使用更快过期的周额度,并考虑 banked reset、短窗口压力和账号顺序。
  • 会话粘性:thread ID 与账号归属持久化,后续消息默认回到同一订阅账号。
  • 自动故障转移:当前账号额度耗尽时可切换到其他有额度账号,所有账号耗尽时显示统一提示。
  • 原生 UI 集成度较高:profile menu 显示合并用量、头像、计划名、掩码邮箱和设备码登录入口。
  • 插件和 MCP 连接支持按账号切换,同时共享插件定义和托管 MCP 配置。
  • 独立签名的 Appshots 和 Computer Use helper,可获得自己的 macOS 隐私权限。
  • 官方 ChatGPT 安装仅作为构建输入,不会被直接修改。
  • 控制服务仅绑定 127.0.0.1,并使用随机 256-bit token 保护私有路由。
  • 项目提供架构、安全模型、兼容性、Smoke Test 和发布流程文档。
02

目标用户

  • 拥有多个 ChatGPT/Codex 订阅账号的重度 AI 编程用户
  • 需要在多个订阅之间分摊额度的开发者或小团队
  • 使用 macOS Apple Silicon 且依赖官方 ChatGPT 桌面应用的用户
  • 熟悉命令行、代码签名、macOS 权限配置的高级用户
  • 希望研究 ChatGPT 桌面端补丁、路由和本地多账号隔离实现的开发者
03

配置要求

  • 官方 ChatGPT 版本必须匹配项目当前支持值:26.803.61601,bundle build 6396;未知上游版本默认拒绝 patch。
  • 仅支持 macOS Apple Silicon。
  • 官方 ChatGPT.app 必须位于 /Applications/ChatGPT.app。
  • 需要 Go 1.26 或更新版本。
  • 需要 Node.js 22.12 或更新版本以及 npm。
  • 需要 Xcode Command Line Tools。
  • 需要 Apple Development 或 Developer ID Application 代码签名身份;若要稳定使用 Appshots 和 Computer Use,推荐 Developer ID 或团队签名。
  • 重建时应复用同一个 Apple Team,否则可能导致 macOS 隐私授权失效;如要变更团队需显式传入 --allow-signing-team-change。
  • 若无证书可用,可使用 --allow-adhoc-signing 进行诊断构建,但 Appshots 和 Computer Use 可能不可用。
  • 需要用户授予 Accessibility、Screen & System Audio Recording,首次控制其他应用时还可能需要 Automation 权限。
  • 二级账号数据存储在 ~/.codex-mux/accounts/<id>/codex-home,主账号数据位于 ~/.codex。
04

适用场景

  • 在一个独立 macOS 桌面应用中统一使用多个 ChatGPT/Codex 订阅
  • 新会话根据剩余额度、即将过期的周额度、banked resets 等策略自动分配到合适账号
  • 同一会话后续消息固定回到原订阅账号,保持上下文和账号级缓存
  • 某个账号额度耗尽时自动切换到其他仍有额度的订阅继续工作
  • 在个人或团队内部通过多个合法订阅提升 Codex/ChatGPT 使用连续性
  • 按账号查看使用量、订阅信息、插件连接状态和 rate-limit reset 情况
  • 为 Appshots、Computer Use 等 macOS 集成功能保留独立签名和权限授权
05

部署与配置

  • 确认环境为 macOS Apple Silicon,并已安装官方 ChatGPT.app 到 /Applications/ChatGPT.app。
  • 安装 Xcode Command Line Tools、Go 1.26+、Node.js 22.12+ 和 npm。
  • 准备 Apple Development 或 Developer ID Application 签名证书;推荐使用 team-backed 签名身份。
  • 使用一键安装命令:curl -fsSL https://raw.githubusercontent.com/b-nnett/codex-subscription-router/main/install.sh | /bin/bash。
  • 或从源码安装:git clone https://github.com/b-nnett/codex-subscription-router.git && cd codex-subscription-router && npm ci --ignore-scripts && python3 scripts/patch_app.py。
  • 安装后打开 ~/Applications/Codex Subscription Router.app。
  • 在 macOS System Settings → Privacy & Security 中为 Codex Subscription Router 授予 Accessibility 权限,为 Codex Subscription Router Computer Use 授予 Screen & System Audio Recording 权限。
  • 在应用侧边栏底部的 profile menu 中选择 Add another subscription,通过设备码登录添加额外订阅账号。
06

风险与注意事项

  • 非官方项目,不受 OpenAI 支持,可能违反或触及相关服务条款边界,使用前需自行确认每个订阅的合规性。
  • 高度依赖官方 ChatGPT 桌面应用内部结构和版本,OpenAI 更新后可能立即失效,需要等待项目适配新的 patch anchors。
  • 当前只支持特定 ChatGPT 版本和 build,兼容范围很窄。
  • 安装脚本会从网络拉取并执行 shell,安全敏感用户应先审计 install.sh 和 patch 脚本。
  • 需要本地代码签名和 macOS 隐私权限,配置不当会导致 Appshots、Computer Use 或辅助功能不可用。
  • 多账号凭据和状态保存在本机目录,虽然做了隔离和权限控制,但仍需保护本机账户和磁盘安全。
  • 共享 MCP 配置中的 inline secrets 会同步到各隔离账号 home,因此这些 account homes 并不是严格的秘密边界。
  • 生成的 app bundle 绑定当前 macOS 用户和签名团队,不适合直接分发给其他用户。
  • 初始合并历史最多拉取每个账号 500 个 thread,历史很多的用户可能看到不完整合并结果。
  • 官方应用更新器被禁用,需要用户手动更新官方 ChatGPT 并重新构建 router。

历史记录

热榜历史快照

2026-08-22 第28名 新收录 · github_search