跳转到内容

JSON 解析错误: expected value at line 1 - cc-switch

Quick fix

升级 cc-switch 修复并发写入导致的 JSON 损坏,并在通用配置中添加自定义字段防止切换时被整份覆盖丢失。

报错原文
JSON 解析错误: C:\Users\soham\.gemini\settings.json: expected value at line 1 column 1

在 cc-switch 切换或新增供应商时,由于并发的 failover 或热切换操作,会导致 UI 状态与 `settings.json` 文件不同步,甚至使文件损坏为空,从而引发 JSON 解析错误。此外,cc-switch 默认使用快照整份覆盖目标应用的 `settings.json`,这会导致 `tui`、`hooks` 等非供应商自定义字段被静默丢弃。

官方在 v3.13.0 中修复了并发导致的状态混乱和 JSON 解析容错问题,但整份覆盖导致自定义字段丢失的机制依然存在(如 v3.18.0 中 `tui` 丢失导致 Claude Code 变全屏)。用户需通过“通用配置”功能手动注入需要保留的字段。

  1. 升级 cc-switch 至 v3.13.0 或更高版本,以修复并发切换导致的 `settings.json` 状态混乱及 JSON 解析报错问题。

  2. 针对切换时自定义字段(如 `tui`、`hooks`)被覆盖丢失的问题,在 cc-switch 界面左上角的“通用配置”中添加需要保留的 JSON 片段。

    // cc-switch 通用配置
    {
    "tui": "default"
    }
Toolcc-switch
Version3.12.3 - 3.18.0
PlatformsWindows
升级到 v3.13.0 后 JSON 解析错误依然存在怎么办?
请检查 `settings.json` 是否已被破坏为空文件,若是请手动恢复。若仍报错,请重新打开 issue 提供日志。
新增或切换服务商导致 hooks、tui 等自定义配置丢失怎么办?
cc-switch 会整份覆盖配置文件,请将需要保留的通用配置片段写在“通用配置”中以便快速写入。
可否加个选项不显示托盘图标,或解决托盘图标重复问题?
Windows 下重复打开产生多个图标是已知 bug,正在修复中,未来会在设置里增加最小化到托盘的开关。

这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。