无法导入供应商,无法进行会话管理 cc-switch
Quick fix
升级 cc-switch 以支持 jsonc 配置;WSL2 环境需定时克隆数据库至 Windows 本地路径以绕过 SQLite 锁定。
Symptom
Section titled “Symptom”显示无法导入供应商,无法进行会话管理,无法识别到Token消耗。导致该问题的原因主要有以下几种情况:1. 配置文件格式不兼容:当 OpenCode 配置文件为 opencode.jsonc 时,cc-switch 旧版本无法解析,导致导入失败(已在 v3.15.0 及之后版本修复)。2. WSL2 数据库路径锁定:在 Windows 宿主机运行 cc-switch 时,由于 SQLite 对 WSL 的 UNC 网络路径的文件锁支持不符合标准,极易引发数据库锁定,导致无法读取 WSL2 中的会话和 Token 数据。3. 同步机制限制:手动修改全局配置或 WebDAV 恢复时,部分设备级参数不会自动同步。
升级 cc-switch 至 v3.15.0 或更高版本,以原生支持 opencode.jsonc 格式的配置导入与回写。
若在 Windows 下使用 WSL2 运行 OpenCode,请在 WSL 中设置定时任务,将 ~/.local/share/opencode/opencode.db 单向克隆至 Windows 宿主机的本地路径,以绕过 SQLite 的 UNC 路径锁定问题。
Affected Versions
Section titled “Affected Versions”Toolcc-switch
Version3.14.1 - 3.16.5
PlatformsWindowsmacOSLinux
Source Issues
Section titled “Source Issues”本页汇总自 4 个真实 issue
- WebDAV 备份恢复后,为什么部分设置没有同步成功?
- 这是有意设计的。未同步的部分被归类为设备级别的参数,云同步主要同步供应商相关数据。
- 手动修改 opencode.json 后,为什么 cc-switch 没有自动同步配置?
- cc-switch 不会实时监控外部手动修改,需在应用内重新导入或刷新。
- 为什么在 Windows 上直接配置 WSL 的 UNC 路径依然无法读取数据库?
- Windows 访问 WSL 采用的是 UNC 网络路径,SQLite 在此类路径上极易引发数据库锁定或文件损坏,目前只能通过定时克隆数据库到 Windows 本地路径来折中解决。
每次点击都会先弹出系统文件夹选择器 cc-switch修改 src/App.tsx 移除 handleOpenTerminal 中的 pickDirectory() 调用,即可解决点击打开终端时强制弹出文件夹选择器的问题。skills同步到了未选择的应用上 OpenCode升级 cc-switch 到 v3.12.3 修复隐式推断 bug,并在 OpenCode 设置中关闭默认读取 .claude 目录下 skills 的选项。protocol handler not registered在 Linux 的 CC Switch.desktop 文件中将 Exec 修改为 cc-switch %U,解决 Chromium 浏览器无法识别导入协议的问题;WSL 同步需检查管理员权限。
这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。