Codex_AccountSwitch
isxlan0/Codex_AccountSwitch加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
如果你每天用 Codex 写代码,一定遇到过这种场景:改到一半,客户端弹窗提示"额度用尽";你想切到另一个账号,却发现必须退出登录、重新走一遍 OAuth、重新等待客户端重启。整个流程打断思路的往往不是十几秒的操作时间,而是那种"状态被重置"的 mental reset。
Codex Account Switch 就是针对这个痛点做的本地工具。它的思路很直接:不要在客户端里切账号,直接在操作系统层面管理多份 Codex 凭证,并提供一个本地反向代理,让客户端始终连同一个地址,由代理在背后决定用哪个账号。

OpenAI 的 Codex 面向重度用户有不同额度档位,个人订阅额度用尽是常态而非意外。于是社区自发形成了一种"多账号轮换"的实用主义文化:开发者手握数个账号,用满一个换一个,以此维持连续的长任务。
但这类操作一直缺少一个体面的工具层。手工方案通常是替换 ~/.codex/auth.json 文件,或者用脚本轮换配置文件——能用,但缺少可视化的额度视图、缺少备份、缺少多语言界面,也缺少"当前到底在用哪个账号"的确定感。
Codex Account Switch 由 Xiao Lan(isxlan0)于 2026 年 2 月创建,采用 C++ / Win32 / WebView2 原生方案,在项目自述中明确把"稳定性与速度"作为选型理由。同类工具中还有 cockpit-tools、Codex-Manager 等,Codex Account Switch 的差异化在于把"桌面原生应用 + 内嵌 Web UI + 本地代理"三者组合到了一起。

传统方式是"每个账号一间房,换房就要搬"。这个工具的类比是"给你一个固定的公寓地址(localhost 代理端口),房东在内部决定把流量转给哪一位住户"。客户端永远配同一个 base_url,永远不用改;你切换账号的动作,本质是在房东那边换了一把钥匙。
账号生命周期管理。 备份、切换、删除、重命名构成统一工作流,支持批量刷新额度、批量删除,以及 ZIP 格式备份包的导入导出。导入路径覆盖三种:导入当前登录态、手动粘贴 Token、以及 OAuth 文件快速导入。内置 OAuth 登录流程采用"回调监听 + 手动提交回调 URL"的双保险设计——前者适用于本机端口可用的场景,后者兼容回调被浏览器或系统策略拦截的环境。
额度看板与自动告警。 面板展示各账号余额,提供 5 小时与 7 天两个周期的额度自动刷新;额度低于阈值时主动告警并提示切换。更实用的是"自动账号切换提示"开关:额度不足时主动引导切号,避免开发链路在半夜中断。
本地 API 反向代理。 这是整个工具的技术核心。用户启动代理服务、让 Codex 客户端指向本地反向代理模式,即可实现不重启客户端的无缝换号。代理层支持自定义端口、超时时间、局域网访问开关、API Key 以及调度策略,并配有独立的流量日志与令牌统计页面。

国际化和主题。 内置 15 种语言(含简繁中文、英、日、韩、德、法、西、俄、意、葡、印地、阿拉伯),支持自动/浅色/深色三套主题。

原生层与前端层通过 WebView postMessage 通信,由宿主侧的动作路由(api_actions.h、api_routing.h)分发到具体功能模块:账号管理(api_accounts.h)、配置同步(codex_config_sync.h)、脚本桥接(api_script_bridge.h)、上游对接(api_upstream.h)和更新检查(update_checker.cpp)。运行数据以本地 JSON 形式存放在 %LOCALAPPDATA%\Codex Account Switch\ 下的 config.json 与 backups/ 目录中。
值得注意的是 webview_host.cpp 达到 525KB、前端 app.js 约 276KB,这说明它并非"薄壳"——实际业务逻辑大量落在 WebView 侧的 JavaScript 上,C++ 只承担窗口、代理与文件 IO。
部署环境:Windows 10/11(提供 x64 / x86 / ARM64 三种目标架构)+ Microsoft Edge WebView2 Runtime。macOS 与 Linux 用户无法使用。
部署方式:两条路径。最省事的是从 Releases 直接下载安装包(基于 Inno Setup 脚本,installer/build_installer.bat 一键构建)。需要自定义则用 Visual Studio 2022 打开 Codex_AccountSwitch.slnx,选择 Release | x64 等配置编译,产物为 Release/x64/Codex_AccountSwitch.exe。仓库还提供 tools/build_portable.ps1 生成免安装绿色版。
首次配置:启动后先添加账号(建议走 OAuth 登录或导入已有 auth.json),再到"设置"里配置代理端口、API Key 与调度策略,最后把 Codex 客户端切到本地反向代理模式。整个链路对新用户来说约需 20-40 分钟的一次性配置。
必须指出的是,多账号轮换本身处于灰色地带。该项目的定位是"帮助已有多个合法账号的开发者便捷使用",但社区对该类工具的争议一直存在:有人认为它客观上削弱了订阅制的公平性,也有人担忧账号凭证在本地明文 JSON 中存储的泄露风险——尽管项目在 Security Notice 中声明数据默认仅存本地、仅在用户主动导出时才离开设备。
技术上也有明确短板。Windows 独占限制了跨平台用户;反向代理意味着所有 Codex 流量都经过第三方进程,安全审计边界不如官方客户端清晰;15 种语言、额度看板、流量日志等功能叠加后,应用体积与内存占用对轻量工具来说偏重。此外,项目 2026 年 2 月才创建,尚缺乏长期稳定性验证。
把视角拉远一点,Codex Account Switch 反映的是一个正在成型的趋势:AI 编程工具的竞争维度,正在从"模型能力"扩展到"凭证与额度管理"这层基础设施。 当额度成为硬约束,如何调度有限配额就成了和写代码同等重要的日常技能。
这个赛道目前相当拥挤——Codex-Manager、cockpit-tools、Codex Switch(VS Code 扩展)、Codex-App-Switcher 各走各的技术路线,有 Python 桌面栈、有纯脚本、有 VS Code 插件。原生 Windows 实现是其中工程量最大的一档,也因此在 UI 完整度上占据优势。README 中致谢的 CLIProxyAPI、Antigravity-Manager、cc-switch 三个项目,恰好勾勒出这个生态的协作网络。

对于有合规多账号需求的团队或个人来说,这类工具提供的是一层被忽视的"运维体验":把散落在多个文件、多个浏览器会话里的凭证状态,收敛成一个可查看、可备份、可切换的本地面板。它未必是必需品,但在 Codex 额度成为生产力瓶颈的当下,这类工具正在从"折腾玩具"变成"配置组件"。
项目地址:https://github.com/isxlan0/Codex_AccountSwitch | MIT License | 250 Stars / 37 Forks