CC Switch v3.8.0

持久化架构升级,为云同步奠定基础

English Version →

---

概览

CC Switch v3.8.0 是一次重大的架构升级版本,重构了数据持久化层和用户界面,为未来的云同步和本地代理功能奠定基础。

发布日期:2025-11-28

提交数量:从 v3.7.1 开始 51 个提交

代码变更:207 个文件,+17,297 / -6,870 行

---

重大更新

持久化架构升级

从单一 JSON 文件存储迁移到 SQLite + JSON 双层架构,实现数据分层管理。

架构变更

v3.7.x (旧)                      v3.8.0 (新)
┌─────────────────┐              ┌─────────────────────────────────┐
│  config.json    │              │  SQLite (可同步数据)             │
│  ┌───────────┐  │              │  ├─ providers     供应商配置     │
│  │ providers │  │              │  ├─ mcp_servers   MCP 服务器     │
│  │ mcp       │  │     ──>      │  ├─ prompts       提示词         │
│  │ prompts   │  │              │  ├─ skills        技能           │
│  │ settings  │  │              │  └─ settings      通用设置       │
│  └───────────┘  │              ├─────────────────────────────────┤
└─────────────────┘              │  JSON (设备级数据)               │
                                 │  └─ settings.json 本地设置       │
                                 │     ├─ 窗口位置                  │
                                 │     ├─ 路径覆盖                  │
                                 │     └─ 当前选中供应商 ID          │
                                 └─────────────────────────────────┘

双层结构设计

层级存储方式数据类型同步策略
云同步层SQLite供应商、MCP、Prompts、Skills未来可同步
设备层JSON窗口状态、本地路径、当前选择保持本地

技术实现

模块化重构

database/
├── mod.rs              核心 Database 结构体和初始化
├── schema.rs           表结构定义、Schema 版本迁移
├── backup.rs           SQL 导入导出、二进制快照备份
├── migration.rs        JSON → SQLite 数据迁移引擎
└── dao/                数据访问对象层
    ├── providers.rs    供应商 CRUD
    ├── mcp.rs          MCP 服务器 CRUD
    ├── prompts.rs      提示词 CRUD
    ├── skills.rs       Skills CRUD
    └── settings.rs     键值对设置存储

---

全新用户界面

完整重构的 UI 设计,提供更现代化的视觉体验。

视觉改进

交互优化

兼容性调整

---

日语支持

新增日语(日本語)界面支持,国际化语言扩展到三种。

支持语言

---

新增功能

Skills 递归扫描

Skills 管理系统支持递归扫描仓库目录,自动发现嵌套的技能文件。

改进内容

---

供应商图标配置

供应商预设支持自定义图标配置。

功能特性

---

表单验证增强

供应商表单新增必填字段验证,提供更友好的错误提示。

改进内容

---

开机自启

新增开机自动启动功能,支持 Windows、macOS 和 Linux 三个平台。

功能特性

---

新增供应商预设

---

Bug 修复

关键修复

自定义端点丢失问题

修复更新供应商时自定义请求地址意外丢失的问题。

Gemini 配置问题

供应商验证问题

平台兼容性

Linux

其他修复

---

技术改进

架构重构

供应商服务模块化

services/provider/
├── mod.rs          核心服务 - add/update/delete/switch/validate
├── live.rs         Live 配置文件操作
├── gemini_auth.rs  Gemini 认证类型检测
├── endpoints.rs    自定义端点管理
└── usage.rs        用量脚本执行

深链接模块化

deeplink/
├── mod.rs       模块导出
├── parser.rs    URL 解析
├── provider.rs  供应商导入逻辑
├── mcp.rs       MCP 导入逻辑
├── prompt.rs    提示词导入
├── skill.rs     Skills 导入
└── utils.rs     工具函数

代码质量

清理工作

测试更新

---

技术统计

总体变更:
- 提交数:51
- 文件数:207 个文件变更
- 新增:+17,297 行
- 删除:-6,870 行
- 净增:+10,427 行

提交类型分布:
- fix:25 个(Bug 修复)
- refactor:11 个(代码重构)
- feat:9 个(新功能)
- test:1 个(测试)
- 其他:5 个

改动区域分布:
- 前端源码:112 个文件
- Rust 后端:63 个文件
- 测试文件:20 个文件
- 国际化文件:3 个文件

---

迁移说明

从 v3.7.x 升级

自动迁移 - 首次启动时自动执行:

  1. 检测 config.json 是否存在
  2. 在事务中迁移所有数据到 SQLite
  3. 设备级设置迁移到 settings.json
  4. 显示迁移成功通知

数据安全

---

下载与安装

系统要求

下载链接

访问 Releases 下载:

Homebrew(macOS)

brew tap farion1231/ccswitch
brew install --cask cc-switch

更新:

brew upgrade --cask cc-switch

致谢

贡献者

感谢所有让这个版本成为可能的贡献者:

赞助商

智谱AI - GLM CODING PLAN 赞助商

使用此链接购买可享九折优惠

PackyCode - API 中转服务合作伙伴

使用 "cc-switch" 优惠码注册享 9 折优惠

闪电说 - 本地优先的 AI 语音输入法

免费下载 Mac/Win 双平台

MiniMax - MiniMax M2 CODING PLAN 赞助商

黑五优惠进行中,套餐9.9元起

---

反馈与支持

---

未来展望

v3.9.0 预览(暂定):

敬请期待更多更新!

---

Happy Coding!