Thanks to visit codestin.com
Credit goes to github.com

Skip to content

onyxio0/code-switch

 
 

Repository files navigation

Code Switch

集中管理 Claude Code、Codex 和 Gemini CLI 的 AI 供应商配置

核心功能

  • 平滑切换供应商 - 无需重启 Claude Code/Codex/Gemini CLI,实时切换不同供应商
  • 智能降级机制 - 支持多供应商分级优先级调度(Level 1-10),自动故障转移
  • 用量统计追踪 - 请求级别的 Token 用量统计和成本核算
  • MCP 服务器管理 - Claude Code 和 Codex 双平台 MCP Server 集中配置
  • 技能市场 - Claude Skill 自动下载与安装,内置热门技能仓库
  • Gemini CLI 管理 - 支持 Google OAuth、API Key、PackyCode 等多种认证方式
  • 深度链接导入 - 通过 ccswitch:// 协议一键导入供应商配置
  • 速度测试 - 并发测试供应商端点延迟,优化选择
  • 自定义提示词 - 管理 Claude/Codex/Gemini 的系统提示词
  • 环境变量检测 - 自动检测并提示环境变量冲突
  • 自动更新 - 内置更新检查,支持 SHA256 完整性校验

下载安装

最新版本下载

Windows

文件 说明
CodeSwitch-amd64-installer.exe NSIS 安装器(推荐首次安装)
CodeSwitch.exe 便携版,直接运行
updater.exe 静默更新辅助程序

macOS

Homebrew (推荐)

# 添加 tap
brew tap onyxio0/tap

# 安装 Code Switch
brew install --cask code-switch

# 或者一行命令直接安装
brew install --cask onyxio0/tap/code-switch

手动下载

文件 说明
codeswitch-macos-arm64.zip Apple Silicon (M1/M2/M3)
codeswitch-macos-amd64.zip Intel 芯片

解压后将 .app 拖入 Applications 文件夹。

Linux

文件 说明
CodeSwitch.AppImage 跨发行版便携格式(推荐)
codeswitch_*.deb Debian/Ubuntu 安装包
codeswitch-*.rpm RHEL/Fedora/CentOS 安装包

AppImage 运行方式:

chmod +x CodeSwitch.AppImage
./CodeSwitch.AppImage

如遇 FUSE 问题:

./CodeSwitch.AppImage --appimage-extract-and-run

DEB 安装:

sudo dpkg -i codeswitch_*.deb
sudo apt-get install -f  # 安装依赖

RPM 安装:

sudo rpm -i codeswitch-*.rpm
# 或使用 dnf
sudo dnf install codeswitch-*.rpm

所有平台均提供 .sha256 校验文件,下载后可验证完整性。

工作原理

应用启动时在本地 :18100 端口创建 HTTP 代理服务器,并自动配置 Claude Code 和 Codex 指向该代理。

代理暴露两个关键端点:

  • /v1/messages → 转发到 Claude 供应商
  • /responses → 转发到 Codex 供应商

请求由 proxyHandler 基于优先级分组动态选择 Provider:

  1. 优先尝试 Level 1(最高优先级)的所有供应商
  2. 失败后依次尝试 Level 2、Level 3 等
  3. 同一 Level 内按用户排序依次尝试

这让 CLI 看到的是固定的本地地址,而请求被透明路由到你配置的供应商列表。

界面预览

亮色主界面 暗色主界面 日志亮色 日志暗色

开发指南

环境要求

  • Go 1.24+
  • Node.js 18+
  • Wails 3 CLI: go install github.com/wailsapp/wails/v3/cmd/wails3@latest

Linux 额外依赖:

# Ubuntu/Debian
sudo apt-get install build-essential pkg-config libgtk-3-dev libwebkit2gtk-4.1-dev

# Fedora
sudo dnf install gtk3-devel webkit2gtk4.1-devel

开发运行

wails3 task dev

构建

# 更新构建元数据
wails3 task common:update:build-assets

# 打包当前平台
wails3 task package

Linux 打包

# 构建二进制
wails3 task linux:build

# 创建 AppImage
wails3 task linux:create:appimage

# 创建 DEB 包
wails3 task linux:create:deb

# 创建 RPM 包
wails3 task linux:create:rpm

交叉编译 Windows (macOS)

brew install mingw-w64
env ARCH=amd64 wails3 task windows:build
env ARCH=amd64 wails3 task windows:package

发布

推送 tag 即可触发 GitHub Actions 自动构建:

git tag v1.2.0
git push origin v1.2.0

自动构建产物:

  • macOS: codeswitch-macos-arm64.zip, codeswitch-macos-amd64.zip
  • Windows: CodeSwitch-amd64-installer.exe, CodeSwitch.exe, updater.exe
  • Linux: CodeSwitch.AppImage, codeswitch_*.deb, codeswitch-*.rpm

支持的发行版

发行版 版本 格式
Ubuntu 24.04 LTS DEB / AppImage
Ubuntu 22.04 LTS AppImage
Debian 12 (Bookworm) DEB / AppImage
Fedora 39/40 RPM / AppImage
Linux Mint 22+ DEB / AppImage
Arch Linux Rolling AppImage

Ubuntu 22.04 因 WebKit 版本限制(4.0),建议使用 AppImage。

常见问题

  • macOS 无法打开 .app: 先执行 wails3 task common:update:build-assets 再构建
  • macOS 交叉编译权限问题: 终端需要完全磁盘访问权限
  • Linux AppImage FUSE 问题: 使用 --appimage-extract-and-run 参数运行

技术栈

  • 后端: Go 1.24 + Gin + SQLite
  • 前端: Vue 3 + TypeScript + Tailwind CSS
  • 框架: Wails 3
  • 打包: nFPM (DEB/RPM), appimagetool (AppImage), NSIS (Windows)

License

MIT

About

Claude Code & Codex 多供应商代理与管理工具

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 51.1%
  • Vue 36.2%
  • TypeScript 5.5%
  • CSS 4.7%
  • NSIS 1.6%
  • Shell 0.8%
  • Other 0.1%