纯前端本地运行的 Codex 自定义 API 站点安全切换与 TOML 配置转换工具
在切换模型 API Provider 时,仅精准替换自定义路由配置,完整保留既有插件、Profiles 与功能开关。
采用严格 CSP 隔离,无任何网络出站与服务端,文件处理全流程在浏览器本地完成。
在使用 Codex 切换不同的第三方 API 站点时,如果直接用新配置覆盖本地文件,容易丢失历史积累的插件、自定义快捷键、UI 开关、上下文深度及 Profile 设置。
Codex API Switchboard 专注解决这个窄而高频的场景:
- 拖入/粘贴 现有的
config.toml; - 精准替换:仅覆写
[model_providers.custom]区块下的base_url与experimental_bearer_token; - 格式自适应:自动补齐
base_url缺失的/v1后缀; - 安全脱敏:前端界面对 Token 执行掩码脱敏,复制与下载时无缝还原完整内容。
[general]
telemetry = false
plugin_marketplace = true
- [model_providers.custom]- base_url = "https://old-api-endpoint.com"- experimental_bearer_token = "sk-old-token-xxxxxxxx"+ [model_providers.custom]+ base_url = "https://new-api-endpoint.com/v1"+ experimental_bearer_token = "sk-new-token-yyyyyyyy"
[profiles.default]
model = "gpt-4o"
temperature = 0.7本项目采用**绝对零信任(Zero-Trust)**的前端安全架构:
| 安全维度 | 具体实现与保障 |
|---|---|
| 网络隔离 (CSP) | _headers 显式声明 connect-src 'none',浏览器内核级禁止任何对外 fetch/xhr 网络请求 |
| 无服务端设计 | 纯静态资源托管于 Cloudflare Pages,不设任何后端 API 与数据中转服务 |
| 零存储 | 不使用 Cookie、localStorage 或 IndexedDB,标签页关闭后临时内存即刻销毁 |
| DOM 保护 | 页面渲染展示默认遮罩 Token,防止截图或旁路窥屏导致凭据泄露 |
| 决策维度 | 采用方案 | 否决方案 | 代价与收益 |
|---|---|---|---|
| 架构形态 | 纯客户端 Vanilla JS 处理 | 搭建后端 API 执行 TOML 解析 | 无法做重型复杂跨平台语法校验,但赋予用户绝对的隐私信任与零服务器运维成本 |
| 安全策略 | 强制设置 connect-src 'none' CSP | 引入外部 CDN / 埋点分析工具 | 放弃了访客统计与三方 UI 库,但确保了敏感 API Key 绝对无外泄可能 |
| 依赖选型 | 原生轻量 TOML 替换逻辑 | 引入臃肿的通用 AST 解析库 | 需针对目标节点编写正则替换守卫,但将页面首屏体积压缩至几十 KB |
项目内置了自动化安全守卫脚本,强校验公开产物与 CSP 规范:
# 运行本地安全契约与语法校验
npm run validate校验套件自动核验:
_headers必须包含connect-src 'none';- 源码中未调用任何未经允许的存储或联网 Web API;
- 产物中绝无开发者本地路径与 Token 遗留。
本项目基于 MIT License 开源。