Releases: farion1231/cc-switch
CC Switch v3.9.0
CC Switch v3.9.0
Local API Proxy, Auto Failover, Universal Provider, and a more complete multi-app workflow
Overview
CC Switch v3.9.0 is the stable release of the v3.9 beta series (3.9.0-1, 3.9.0-2, 3.9.0-3).
It introduces a local API proxy with per-app takeover, automatic failover, universal providers, and many stability and UX improvements across Claude Code, Codex, and Gemini CLI.
Release Date: 2026-01-07
Highlights
- Local API Proxy for Claude Code / Codex / Gemini CLI
- Auto Failover with circuit breaker and per-app failover queues
- Universal Provider: one shared config synced across apps (ideal for API gateways like NewAPI)
- Skills improvements: multi-app support, unified management with SSOT + React Query
- Common config snippets: extract reusable snippets from the editor or the current provider
- MCP import: import MCP servers from installed apps
- Usage improvements: auto-refresh, cache hit/creation metrics, and timezone fixes
- Linux packaging: RPM and Flatpak artifacts
Major Features
Local API Proxy
- Runs a local high-performance HTTP proxy server (Axum-based)
- Supports Claude Code, Codex, and Gemini CLI with a unified proxy
- Per-app takeover: you can independently decide which app routes through the proxy
- Live config takeover: backs up and redirects the CLI live config to the local proxy when takeover is enabled
- Monitoring: request logging and usage statistics for easier debugging and cost tracking
- Error request logging: keep detailed logs for failed proxy requests to simplify debugging (#401, thanks @yovinchen)
Auto Failover (Circuit Breaker)
- Automatically detects provider failures and triggers protection (circuit breaker)
- Automatically switches to a backup provider when the current one is unhealthy
- Tracks provider health in real time, and keeps independent failover queues per app
- When failover is disabled, timeout/retry related settings no longer affect normal request flow
Skills Management
- Multi-app Skills support for Claude Code and Codex, with smoother migration from older skill layouts (#365, #378, thanks @yovinchen)
- Unified Skills management architecture (SSOT + React Query) for more consistent state and refresh behavior
- Better discovery UX and performance:
Universal Provider
- Add a shared provider configuration that can sync to Claude/Codex/Gemini (#348, thanks @Calcium-Ion)
- Designed for API gateways that support multiple protocols (e.g., NewAPI)
- Allows per-app default model mapping under a single provider
Common Config Snippets (Claude/Codex/Gemini)
- Maintain a reusable "common config" snippet and merge/append it into providers that enable it
- New extraction workflow:
- Extract from the editor content (what you are currently editing)
- Or extract from the current active provider when the editor content is not provided
- Codex extraction is safer:
- Removes provider-specific sections like
model_provider,model, and the entiremodel_providerstable - Preserves
base_urlunder[mcp_servers.*]so MCP configs are not accidentally broken
- Removes provider-specific sections like
MCP Management
- Import MCP servers from installed apps
- Improve robustness: skip sync when the target CLI app is not installed; handle invalid Codex
config.tomlgracefully (#461, thanks @majiayu000) - Windows compatibility: wrap npx/npm commands with
cmd /cfor MCP export
Usage & Pricing
- Usage & pricing improvements: auto-refresh, cache hit/creation metrics, timezone handling fixes, and refreshed built-in pricing table (#508, thanks @yovinchen)
- DeepLink support: import usage query configuration via deeplink (#400, thanks @qyinter)
- Model extraction for usage statistics (#455, thanks @yovinchen)
- Usage query credentials can fall back to provider config (#360, thanks @Sirhexs)
UX Improvements
- Provider search filter: quickly find providers by name (#435, thanks @TinsFox)
- Provider icon colors: customize provider icon colors for quicker visual identification (#385, thanks @yovinchen)
- Keyboard shortcut:
Cmd/Ctrl + ,opens Settings (#436, thanks @TinsFox) - Skip Claude Code first-run confirmation dialog (optional)
- Closable toasts: close buttons for switch toast and all success toasts (#350, thanks @ForteScarlet)
- Update badge navigation: clicking the update badge opens the About tab
- Settings page tab style improvements (#342, thanks @wenyuanw)
- Smoother transitions: fade transitions for app/view switching and exit animations for panels
- Proxy takeover active theme: apply an emerald theme while takeover is active
- Dark mode readability improvements for forms and labels
- Better window dragging area for full-screen panels (#525, thanks @zerob13)
Platform Notes
Windows
- Prevent terminal windows from appearing during version checks
- Improve window sizing defaults (minimum width/height)
- Fix black screen on startup by using the system titlebar
- Add a fallback for
crypto.randomUUID()on older WebViews
macOS
- Use
.appbundle path for autostart to avoid terminal window popups (#462, thanks @majiayu000) - Improve tray/icon behavior and header alignment
Packaging
- Linux: RPM and Flatpak packaging targets are now available for building release artifacts
Notes
- Security improvements for the JavaScript executor and usage script execution (#151, thanks @luojiyin1987).
- SQL import is restricted to CC Switch exported backups to reduce the risk of importing unsafe or incompatible SQL dumps.
- Proxy takeover modifies CLI live configs; CC Switch will back up the live config before redirecting it to the local proxy. If you want to revert, disable takeover/stop the proxy and restore from the backup when needed.
Special Thanks
Special thanks to @Xunyu @deijing @su-fen for their support and contributions. This release wouldn't be possible without you!
Download & Installation
Visit Releases to download the appropriate version.
System Requirements
| System | Minimum Version | Architecture |
|---|---|---|
| Windows | Windows 10 or later | x64 |
| macOS | macOS 10.15 (Catalina) or later | Intel (x64) / Apple Silicon (arm64) |
| Linux | See table below | x64 |
Windows
| File | Description |
|---|---|
CC-Switch-v3.9.0-Windows.msi |
Recommended - MSI installer with auto-update support |
CC-Switch-v3.9.0-Windows-Portable.zip |
Portable version, no installation required |
macOS
| File | Description |
|---|---|
CC-Switch-v3.9.0-macOS.zip |
Recommended - Extract and drag to Applications, Universal Binary |
CC-Switch-v3.9.0-macOS.tar.gz |
For Homebrew installation and auto-update |
Note: Since the author does not have an Apple Developer account, you may see an "unidentified developer" warning on first launch. Close the app, then go to "System Settings" → "Privacy & Security" → click "Open Anyway", and it will open normally afterwards.
Homebrew (MacOS)
brew tap farion1231/ccswitch
brew install --cask cc-switchUpdate:
brew upgrade --cask cc-switchLinux
| Distribution | Recommended Format | Installation |
|---|---|---|
| Ubuntu / Debian / Linux Mint / Pop!_OS | .deb |
sudo dpkg -i CC-Switch-*.deb or sudo apt install ./CC-Switch-*.deb |
| Fedora / RHEL / CentOS / Rocky Linux | .rpm |
sudo rpm -i CC-Switch-*.rpm or sudo dnf install ./CC-Switch-*.rpm |
| openSUSE | .rpm |
sudo zypper install ./CC-Switch-*.rpm |
| Arch Linux / Manjaro | .AppImage |
Make executable and run directly, or use AUR |
| Other distros / Unsure | .AppImage |
chmod +x CC-Switch-*.AppImage && ./CC-Switch-*.AppImage |
| Sandboxed installation | .flatpak |
flatpak install CC-Switch-*.flatpak |
CC Switch v3.9.0-3
CC Switch v3.9.0-3
v3.9.0-3 更新内容
新功能
- Universal Provider 通用供应商配置支持
- 自动故障转移主开关,与代理服务集成
- 供应商搜索过滤功能
- 键盘快捷键打开设置 (Command+逗号 / Ctrl+逗号)
- 小米 MiMo 图标和供应商配置
- 用量统计模型信息提取
- 跳过 Claude Code 首次运行确认的选项
- 面板切换淡入淡出动画
问题修复
Windows
- MCP 导出时 npx/npm 命令兼容性修复
- 版本检查时防止终端窗口弹出
macOS
- 开机自启使用 .app 路径,防止终端窗口弹出
界面
- 修复 Dialog/Modal 首次点击无法打开的问题
- 改善暗色模式表单标签对比度
- 修复视图切换时 header 布局偏移
其他
- 用量统计使用本地时区和健壮的夏令时处理
- MCP 同步时优雅处理无效的 Codex config.toml
- 添加 proxy_config 数据库迁移兼容性检查
改进
- macOS 托盘使用模板图标
- 移除 titlebar 染色,对齐自定义 header
- 完善用量面板和设置的国际化
为防止数据丢失,运行前请务必备份 ~/.cc-switch/cc-switch.db!!!
为防止数据丢失,运行前请务必备份 ~/.cc-switch/cc-switch.db!!!
为防止数据丢失,运行前请务必备份 ~/.cc-switch/cc-switch.db!!!
如果需要运行 v3.8.* 版本,需要将备份的 cc-switch.db 放回原位置
⚠️ IMPORTANT — Please back up your data before running
To prevent data loss, make sure to back up ~/.cc-switch/cc-switch.db before running the application!
(To emphasize: please back up ~/.cc-switch/cc-switch.db before running.)
If you need to run a v3.8.* version later, please restore the backed-up cc-switch.db file to its original location.
代理功能使用说明:
https://github.com/farion1231/cc-switch/blob/main/docs/proxy-guide-zh.md
目前暂时无法代理官方供应商
CC Switch v3.8.3
CC Switch v3.8.3
Added
- macOS tray template icon - Use system template icon for better dark/light mode adaptation
- AiGoCode partner - Added AiGoCode icon and partner promotion
- Skip first-run confirmation - New setting to skip Claude Code first-run confirmation dialog
- DMXAPI partner - Added DMXAPI as official partner
- Provider icons - Added icons for OpenRouter, LongCat, ModelScope, AiHubMix
Fixed
- UI header layout - Fixed content being covered by fixed header (added padding-top)
- Dark mode visibility - Improved text visibility in dark mode
- Azure link - Corrected Azure website link (#407)
- Skill installation - Use directory basename for skill installation path (#358)
- SQL import refresh - Refresh all providers immediately after SQL import
- MCP sync safety - Skip sync when target CLI app is not installed
Changed
- Model versions - Updated model versions for provider presets
- Provider switch notification - Removed restart prompt from notification
- SQL import restriction - Restrict SQL import to CC Switch exported backups only
- GLM partner images - Updated partner banner images
CC Switch v3.8.2
Changes
- Fix provider card hover scale animation being clipped
- Update DeepSeek default model from experimental to stable version
CC Switch v3.8.1
Bug Fixes
- Linux Scroll Wheel Issue (98084d6)
- Fixed scroll wheel events being intercepted by DndContext on Linux/Ubuntu WebKitGTK
- Added independent scroll containers to all main pages
- Codex Config Updates (a627e1b)
- Updated default model from gpt-5-codex to gpt-5.1-codex
- Corrected MiniMax English preset URL
- MiniMax URL Corrections (5888c56, c5cadb7)
- Multiple fixes to apiKeyUrl domain: minimax.io → minimax.com → minimaxi.com
- UI Style Fixes
Refactoring
- MCP Modularization (7e6074a)
- Split 1135-line mcp.rs into focused modules: validation.rs, claude.rs, codex.rs, gemini.rs
- Extracted tray menu logic from lib.rs to tray.rs - URL Handling Improvement (3bf37cf)
- Removed automatic trailing slash stripping, giving users full control over URL format
- Updated i18n hints to instruct users to avoid trailing slashes - Dead Code Removal (75e7f9d)
- Cleaned up unused functions and imports across multiple modules
CC Switch v3.8.0
Persistence Architecture Upgrade, Laying the Foundation for Cloud Sync
Overview
CC Switch v3.8.0 is a major architectural upgrade that restructures the data persistence layer and user interface, laying the foundation for future cloud sync and local proxy features.
Release Date: 2025-11-28
Commits: 51 commits since v3.7.1
Code Changes: 207 files, +17,297 / -6,870 lines
Major Updates
Persistence Architecture Upgrade
Migrated from single JSON file storage to SQLite + JSON dual-layer architecture for hierarchical data management.
Architecture Changes:
v3.7.x (Old) v3.8.0 (New)
┌─────────────────┐ ┌─────────────────────────────────┐
│ config.json │ │ SQLite (Syncable Data) │
│ ┌───────────┐ │ │ ├─ providers Provider cfg │
│ │ providers │ │ │ ├─ mcp_servers MCP servers │
│ │ mcp │ │ ──> │ ├─ prompts Prompts │
│ │ prompts │ │ │ ├─ skills Skills │
│ │ settings │ │ │ └─ settings General cfg │
│ └───────────┘ │ ├─────────────────────────────────┤
└─────────────────┘ │ JSON (Device-level Data) │
│ └─ settings.json Local settings│
│ ├─ Window position │
│ ├─ Path overrides │
│ └─ Current provider ID │
└─────────────────────────────────┘
Dual-layer Structure Design:
| Layer | Storage | Data Types | Sync Strategy |
|---|---|---|---|
| Cloud Sync | SQLite | Providers, MCP, Prompts, Skills | Future syncable |
| Device | JSON | Window state, local paths | Stays local |
Technical Implementation:
- Schema Version Management - Supports database structure upgrade migrations
- SQL Import/Export -
backup.rssupports SQL dump for cloud storage - Transaction Support - SQLite native transactions ensure data consistency
- Auto Migration - Automatically migrates from
config.jsonon first launch
Modular Refactoring:
database/
├── mod.rs Core Database struct and initialization
├── schema.rs Table definitions, schema version migrations
├── backup.rs SQL import/export, binary snapshot backup
├── migration.rs JSON → SQLite data migration engine
└── dao/ Data Access Object layer
├── providers.rs Provider CRUD
├── mcp.rs MCP server CRUD
├── prompts.rs Prompts CRUD
├── skills.rs Skills CRUD
└── settings.rs Key-value settings storage
Brand New User Interface
Completely redesigned UI providing a more modern visual experience.
Visual Improvements:
- Redesigned interface layout
- Unified component styles
- Smoother transition animations
- Optimized visual hierarchy
Interaction Enhancements:
- Redesigned header toolbar
- Unified ConfirmDialog styling
- Disabled overscroll bounce effect on main view
- Improved form validation feedback
Compatibility Adjustments:
- Downgraded Tailwind CSS from v4 to v3.4 for better browser compatibility
Japanese Language Support
Added Japanese interface support, expanding internationalization to three languages.
Supported Languages:
- Simplified Chinese
- English
- Japanese (New)
New Features
Skills Recursive Scanning
Skills management system now supports recursive scanning of repository directories, automatically discovering nested skill files.
Improvements:
- Support for multi-level directory structures
- Automatic discovery of all
SKILL.mdfiles - Allow same-named skills from different repositories (using full path for deduplication)
Provider Icon Configuration
Provider presets now support custom icon configuration.
Features:
- Preset providers include default icons
- Icon settings preserved when duplicating providers
- Custom icon colors
Enhanced Form Validation
Provider forms now include required field validation with friendlier error messages.
Improvements:
- Real-time validation for required fields
- Unified Toast notifications for validation errors
- Clearer error messages
Auto Launch on Startup
Added auto-launch functionality supporting Windows, macOS, and Linux platforms.
Features:
- One-click enable/disable in settings
- Implemented using platform-native APIs
- Windows uses Registry, macOS uses LaunchAgent, Linux uses XDG autostart
New Provider Presets
- MiniMax - Official partner
Bug Fixes
Critical Fixes
Custom Endpoints Lost Issue
Fixed an issue where custom request URLs were unexpectedly lost when updating providers.
- Root Cause:
INSERT OR REPLACEexecutesDELETE + INSERTunder the hood in SQLite, triggering foreign key cascade deletion - Fix: Changed to use
UPDATEstatement for existing providers
Gemini Configuration Issues
- Fixed custom provider environment variables not correctly written to
.envfile - Fixed security auth config incorrectly written to other config files
Provider Validation Issues
- Fixed validation error when current provider ID doesn't exist
- Fixed icon fields lost when duplicating providers
Platform Compatibility
Linux
- Resolved WebKitGTK DMA-BUF rendering issue
- Preserve user
.desktopfile customizations
Other Fixes
- Fixed redundant usage queries when switching apps
- Fixed DMXAPI preset using wrong auth token field
- Fixed missing translation keys in deeplink components
- Fixed usage script template initialization logic
Technical Improvements
Architecture Refactoring
Provider Service Modularization:
services/provider/
├── mod.rs Core service - add/update/delete/switch/validate
├── live.rs Live config file operations
├── gemini_auth.rs Gemini auth type detection
├── endpoints.rs Custom endpoint management
└── usage.rs Usage script execution
Deeplink Modularization:
deeplink/
├── mod.rs Module exports
├── parser.rs URL parsing
├── provider.rs Provider import logic
├── mcp.rs MCP import logic
├── prompt.rs Prompt import
├── skill.rs Skills import
└── utils.rs Utility functions
Code Quality
Cleanup:
- Removed legacy JSON-era import/export dead code
- Removed unused MCP type exports
- Unified error handling approach
Test Updates:
- Migrated tests to SQLite database architecture
- Updated component tests to match current implementation
- Fixed MSW handlers to adapt to new API
Technical ...
CC Switch v3.9.0-2
CC Switch v3.9.0-2 测试版
新功能
- 新增供应商图标 - OpenRouter、LongCat、ModelScope、AiHubMix (
4a1a997)
问题修复
- 修复 Claude 配置同步 - 同步时保留已存在的 token 字段,避免写回重复 KEY (
8ecb41d) - 修复代理孤儿状态 - 添加 takeover 状态的回退恢复机制 (
3e8f844) - 修复 SQL 导入 - 导入后立即刷新所有供应商列表 (
b6ff721) - 限制 SQL 导入来源 - 仅允许导入 CC Switch 导出的备份文件,增强安全性 (
1706c9a) - 修复 Windows 窗口 - 添加最小宽度/高度配置,防止窗口过小 (
64e0cab) - 修复关于页面 UI (
5bce6d6)
重构
- OpenRouter 透传模式 - OpenRouter现在原生支持 Claude Code 格式,暂时注释格式转换逻辑(
c4535c8) - 移除代理全局自动启动功能 - 简化代理启动逻辑,降低复杂度 (
ba59483)
样式优化
- 统一顶栏样式 - 统一 header 工具栏各区块的高度和样式 (
5fe5ed9)
为防止数据丢失,运行前请务必备份 ~/.cc-switch/cc-switch.db!!!
为防止数据丢失,运行前请务必备份 ~/.cc-switch/cc-switch.db!!!
为防止数据丢失,运行前请务必备份 ~/.cc-switch/cc-switch.db!!!
如果需要运行 v3.8.* 版本,需要将备份的 cc-switch.db 放回原位置
⚠️ IMPORTANT — Please back up your data before running
To prevent data loss, make sure to back up ~/.cc-switch/cc-switch.db before running the application!
(To emphasize: please back up ~/.cc-switch/cc-switch.db before running.)
If you need to run a v3.8.* version later, please restore the backed-up cc-switch.db file to its original location.
代理功能使用说明:
https://github.com/farion1231/cc-switch/blob/main/docs/proxy-guide-zh.md
目前暂时无法代理官方供应商
CC Switch v3.9.0-1
CC Switch v3.9.0-1 测试版
为防止数据丢失,运行前请务必备份 ~/.cc-switch/cc-switch.db!!!
为防止数据丢失,运行前请务必备份 ~/.cc-switch/cc-switch.db!!!
为防止数据丢失,运行前请务必备份 ~/.cc-switch/cc-switch.db!!!
如果需要运行 v3.8.* 版本,需要将备份的 cc-switch.db 放回原位置
代理功能使用说明:
https://github.com/farion1231/cc-switch/blob/main/docs/proxy-guide-zh.md
目前暂时无法代理官方供应商
CC Switch v3.8.2
CC Switch v3.8.2
Changes
- Fix provider card hover scale animation being clipped
- Update DeepSeek default model from experimental to stable version
CC Switch v3.8.1
Bug Fixes
- Linux Scroll Wheel Issue (98084d6)
- Fixed scroll wheel events being intercepted by DndContext on Linux/Ubuntu WebKitGTK
- Added independent scroll containers to all main pages
- Codex Config Updates (a627e1b)
- Updated default model from gpt-5-codex to gpt-5.1-codex
- Corrected MiniMax English preset URL
- MiniMax URL Corrections (5888c56, c5cadb7)
- Multiple fixes to apiKeyUrl domain: minimax.io → minimax.com → minimaxi.com
- UI Style Fixes
Refactoring
- MCP Modularization (7e6074a)
- Split 1135-line mcp.rs into focused modules: validation.rs, claude.rs, codex.rs, gemini.rs
- Extracted tray menu logic from lib.rs to tray.rs - URL Handling Improvement (3bf37cf)
- Removed automatic trailing slash stripping, giving users full control over URL format
- Updated i18n hints to instruct users to avoid trailing slashes - Dead Code Removal (75e7f9d)
- Cleaned up unused functions and imports across multiple modules
CC Switch v3.8.0
Persistence Architecture Upgrade, Laying the Foundation for Cloud Sync
Overview
CC Switch v3.8.0 is a major architectural upgrade that restructures the data persistence layer and user interface, laying the foundation for future cloud sync and local proxy features.
Release Date: 2025-11-28
Commits: 51 commits since v3.7.1
Code Changes: 207 files, +17,297 / -6,870 lines
Major Updates
Persistence Architecture Upgrade
Migrated from single JSON file storage to SQLite + JSON dual-layer architecture for hierarchical data management.
Architecture Changes:
v3.7.x (Old) v3.8.0 (New)
┌─────────────────┐ ┌─────────────────────────────────┐
│ config.json │ │ SQLite (Syncable Data) │
│ ┌───────────┐ │ │ ├─ providers Provider cfg │
│ │ providers │ │ │ ├─ mcp_servers MCP servers │
│ │ mcp │ │ ──> │ ├─ prompts Prompts │
│ │ prompts │ │ │ ├─ skills Skills │
│ │ settings │ │ │ └─ settings General cfg │
│ └───────────┘ │ ├─────────────────────────────────┤
└─────────────────┘ │ JSON (Device-level Data) │
│ └─ settings.json Local settings│
│ ├─ Window position │
│ ├─ Path overrides │
│ └─ Current provider ID │
└─────────────────────────────────┘
Dual-layer Structure Design:
| Layer | Storage | Data Types | Sync Strategy |
|---|---|---|---|
| Cloud Sync | SQLite | Providers, MCP, Prompts, Skills | Future syncable |
| Device | JSON | Window state, local paths | Stays local |
Technical Implementation:
- Schema Version Management - Supports database structure upgrade migrations
- SQL Import/Export -
backup.rssupports SQL dump for cloud storage - Transaction Support - SQLite native transactions ensure data consistency
- Auto Migration - Automatically migrates from
config.jsonon first launch
Modular Refactoring:
database/
├── mod.rs Core Database struct and initialization
├── schema.rs Table definitions, schema version migrations
├── backup.rs SQL import/export, binary snapshot backup
├── migration.rs JSON → SQLite data migration engine
└── dao/ Data Access Object layer
├── providers.rs Provider CRUD
├── mcp.rs MCP server CRUD
├── prompts.rs Prompts CRUD
├── skills.rs Skills CRUD
└── settings.rs Key-value settings storage
Brand New User Interface
Completely redesigned UI providing a more modern visual experience.
Visual Improvements:
- Redesigned interface layout
- Unified component styles
- Smoother transition animations
- Optimized visual hierarchy
Interaction Enhancements:
- Redesigned header toolbar
- Unified ConfirmDialog styling
- Disabled overscroll bounce effect on main view
- Improved form validation feedback
Compatibility Adjustments:
- Downgraded Tailwind CSS from v4 to v3.4 for better browser compatibility
Japanese Language Support
Added Japanese interface support, expanding internationalization to three languages.
Supported Languages:
- Simplified Chinese
- English
- Japanese (New)
New Features
Skills Recursive Scanning
Skills management system now supports recursive scanning of repository directories, automatically discovering nested skill files.
Improvements:
- Support for multi-level directory structures
- Automatic discovery of all
SKILL.mdfiles - Allow same-named skills from different repositories (using full path for deduplication)
Provider Icon Configuration
Provider presets now support custom icon configuration.
Features:
- Preset providers include default icons
- Icon settings preserved when duplicating providers
- Custom icon colors
Enhanced Form Validation
Provider forms now include required field validation with friendlier error messages.
Improvements:
- Real-time validation for required fields
- Unified Toast notifications for validation errors
- Clearer error messages
Auto Launch on Startup
Added auto-launch functionality supporting Windows, macOS, and Linux platforms.
Features:
- One-click enable/disable in settings
- Implemented using platform-native APIs
- Windows uses Registry, macOS uses LaunchAgent, Linux uses XDG autostart
New Provider Presets
- MiniMax - Official partner
Bug Fixes
Critical Fixes
Custom Endpoints Lost Issue
Fixed an issue where custom request URLs were unexpectedly lost when updating providers.
- Root Cause:
INSERT OR REPLACEexecutesDELETE + INSERTunder the hood in SQLite, triggering foreign key cascade deletion - Fix: Changed to use
UPDATEstatement for existing providers
Gemini Configuration Issues
- Fixed custom provider environment variables not correctly written to
.envfile - Fixed security auth config incorrectly written to other config files
Provider Validation Issues
- Fixed validation error when current provider ID doesn't exist
- Fixed icon fields lost when duplicating providers
Platform Compatibility
Linux
- Resolved WebKitGTK DMA-BUF rendering issue
- Preserve user
.desktopfile customizations
Other Fixes
- Fixed redundant usage queries when switching apps
- Fixed DMXAPI preset using wrong auth token field
- Fixed missing translation keys in deeplink components
- Fixed usage script template initialization logic
Technical Improvements
Architecture Refactoring
Provider Service Modularization:
services/provider/
├── mod.rs Core service - add/update/delete/switch/validate
├── live.rs Live config file operations
├── gemini_auth.rs Gemini auth type detection
├── endpoints.rs Custom endpoint management
└── usage.rs Usage script execution
Deeplink Modularization:
deeplink/
├── mod.rs Module exports
├── parser.rs URL parsing
├── provider.rs Provider import logic
├── mcp.rs MCP import logic
├── prompt.rs Prompt import
├── skill.rs Skills import
└── utils.rs Utility functions
Code Quality
Cleanup:
- Removed legacy JSON-era import/export dead code
- Removed unused MCP type exports
- Unified error handling approach
Test Updates:
- Migrated tests to SQLite database architecture
- Updated component tests to match current implementation
- Fixed MSW handlers to adapt to new API
Technical Statistics
Overall Changes:
- Commits: 51
- Files: 207 files changed
- Additions: +17,297 lines
- Deletions: -6,870 lines
- Net: +10,427 lines
Commit Type Distribution:
- fix: 25 (Bug fixes)
- refactor: 11 (Code refactoring)
- feat: 9 (New features)
- test: 1 (Testing)
- other: 5
Change Area Distribution:
- Frontend source: 112 files
- Rust backend: 63 files
- Test files: 20 files
- i18n files: 3 files
Migration Guide
Upgrading from v3.7.x
Auto Migration - Executes automatically on first launch:
- Detects if
config.jsonexists - Migrates all data to SQLite within a transaction
- Migrates device-level settings to
settings.json - Shows migration success notification
Data Safety:
- Original
config.jsonfile is preserved (not deleted) - Error dialog displayed on migration failure,
config.jsonpreserved - Supports Dry-run mode to verify migration logic
Download & Installation
System Requirements
- Windows: Windows 10+
- macOS: macOS 10.15 (Catalina)+
- Linux: Ubuntu 22.04+ / Debian 11+ / Fedora 34+
Download Links
Visit [Releases](https://github.com/farion1231/cc-s...
CC Switch v3.8.1
CC Switch v3.8.1
Bug Fixes
- Linux Scroll Wheel Issue (98084d6)
- Fixed scroll wheel events being intercepted by DndContext on Linux/Ubuntu WebKitGTK
- Added independent scroll containers to all main pages
- Codex Config Updates (a627e1b)
- Updated default model from gpt-5-codex to gpt-5.1-codex
- Corrected MiniMax English preset URL
- MiniMax URL Corrections (5888c56, c5cadb7)
- Multiple fixes to apiKeyUrl domain: minimax.io → minimax.com → minimaxi.com
- UI Style Fixes
Refactoring
- MCP Modularization (7e6074a)
- Split 1135-line mcp.rs into focused modules: validation.rs, claude.rs, codex.rs, gemini.rs
- Extracted tray menu logic from lib.rs to tray.rs - URL Handling Improvement (3bf37cf)
- Removed automatic trailing slash stripping, giving users full control over URL format
- Updated i18n hints to instruct users to avoid trailing slashes - Dead Code Removal (75e7f9d)
- Cleaned up unused functions and imports across multiple modules
CC Switch v3.8.0
Persistence Architecture Upgrade, Laying the Foundation for Cloud Sync
Overview
CC Switch v3.8.0 is a major architectural upgrade that restructures the data persistence layer and user interface, laying the foundation for future cloud sync and local proxy features.
Release Date: 2025-11-28
Commits: 51 commits since v3.7.1
Code Changes: 207 files, +17,297 / -6,870 lines
Major Updates
Persistence Architecture Upgrade
Migrated from single JSON file storage to SQLite + JSON dual-layer architecture for hierarchical data management.
Architecture Changes:
v3.7.x (Old) v3.8.0 (New)
┌─────────────────┐ ┌─────────────────────────────────┐
│ config.json │ │ SQLite (Syncable Data) │
│ ┌───────────┐ │ │ ├─ providers Provider cfg │
│ │ providers │ │ │ ├─ mcp_servers MCP servers │
│ │ mcp │ │ ──> │ ├─ prompts Prompts │
│ │ prompts │ │ │ ├─ skills Skills │
│ │ settings │ │ │ └─ settings General cfg │
│ └───────────┘ │ ├─────────────────────────────────┤
└─────────────────┘ │ JSON (Device-level Data) │
│ └─ settings.json Local settings│
│ ├─ Window position │
│ ├─ Path overrides │
│ └─ Current provider ID │
└─────────────────────────────────┘
Dual-layer Structure Design:
| Layer | Storage | Data Types | Sync Strategy |
|---|---|---|---|
| Cloud Sync | SQLite | Providers, MCP, Prompts, Skills | Future syncable |
| Device | JSON | Window state, local paths | Stays local |
Technical Implementation:
- Schema Version Management - Supports database structure upgrade migrations
- SQL Import/Export -
backup.rssupports SQL dump for cloud storage - Transaction Support - SQLite native transactions ensure data consistency
- Auto Migration - Automatically migrates from
config.jsonon first launch
Modular Refactoring:
database/
├── mod.rs Core Database struct and initialization
├── schema.rs Table definitions, schema version migrations
├── backup.rs SQL import/export, binary snapshot backup
├── migration.rs JSON → SQLite data migration engine
└── dao/ Data Access Object layer
├── providers.rs Provider CRUD
├── mcp.rs MCP server CRUD
├── prompts.rs Prompts CRUD
├── skills.rs Skills CRUD
└── settings.rs Key-value settings storage
Brand New User Interface
Completely redesigned UI providing a more modern visual experience.
Visual Improvements:
- Redesigned interface layout
- Unified component styles
- Smoother transition animations
- Optimized visual hierarchy
Interaction Enhancements:
- Redesigned header toolbar
- Unified ConfirmDialog styling
- Disabled overscroll bounce effect on main view
- Improved form validation feedback
Compatibility Adjustments:
- Downgraded Tailwind CSS from v4 to v3.4 for better browser compatibility
Japanese Language Support
Added Japanese interface support, expanding internationalization to three languages.
Supported Languages:
- Simplified Chinese
- English
- Japanese (New)
New Features
Skills Recursive Scanning
Skills management system now supports recursive scanning of repository directories, automatically discovering nested skill files.
Improvements:
- Support for multi-level directory structures
- Automatic discovery of all
SKILL.mdfiles - Allow same-named skills from different repositories (using full path for deduplication)
Provider Icon Configuration
Provider presets now support custom icon configuration.
Features:
- Preset providers include default icons
- Icon settings preserved when duplicating providers
- Custom icon colors
Enhanced Form Validation
Provider forms now include required field validation with friendlier error messages.
Improvements:
- Real-time validation for required fields
- Unified Toast notifications for validation errors
- Clearer error messages
Auto Launch on Startup
Added auto-launch functionality supporting Windows, macOS, and Linux platforms.
Features:
- One-click enable/disable in settings
- Implemented using platform-native APIs
- Windows uses Registry, macOS uses LaunchAgent, Linux uses XDG autostart
New Provider Presets
- MiniMax - Official partner
Bug Fixes
Critical Fixes
Custom Endpoints Lost Issue
Fixed an issue where custom request URLs were unexpectedly lost when updating providers.
- Root Cause:
INSERT OR REPLACEexecutesDELETE + INSERTunder the hood in SQLite, triggering foreign key cascade deletion - Fix: Changed to use
UPDATEstatement for existing providers
Gemini Configuration Issues
- Fixed custom provider environment variables not correctly written to
.envfile - Fixed security auth config incorrectly written to other config files
Provider Validation Issues
- Fixed validation error when current provider ID doesn't exist
- Fixed icon fields lost when duplicating providers
Platform Compatibility
Linux
- Resolved WebKitGTK DMA-BUF rendering issue
- Preserve user
.desktopfile customizations
Other Fixes
- Fixed redundant usage queries when switching apps
- Fixed DMXAPI preset using wrong auth token field
- Fixed missing translation keys in deeplink components
- Fixed usage script template initialization logic
Technical Improvements
Architecture Refactoring
Provider Service Modularization:
services/provider/
├── mod.rs Core service - add/update/delete/switch/validate
├── live.rs Live config file operations
├── gemini_auth.rs Gemini auth type detection
├── endpoints.rs Custom endpoint management
└── usage.rs Usage script execution
Deeplink Modularization:
deeplink/
├── mod.rs Module exports
├── parser.rs URL parsing
├── provider.rs Provider import logic
├── mcp.rs MCP import logic
├── prompt.rs Prompt import
├── skill.rs Skills import
└── utils.rs Utility functions
Code Quality
Cleanup:
- Removed legacy JSON-era import/export dead code
- Removed unused MCP type exports
- Unified error handling approach
Test Updates:
- Migrated tests to SQLite database architecture
- Updated component tests to match current implementation
- Fixed MSW handlers to adapt to new API
Technical Statistics
Overall Changes:
- Commits: 51
- Files: 207 files changed
- Additions: +17,297 lines
- Deletions: -6,870 lines
- Net: +10,427 lines
Commit Type Distribution:
- fix: 25 (Bug fixes)
- refactor: 11 (Code refactoring)
- feat: 9 (New features)
- test: 1 (Testing)
- other: 5
Change Area Distribution:
- Frontend source: 112 files
- Rust backend: 63 files
- Test files: 20 files
- i18n files: 3 files
Migration Guide
Upgrading from v3.7.x
Auto Migration - Executes automatically on first launch:
- Detects if
config.jsonexists - Migrates all data to SQLite within a transaction
- Migrates device-level settings to
settings.json - Shows migration success notification
Data Safety:
- Original
config.jsonfile is preserved (not deleted) - Error dialog displayed on migration failure,
config.jsonpreserved - Supports Dry-run mode to verify migration logic
Download & Installation
System Requirements
- Windows: Windows 10+
- macOS: macOS 10.15 (Catalina)+
- Linux: Ubuntu 22.04+ / Debian 11+ / Fedora 34+
Download Links
Visit Releases to download:
- Windows:
CC-Switch-v3.8.0-Windows.msior-Portable.zip - macOS:
CC-Switch-v3.8.0-macOS.tar.gzor.zip - **L...
CC Switch v3.8.0
CC Switch v3.8.0
Persistence Architecture Upgrade, Laying the Foundation for Cloud Sync
Overview
CC Switch v3.8.0 is a major architectural upgrade that restructures the data persistence layer and user interface, laying the foundation for future cloud sync and local proxy features.
Release Date: 2025-11-28
Commits: 51 commits since v3.7.1
Code Changes: 207 files, +17,297 / -6,870 lines
Major Updates
Persistence Architecture Upgrade
Migrated from single JSON file storage to SQLite + JSON dual-layer architecture for hierarchical data management.
Architecture Changes:
v3.7.x (Old) v3.8.0 (New)
┌─────────────────┐ ┌─────────────────────────────────┐
│ config.json │ │ SQLite (Syncable Data) │
│ ┌───────────┐ │ │ ├─ providers Provider cfg │
│ │ providers │ │ │ ├─ mcp_servers MCP servers │
│ │ mcp │ │ ──> │ ├─ prompts Prompts │
│ │ prompts │ │ │ ├─ skills Skills │
│ │ settings │ │ │ └─ settings General cfg │
│ └───────────┘ │ ├─────────────────────────────────┤
└─────────────────┘ │ JSON (Device-level Data) │
│ └─ settings.json Local settings│
│ ├─ Window position │
│ ├─ Path overrides │
│ └─ Current provider ID │
└─────────────────────────────────┘
Dual-layer Structure Design:
| Layer | Storage | Data Types | Sync Strategy |
|---|---|---|---|
| Cloud Sync | SQLite | Providers, MCP, Prompts, Skills | Future syncable |
| Device | JSON | Window state, local paths | Stays local |
Technical Implementation:
- Schema Version Management - Supports database structure upgrade migrations
- SQL Import/Export -
backup.rssupports SQL dump for cloud storage - Transaction Support - SQLite native transactions ensure data consistency
- Auto Migration - Automatically migrates from
config.jsonon first launch
Modular Refactoring:
database/
├── mod.rs Core Database struct and initialization
├── schema.rs Table definitions, schema version migrations
├── backup.rs SQL import/export, binary snapshot backup
├── migration.rs JSON → SQLite data migration engine
└── dao/ Data Access Object layer
├── providers.rs Provider CRUD
├── mcp.rs MCP server CRUD
├── prompts.rs Prompts CRUD
├── skills.rs Skills CRUD
└── settings.rs Key-value settings storage
Brand New User Interface
Completely redesigned UI providing a more modern visual experience.
Visual Improvements:
- Redesigned interface layout
- Unified component styles
- Smoother transition animations
- Optimized visual hierarchy
Interaction Enhancements:
- Redesigned header toolbar
- Unified ConfirmDialog styling
- Disabled overscroll bounce effect on main view
- Improved form validation feedback
Compatibility Adjustments:
- Downgraded Tailwind CSS from v4 to v3.4 for better browser compatibility
Japanese Language Support
Added Japanese interface support, expanding internationalization to three languages.
Supported Languages:
- Simplified Chinese
- English
- Japanese (New)
New Features
Skills Recursive Scanning
Skills management system now supports recursive scanning of repository directories, automatically discovering nested skill files.
Improvements:
- Support for multi-level directory structures
- Automatic discovery of all
SKILL.mdfiles - Allow same-named skills from different repositories (using full path for deduplication)
Provider Icon Configuration
Provider presets now support custom icon configuration.
Features:
- Preset providers include default icons
- Icon settings preserved when duplicating providers
- Custom icon colors
Enhanced Form Validation
Provider forms now include required field validation with friendlier error messages.
Improvements:
- Real-time validation for required fields
- Unified Toast notifications for validation errors
- Clearer error messages
Auto Launch on Startup
Added auto-launch functionality supporting Windows, macOS, and Linux platforms.
Features:
- One-click enable/disable in settings
- Implemented using platform-native APIs
- Windows uses Registry, macOS uses LaunchAgent, Linux uses XDG autostart
New Provider Presets
- MiniMax - Official partner
Bug Fixes
Critical Fixes
Custom Endpoints Lost Issue
Fixed an issue where custom request URLs were unexpectedly lost when updating providers.
- Root Cause:
INSERT OR REPLACEexecutesDELETE + INSERTunder the hood in SQLite, triggering foreign key cascade deletion - Fix: Changed to use
UPDATEstatement for existing providers
Gemini Configuration Issues
- Fixed custom provider environment variables not correctly written to
.envfile - Fixed security auth config incorrectly written to other config files
Provider Validation Issues
- Fixed validation error when current provider ID doesn't exist
- Fixed icon fields lost when duplicating providers
Platform Compatibility
Linux
- Resolved WebKitGTK DMA-BUF rendering issue
- Preserve user
.desktopfile customizations
Other Fixes
- Fixed redundant usage queries when switching apps
- Fixed DMXAPI preset using wrong auth token field
- Fixed missing translation keys in deeplink components
- Fixed usage script template initialization logic
Technical Improvements
Architecture Refactoring
Provider Service Modularization:
services/provider/
├── mod.rs Core service - add/update/delete/switch/validate
├── live.rs Live config file operations
├── gemini_auth.rs Gemini auth type detection
├── endpoints.rs Custom endpoint management
└── usage.rs Usage script execution
Deeplink Modularization:
deeplink/
├── mod.rs Module exports
├── parser.rs URL parsing
├── provider.rs Provider import logic
├── mcp.rs MCP import logic
├── prompt.rs Prompt import
├── skill.rs Skills import
└── utils.rs Utility functions
Code Quality
Cleanup:
- Removed legacy JSON-era import/export dead code
- Removed unused MCP type exports
- Unified error handling approach
Test Updates:
- Migrated tests to SQLite database architecture
- Updated component tests to match current implementation
- Fixed MSW handlers to adapt to new API
Technical Statistics
Overall Changes:
- Commits: 51
- Files: 207 files changed
- Additions: +17,297 lines
- Deletions: -6,870 lines
- Net: +10,427 lines
Commit Type Distribution:
- fix: 25 (Bug fixes)
- refactor: 11 (Code refactoring)
- feat: 9 (New features)
- test: 1 (Testing)
- other: 5
Change Area Distribution:
- Frontend source: 112 files
- Rust backend: 63 files
- Test files: 20 files
- i18n files: 3 files
Migration Guide
Upgrading from v3.7.x
Auto Migration - Executes automatically on first launch:
- Detects if
config.jsonexists - Migrates all data to SQLite within a transaction
- Migrates device-level settings to
settings.json - Shows migration success notification
Data Safety:
- Original
config.jsonfile is preserved (not deleted) - Error dialog displayed on migration failure,
config.jsonpreserved - Supports Dry-run mode to verify migration logic
Download & Installation
System Requirements
- Windows: Windows 10+
- macOS: macOS 10.15 (Catalina)+
- Linux: Ubuntu 22.04+ / Debian 11+ / Fedora 34+
Download Links
Visit Releases to download:
- Windows:
CC-Switch-v3.8.0-Windows.msior-Portable.zip - macOS:
CC-Switch-v3.8.0-macOS.tar.gzor.zip - Linux:
CC-Switch-v3.8.0-Linux.AppImageor.deb
Homebrew (macOS)
brew tap farion1231/ccswitch
brew install --cask cc-switchUpdate:
brew upgrade --cask cc-switchAcknowledgments
Contributors
Thanks to all contributors who made this release possible:
- @YoVinchen - UI and database refactoring
- @farion1231 - Bug fixes and feature enhancements
- Community members for testing and feedback
Sponsors
Zhipu AI - GLM CODING PLAN Sponsor
Get 10% off with this link
PackyCode - API Relay Service Partner
Use code "cc-switch" for 10% off registration
ShandianShuo - Local-first AI Voice Input
Free download for Mac/Windows
MiniMax - MiniMax M2 CODING PLAN Sponsor
Black Friday sale, plans starting at $2
Feedback & Support
- Issue Reports: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: [README](../R...
CC Switch v3.7.1
CC Switch v3.7.1
Stability Enhancements and User Experience Improvements
中文更新说明 Chinese Documentation →
v3.7.1 Updates
Release Date: 2025-11-22
Code Changes: 17 files, +524 / -81 lines
Bug Fixes
-
Fix Third-Party Skills Installation Failure (#268)
Fixed installation issues for skills repositories with custom subdirectories, now supports repos likeComposioHQ/awesome-claude-skillswith subdirectories -
Fix Gemini Configuration Persistence Issue
Resolved the issue where settings.json edits in Gemini form were lost when switching providers -
Prevent Dialogs from Closing on Overlay Click
Added protection against clicking overlay/backdrop, preventing accidental form data loss across all 11 dialog components
New Features
-
Gemini Configuration Directory Support (#255)
Added Gemini configuration directory option in settings, supports customizing~/.gemini/path -
ArchLinux Installation Support (#259)
Added AUR installation method:paru -S cc-switch-bin
Improvements
-
Skills Error Message i18n Enhancement
Added 28+ detailed error messages (English & Chinese) with specific resolution suggestions, extended download timeout from 15s to 60s -
Code Formatting
Applied unified Rust and TypeScript code formatting standards
Download
Visit Releases to download the latest version
v3.7.0 Complete Release Notes
From Provider Switcher to All-in-One AI CLI Management Platform
Release Date: 2025-11-19
Commits: 85 from v3.6.0
Code Changes: 152 files, +18,104 / -3,732 lines
New Features
Gemini CLI Integration
Complete support for Google Gemini CLI, becoming the third supported application (Claude Code, Codex, Gemini).
Core Capabilities:
- Dual-file configuration - Support for both
.envandsettings.jsonformats - Auto-detection - Automatically detect
GOOGLE_GEMINI_BASE_URL,GEMINI_MODEL, etc. - Full MCP support - Complete MCP server management for Gemini
- Deep link integration - Import via
ccswitch://protocol - System tray - Quick-switch from tray menu
Provider Presets:
- Google Official - OAuth authentication support
- PackyCode - Partner integration
- Custom - Full customization support
Technical Implementation:
- New backend modules:
gemini_config.rs(20KB),gemini_mcp.rs - Form synchronization with environment editor
- Dual-file atomic writes
MCP v3.7.0 Unified Architecture
Complete refactoring of MCP management system for cross-application unification.
Architecture Improvements:
- Unified panel - Single interface for Claude/Codex/Gemini MCP servers
- SSE transport - New Server-Sent Events support
- Smart parser - Fault-tolerant JSON parsing
- Format correction - Auto-fix Codex
[mcp_servers]format - Extended fields - Preserve custom TOML fields
User Experience:
- Default app selection in forms
- JSON formatter for validation
- Improved visual hierarchy
- Better error messages
Import/Export:
- Unified import from all three apps
- Bidirectional synchronization
- State preservation
Claude Skills Management System
Approximately 2,000 lines of code - A complete skill ecosystem platform.
GitHub Integration:
- Auto-scan skills from GitHub repositories
- Pre-configured repos:
ComposioHQ/awesome-claude-skills- Curated collectionanthropics/skills- Official Anthropic skillscexll/myclaude- Community contributions
- Add custom repositories
- Subdirectory scanning support (
skillsPath)
Lifecycle Management:
- Discover - Auto-detect
SKILL.mdfiles - Install - One-click to
~/.claude/skills/ - Uninstall - Safe removal with tracking
- Update - Check for updates (infrastructure ready)
Technical Architecture:
- Backend:
SkillService(526 lines) with GitHub API integration - Frontend: SkillsPage, SkillCard, RepoManager
- UI Components: Badge, Card, Table (shadcn/ui)
- State: Persistent storage in
config.json - i18n: 47+ translation keys
Prompts Management System
Approximately 1,300 lines of code - Complete system prompt management.
Multi-Preset Management:
- Create unlimited prompt presets
- Quick switch between presets
- One active prompt at a time
- Delete protection for active prompts
Cross-App Support:
- Claude:
~/.claude/CLAUDE.md - Codex:
~/.codex/AGENTS.md - Gemini:
~/.gemini/GEMINI.md
Markdown Editor:
- Full-featured CodeMirror 6 integration
- Syntax highlighting
- Dark theme (One Dark)
- Real-time preview
Smart Synchronization:
- Auto-write - Immediately write to live files
- Backfill protection - Save current content before switching
- Auto-import - Import from live files on first launch
- Modification protection - Preserve manual modifications
Technical Implementation:
- Backend:
PromptService(213 lines) - Frontend: PromptPanel (177), PromptFormModal (160), MarkdownEditor (159)
- Hooks: usePromptActions (152 lines)
- i18n: 41+ translation keys
Deep Link Protocol (ccswitch://)
One-click provider configuration import via URL scheme.
Features:
- Protocol registration on all platforms
- Import from shared links
- Lifecycle integration
- Security validation
Environment Variable Conflict Detection
Intelligent detection and management of configuration conflicts.
Detection Scope:
- Claude & Codex - Cross-app conflicts
- Gemini - Auto-discovery
- MCP - Server configuration conflicts
Management Features:
- Visual conflict indicators
- Resolution suggestions
- Override warnings
- Backup before changes
Improvements
Provider Management
New Presets:
- DouBaoSeed - ByteDance's DouBao
- Kimi For Coding - Moonshot AI
- BaiLing - BaiLing AI
- Removed AnyRouter - To avoid confusion
Enhancements:
- Model name configuration for Codex and Gemini
- Provider notes field for organization
- Enhanced preset metadata
Configuration Management
- Common config migration - From localStorage to
config.json - Unified persistence - Shared across all apps
- Auto-import - First launch configuration import
- Backfill priority - Correct handling of live files
UI/UX Improvements
Design System:
- macOS native - System-aligned color scheme
- Window centering - Default centered position
- Visual polish - Improved spacing and hierarchy
Interactions:
- Password input - Fixed Edge/IE reveal buttons
- URL overflow - Fixed card overflow
- Error copying - Copy-to-clipboard errors
- Tray sync - Real-time drag-and-drop sync
Bug Fixes
Critical Fixes
- Usage script validation - Boundary checks
- Gemini validation - Relaxed constraints
- TOML parsing - CJK quote handling
- MCP fields - Custom field preservation
- White screen - FormLabel crash fix
Stability
- Tray safety - Pattern matching instead of unwrap
- Error isolation - Tray failures don't block operations
- Import classification - Correct category assignment
UI Fixes
- Model placeholders - Removed misleading hints
- Base URL - Auto-fill for third-party providers
- Drag sort - Tray menu synchronization
Technical Improvements
Architecture
MCP v3.7.0:
- Removed legacy code (~1,000 lines)
- Unified initialization structure
- Backward compatibility maintained
- Comprehensive code formatting
Platform Compatibility:
- Windows winreg API fix (v0.52)
- Safe pattern matching (no
unwrap()) - Cross-platform tray handling
Configuration
Synchronization:
- MCP sync across all apps
- Gemini form-editor sync
- Dual-file reading (.env + settings.json)
Validation:
- Input boundary checks
- TOML quote normalization (CJK)
- Custom field preservation
- Enhanced error messages
Code Quality
Type Safety:
- Complete TypeScript coverage
- Rust type refinements
- API contract validation
Testing:
- Simplified assertions
- Better test coverage
- Integration test updates
Dependencies:
- Tauri 2.8.x
- Rust:
anyhow,zip,serde_yaml,tempfile - Frontend: CodeMirror 6 packages
- winreg 0.52 (Windows)
Technical Statistics
Total Changes:
- Commits: 85
- Files: 152 changed
- Additions: +18,104 lines
- Deletions: -3,732 lines
New Modules:
- Skills Management: 2,034 lines (21 files)
- Prompts Management: 1,302 lines (20 files)
- Gemini Integration: ~1,000 lines
- MCP Refactor: ~3,000 lines refactored
Code Distribution:
- Backend (Rust): ~4,500 lines new
- Frontend (React): ~3,000 lines new
- Configuration: ~1,500 lines refactored
- Tests: ~500 lines
Strategic Positioning
From Tool to Platform
v3.7.0 represents a shift in CC Switch's positioning:
| Aspect | v3.6 | v3.7.0 |
|---|---|---|
| Identity | Provider Switcher | AI CLI Management Platform |
| Scope | Configuration Management | Ecosystem Management |
| Applications | Claude + Codex | Claude + Codex + Gemini |
| Capabilities | Switch configs | Extend capabilities (Skills) |
| Customization | Manual editing | Visual manage... |
CC Switch v3.7.0
CC Switch v3.7.0
From Provider Switcher to All-in-One AI CLI Management Platform
中文更新说明 Chinese Documentation →
Overview
CC Switch v3.7.0 introduces six major features with over 18,000 lines of new code.
Release Date: 2025-11-19
Commits: 85 from v3.6.0
Code Changes: 152 files, +18,104 / -3,732 lines
New Features
Gemini CLI Integration
Complete support for Google Gemini CLI, becoming the third supported application (Claude Code, Codex, Gemini).
Core Capabilities:
- Dual-file configuration - Support for both
.envandsettings.jsonformats - Auto-detection - Automatically detect
GOOGLE_GEMINI_BASE_URL,GEMINI_MODEL, etc. - Full MCP support - Complete MCP server management for Gemini
- Deep link integration - Import via
ccswitch://protocol - System tray - Quick-switch from tray menu
Provider Presets:
- Google Official - OAuth authentication support
- PackyCode - Partner integration
- Custom - Full customization support
Technical Implementation:
- New backend modules:
gemini_config.rs(20KB),gemini_mcp.rs - Form synchronization with environment editor
- Dual-file atomic writes
MCP v3.7.0 Unified Architecture
Complete refactoring of MCP management system for cross-application unification.
Architecture Improvements:
- Unified panel - Single interface for Claude/Codex/Gemini MCP servers
- SSE transport - New Server-Sent Events support
- Smart parser - Fault-tolerant JSON parsing
- Format correction - Auto-fix Codex
[mcp_servers]format - Extended fields - Preserve custom TOML fields
User Experience:
- Default app selection in forms
- JSON formatter for validation
- Improved visual hierarchy
- Better error messages
Import/Export:
- Unified import from all three apps
- Bidirectional synchronization
- State preservation
Claude Skills Management System
Approximately 2,000 lines of code - A complete skill ecosystem platform.
GitHub Integration:
- Auto-scan skills from GitHub repositories
- Pre-configured repos:
ComposioHQ/awesome-claude-skills- Curated collectionanthropics/skills- Official Anthropic skillscexll/myclaude- Community contributions
- Add custom repositories
- Subdirectory scanning support (
skillsPath)
Lifecycle Management:
- Discover - Auto-detect
SKILL.mdfiles - Install - One-click to
~/.claude/skills/ - Uninstall - Safe removal with tracking
- Update - Check for updates (infrastructure ready)
Technical Architecture:
- Backend:
SkillService(526 lines) with GitHub API integration - Frontend: SkillsPage, SkillCard, RepoManager
- UI Components: Badge, Card, Table (shadcn/ui)
- State: Persistent storage in
skills.json - i18n: 47+ translation keys
Prompts Management System
Approximately 1,300 lines of code - Complete system prompt management.
Multi-Preset Management:
- Create unlimited prompt presets
- Quick switch between presets
- One active prompt at a time
- Delete protection for active prompts
Cross-App Support:
- Claude:
~/.claude/CLAUDE.md - Codex:
~/.codex/AGENTS.md - Gemini:
~/.gemini/GEMINI.md
Markdown Editor:
- Full-featured CodeMirror 6 integration
- Syntax highlighting
- Dark theme (One Dark)
- Real-time preview
Smart Synchronization:
- Auto-write - Immediately write to live files
- Backfill protection - Save current content before switching
- Auto-import - Import from live files on first launch
- Modification protection - Preserve manual modifications
Technical Implementation:
- Backend:
PromptService(213 lines) - Frontend: PromptPanel (177), PromptFormModal (160), MarkdownEditor (159)
- Hooks: usePromptActions (152 lines)
- i18n: 41+ translation keys
Deep Link Protocol (ccswitch://)
One-click provider configuration import via URL scheme.
Features:
- Protocol registration on all platforms
- Import from shared links
- Lifecycle integration
- Security validation
Environment Variable Conflict Detection
Intelligent detection and management of configuration conflicts.
Detection Scope:
- Claude & Codex - Cross-app conflicts
- Gemini - Auto-discovery
- MCP - Server configuration conflicts
Management Features:
- Visual conflict indicators
- Resolution suggestions
- Override warnings
- Backup before changes
Improvements
Provider Management
New Presets:
- DouBaoSeed - ByteDance's DouBao
- Kimi For Coding - Moonshot AI
- BaiLing - BaiLing AI
- Removed AnyRouter - To avoid confusion
Enhancements:
- Model name configuration for Codex and Gemini
- Provider notes field for organization
- Enhanced preset metadata
Configuration Management
- Common config migration - From localStorage to
config.json - Unified persistence - Shared across all apps
- Auto-import - First launch configuration import
- Backfill priority - Correct handling of live files
UI/UX Improvements
Design System:
- macOS native - System-aligned color scheme
- Window centering - Default centered position
- Visual polish - Improved spacing and hierarchy
Interactions:
- Password input - Fixed Edge/IE reveal buttons
- URL overflow - Fixed card overflow
- Error copying - Copy-to-clipboard errors
- Tray sync - Real-time drag-and-drop sync
Bug Fixes
Critical Fixes
- Usage script validation - Boundary checks
- Gemini validation - Relaxed constraints
- TOML parsing - CJK quote handling
- MCP fields - Custom field preservation
- White screen - FormLabel crash fix
Stability
- Tray safety - Pattern matching instead of unwrap
- Error isolation - Tray failures don't block operations
- Import classification - Correct category assignment
UI Fixes
- Model placeholders - Removed misleading hints
- Base URL - Auto-fill for third-party providers
- Drag sort - Tray menu synchronization
Technical Improvements
Architecture
MCP v3.7.0:
- Removed legacy code (~1,000 lines)
- Unified initialization structure
- Backward compatibility maintained
- Comprehensive code formatting
Platform Compatibility:
- Windows winreg API fix (v0.52)
- Safe pattern matching (no
unwrap()) - Cross-platform tray handling
Configuration
Synchronization:
- MCP sync across all apps
- Gemini form-editor sync
- Dual-file reading (.env + settings.json)
Validation:
- Input boundary checks
- TOML quote normalization (CJK)
- Custom field preservation
- Enhanced error messages
Code Quality
Type Safety:
- Complete TypeScript coverage
- Rust type refinements
- API contract validation
Testing:
- Simplified assertions
- Better test coverage
- Integration test updates
Dependencies:
- Tauri 2.8.x
- Rust:
anyhow,zip,serde_yaml,tempfile - Frontend: CodeMirror 6 packages
- winreg 0.52 (Windows)
Technical Statistics
Total Changes:
- Commits: 85
- Files: 152 changed
- Additions: +18,104 lines
- Deletions: -3,732 lines
New Modules:
- Skills Management: 2,034 lines (21 files)
- Prompts Management: 1,302 lines (20 files)
- Gemini Integration: ~1,000 lines
- MCP Refactor: ~3,000 lines refactored
Code Distribution:
- Backend (Rust): ~4,500 lines new
- Frontend (React): ~3,000 lines new
- Configuration: ~1,500 lines refactored
- Tests: ~500 lines
Strategic Positioning
From Tool to Platform
v3.7.0 represents a shift in CC Switch's positioning:
| Aspect | v3.6 | v3.7.0 |
|---|---|---|
| Identity | Provider Switcher | AI CLI Management Platform |
| Scope | Configuration Management | Ecosystem Management |
| Applications | Claude + Codex | Claude + Codex + Gemini |
| Capabilities | Switch configs | Extend capabilities (Skills) |
| Customization | Manual editing | Visual management (Prompts) |
| Integration | Isolated apps | Unified management (MCP) |
Six Pillars of AI CLI Management
- Configuration Management - Provider switching and management
- Capability Extension - Skills installation and lifecycle
- Behavior Customization - System prompt presets
- Ecosystem Integration - Deep links and sharing
- Multi-AI Support - Claude/Codex/Gemini
- Intelligent Detection - Conflict prevention
Download & Installation
System Requirements
- Windows: Windows 10+
- macOS: macOS 10.15 (Catalina)+
- Linux: Ubuntu 22.04+ / Debian 11+ / Fedora 34+
Download Links
Visit Releases to download:
- Windows:
CC-Switch-v3.7.0-Windows.msior-Portable.zip - macOS:
CC-Switch-v3.7.0-macOS.tar.gzor.zip - Linux:
CC-Switch-v3.7.0-Linux.AppImageor.deb
Homebrew (macOS)
brew tap farion1231/ccswitch
brew install --cask cc-switchUpdate:
brew upgrade --cask cc-switchMigration Notes
From v3.6.x
Automatic migration - No action required, configs are fully compatible
From v3.1.x or Earlier
Two-step migration required:
- First upgrade to v3.2.x (performs one-time m...