跳转到内容

config.toml 更改后不知不觉又回到之前的配置 - cc-switch

Quick fix

cc-switch 数据库是单一事实源,手动修改本地文件会被覆盖,需在软件内的 MCP 管理器或通用配置模块中统一修改。

报错原文
在 ~\.codex\config.toml 更改配置后, 过几天不知不觉又回到之前的配置了, 例如删掉一个 mcp, 删了两个月了一直删不掉, 时不时就回来

cc-switch 的设计机制是将自身数据库作为单一事实源(SSOT)。在切换供应商、同步配置或软件启动时,cc-switch 会将数据库中存储的配置(包括历史遗留的 MCP 启用状态)全量导出并覆盖写入到本地的 ~/.codex/config.toml 中。因此,直接在本地文件中删除 MCP 或修改配置,会在下次同步时被数据库旧数据还原。

此外,早期版本(< v3.12.2)存在 TOML 追加而非智能合并的 bug,且反向同步时可能误将本地运行时配置吸入数据库,进一步导致了配置重复与数据污染。

  1. 停止直接修改本地 ~/.codex/config.toml 文件,打开 cc-switch 主界面。

  2. 点击右上角的“MCP 管理器”,在列表中找出并删除不需要的 MCP 服务,确保数据库状态与期望一致。

  3. 若需修改通用配置,请在“编辑供应商”界面勾选“写入通用配置”,并通过“编辑通用配置”模块进行修改,由 cc-switch 统一接管。

  4. 若配置已严重污染且无法理清,请备份 baseurl、apikey 和 model-id,删除用户目录下的 .cc-switch 文件夹后重新添加供应商。

Toolcodex
Version未知
PlatformsmacOSWindows
为什么在 cc-switch 界面编辑 config.toml 保存时提示格式错误?
macOS 的 WKWebView 默认开启“智能引号”,会将英文引号自动替换为中文全角引号导致 TOML 校验失败。请检查引号或升级至最新版。
cc-switch 支持增量合并本地手动添加的 MCP 吗?
不支持。cc-switch 采用全量导出机制,若您在本地手动添加了 MCP,请先在 cc-switch 的 MCP 管理中执行导入操作,将其纳入数据库统一管理。

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