· 6 分钟 · 工具

Claude Code 的 CC Switch:管理账户、提供商和配置

Claude Code 的 CC Switch:管理账户、提供商和配置

上午 9:05,你将 Claude Code 指向公司网关。到了 11:30,你需要使用个人 Anthropic 账号。午餐后,客户的代码仓库又要求使用它自己的 MCP 服务器和模型别名。一天结束时, ~/.claude/settings.json 已经被编辑了三次,一个 shell 中仍保留着旧令牌,而且没人能确定下一次请求会发送到哪个端点。

CC Switch 通过在桌面应用中管理命名配置方案,解决这一操作问题。你无需手动迁移凭据、提供商 URL、MCP 定义和智能体专用配置文件,只需选择应当启用的配置方案。关键的工程细节在于,这是配置管理,而不是账号虚拟化:Claude Code 仍然读取其常规本地文件和环境设置,而 CC Switch 则协调写入这些位置的内容。

这种便利性相当可观,但其涉及的信任边界同样不容忽视。能够切换开发者账户的工具,必须能够读取或写入开发者凭据。在采用它之前,你应当准确了解它会修改哪些文件、它自己的数据库存放在哪里,以及这些文件如何受到保护。

CC Switch 对 Claude Code 的管理究竟涵盖什么

CC Switch 是一款面向编程智能体的开源桌面配置管理器。它支持的集成随时间不断扩展,因此在将固定的集成列表作为标准之前,请查看当前仓库和发布说明。Claude Code 是其主要集成之一;当前版本也面向其他命令行编程智能体,例如 Codex 和 Gemini CLI。

对于 Claude Code,提供商配置通常包含:

  • 兼容 Anthropic 的 API 端点
  • API 密钥或身份验证令牌
  • 模型映射或与模型相关的环境变量值
  • 其他环境变量
  • MCP 服务器定义
  • 应随该配置切换的 Claude Code 设置

当“账户”不只是指 Anthropic 登录账户时,这就很有用。在实际部署中,开发者可能会在以下选项之间切换:

  • 直接访问 Anthropic API
  • 组织内需要身份验证的 API 网关
  • 兼容 Anthropic 的第三方提供商
  • 相互独立的个人、预发布和生产计费账户
  • 提供兼容请求语义的本地或远程代理

CC Switch 集中管理这些选项,并激活选中的配置。它 并不能 让所有兼容端点的行为完全一致。模型名称、身份验证请求头、速率限制、提示缓存以及不受支持的 API 字段方面的差异,仍需由提供商负责。

方式切换成本可接触凭据的对象MCP 管理最适用场景
通过 Shell 导出环境变量初期较低,后期容易出错Shell、历史记录、子进程手动单个临时账户
手动编辑配置文件中等编辑器、备份、本地文件手动稳定的单提供商配置
封装脚本设置完成后较低脚本或密钥管理器取决于脚本愿意维护工具的团队
CC Switch 配置通过桌面界面切换,成本较低CC Switch 和智能体配置文件集中式界面多个账户、提供商或智能体
外部密钥管理器加封装脚本设置成本最高密钥管理器和运行时进程自定义严格的企业管控

这张表揭示了其中的权衡:CC Switch 减少了操作失误,但它也成为另一个具有高权限的本地应用。

安装与平台支持

CC Switch 通过项目的 GitHub Releases 页面分发。仓库当前说明支持 macOS、Windows 和 Linux 桌面平台,发布产物则因平台和版本而异。请核实你计划部署的版本所附带的资源;有源代码并不意味着每次发布都会为所有操作系统版本、CPU 架构或软件包格式提供构建产物。

在 macOS 上,项目提供了通过 Homebrew cask 安装的流程:

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

在受管环境中使用下载的二进制文件之前,请核实 Homebrew 安装了什么:

brew info --cask cc-switch
brew list --cask cc-switch
codesign -dv --verbose=4 "/Applications/CC Switch.app" 2>&1

Windows 和 Linux 用户应从该版本发布的资源中获取安装程序或软件包。软件包名称和分发渠道可能变化,因此,如果没有固定并测试确切的发布版本,我会避免将可能已经过时的 winget、Scoop .deb或 AppImage 命令写入工作站初始化脚本。

对于受控部署:

  1. 固定 CC Switch 版本。
  2. 记录预期的发布校验和。
  3. 使用可丢弃的 Claude Code 配置进行测试。
  4. 列出激活配置期间发生更改的所有文件。
  5. 制定升级流程,而不是在不知不觉中始终跟随最新版本。

安装前做一个简单的快照会有所帮助:

mkdir -p /tmp/claude-config-before
cp -R ~/.claude /tmp/claude-config-before/ 2>/dev/null || true

# Install CC Switch, create a test profile, and activate it.

diff -ru /tmp/claude-config-before/.claude ~/.claude || true

这可以发现文档可能遗漏的行为,包括格式重写、字段删除,或 MCP 条目被合并到非预期的作用域。

创建和切换提供商配置

一份配置应对应一个一致的安全与计费上下文。我会使用能够体现影响的名称,例如:

  • anthropic-personal
  • company-gateway-dev
  • customer-a-restricted
  • local-proxy-test

避免使用这样的标签: default-2。发生生产事故时,当前配置的名称应让你无需打开编辑器,就能回答“这个请求会发往哪里?”

使用兼容 Anthropic 的网关的 Claude Code 配置,生成的设置在概念上可能类似于:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://ai-gateway.example.com/anthropic",
    "ANTHROPIC_AUTH_TOKEN": "${TOKEN_MANAGED_BY_PROFILE}",
    "ANTHROPIC_MODEL": "company-claude-default"
  },
  "permissions": {
    "defaultMode": "default"
  }
}

具体需要哪些变量取决于提供商和 Claude Code 版本。有些服务要求使用 ANTHROPIC_API_KEY;某些网关集成则使用 ANTHROPIC_AUTH_TOKEN。不要仅仅为了让身份验证“更有可能”成功就同时填写两者。应确定 Claude Code 会优先使用哪个凭据,因为优先级更高的旧值可能导致请求使用错误的账户。

切换后,请启动一个 新的 Claude Code 进程:

claude

在 Claude Code 已经运行时进行切换,实际会发生什么很容易被误解。该工具可以更新磁盘上的文件,但无法可靠地替换运行中进程已经继承的环境变量值。因此,现有会话可能会继续使用原来的提供商,直到重启。

在不输出密钥的情况下验证实际生效的配置:

python3 - <<'PY'
import json
from pathlib import Path

path = Path.home() / ".claude" / "settings.json"
data = json.loads(path.read_text())
env = data.get("env", {})

for key, value in sorted(env.items()):
    if "KEY" in key or "TOKEN" in key or "SECRET" in key:
        value = "<redacted>"
    print(f"{key}={value}")
PY

一个常见陷阱是只测试 Claude 是否响应。兼容代理可以返回有效响应,同时在你不知情的情况下将请求的模型映射为另一个模型。当模型身份很重要时,请核实提供商的请求日志或网关审计记录。

跨智能体的 MCP 设置

在 MCP 配置方面,集中管理的价值开始超越简单的令牌选择器。开发者可能在多个智能体中配置了文件系统、问题跟踪器、数据库和浏览器服务器,而每个智能体都有自己的结构或存储位置。

典型的 MCP 服务器定义包含命令和参数:

{
  "mcpServers": {
    "project-files": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/alex/work/customer-a"
      ]
    }
  }
}

请将其视为可执行配置。激活该配置可能允许智能体启动 npx、执行软件包,并将指定目录暴露给面向模型的工具层。

在实践中,我会根据仓库的敏感程度划分 MCP 配置:

  • 通用配置开放文档和低风险工具。
  • 客户配置仅开放该客户的工作目录。
  • 数据库服务器和生产控制服务器不在全局启用。
  • MCP 服务器使用的令牌,其权限范围独立于模型提供商令牌设置。

此外,如果智能体提供原生 MCP 命令,也应将其结果与 CC Switch 生成的结果进行比较。对于 Claude Code,请在切换后检查当前启用的服务器:

claude mcp list

不要假定一个 MCP JSON 对象可以原样复制到所有编程智能体中。CC Switch 可以在其界面中统一管理方式,但每个下游智能体仍然有自己的结构、作用域规则和生命周期行为。

凭据存储在哪里

需要审计两个存储层:

  1. CC Switch 的应用数据,用于保存配置。
  2. 编程智能体的原生配置,在激活配置时写入或更新。

CC Switch 使用本地应用存储,而非托管账户服务。具体路径因平台而异,也随着应用的演进发生过变化,因此应从已安装的构建版本中确定路径,而不是依赖从旧问题记录中复制的路径。常见的操作系统应用数据根目录包括:

macOS:   ~/Library/Application Support/
Windows: %APPDATA%
Linux:   ~/.local/share/ or an XDG data directory

搜索时不要输出凭据内容:

find "$HOME/Library/Application Support" \
  -maxdepth 3 -iname '*cc*switch*' -print 2>/dev/null

find "${XDG_DATA_HOME:-$HOME/.local/share}" \
  -maxdepth 3 -iname '*cc*switch*' -print 2>/dev/null

对于 Claude Code,请检查 ~/.claude/,尤其是 settings.json,以及适用时的项目级 Claude 配置。其他智能体通常使用独立目录,例如 ~/.codex/ 或 ~/.gemini/,但文件名和凭据格式取决于智能体的具体版本。

不要认为“存储在本地”就意味着“已加密”。除非你安装的 CC Switch 版本明确使用操作系统凭据保险库来保存相关密钥,否则应将其应用数据库和生成的智能体文件视为可能被你的用户账户以明文读取的内容。通过检查文件和审查仓库代码来确认,同时注意不要将密钥粘贴到终端、工单或聊天会话中。

桌面端令牌访问的安全影响

CC Switch 必然以你的桌面用户权限运行。如果该账户可以读取某个令牌,那么恶意软件或以同一用户身份运行的其他进程也可能读取它。CC Switch 无法消除终端安全方面的要求。

主要风险包括:

  • 凭据集中: 多个提供商的令牌可能同时存在于同一个本地配置档案存储中。
  • 配置覆盖: 激活配置档案可能会替换或合并智能体使用的文件。
  • 备份泄露: 应用数据和点文件可能被纳入未加密的备份。
  • 进程继承: 旧终端和正在运行的智能体可能保留先前的凭据。
  • MCP 执行: 配置档案可能启用具有文件系统或网络访问权限的命令。
  • 供应链风险: 安装更新会让新的桌面端代码获得对已存储令牌的访问权限。
  • 屏幕与日志泄露: 界面诊断信息或错误报告可能暴露端点和凭据数据。

为该工具实施最小权限控制:

chmod 700 ~/.claude
chmod 600 ~/.claude/settings.json

如果提供商支持,应优先使用短期有效或可撤销的网关令牌。切勿为了方便而将生产环境的管理凭据放入配置档案。设备停用后应轮换令牌;删除配置档案并不能证明凭据从未被复制到其他地方。

对于企业部署,我会要求:

  • 固定使用经过审查的版本
  • 全盘加密
  • 严格管控备份处理
  • 提供商侧的支出限额和审计日志
  • 为每位开发者和每个环境分别配置令牌
  • 有文档记录的撤销流程
  • 定期审查 MCP 命令和对外开放的路径

CC Switch 很适合本地多提供商工作流。但对于政策要求使用硬件保护的密钥、临时凭据或集中强制配置的环境,它并不一定适用。在这些情况下,企业网关加上由密钥管理器提供凭据的启动器,可能是更站得住脚的设计。

实践要点

  • 当反复手动编辑导致账户、端点或 MCP 配置出错时,可以使用 CC Switch。
  • 推广部署前,请在项目当前的 GitHub 发布版本中确认各平台的安装包。
  • 为每个配置档案命名时,应明确标识其提供商、所有者和环境。
  • 切换后请重启 Claude Code,因为正在运行的进程可能保留旧值。
  • 检查生成的文件,并使用 claude mcp list 来验证实际生效的状态。
  • 将 CC Switch 的本地数据和下游智能体配置视为敏感的凭据存储。
  • 像限定 API 令牌权限一样谨慎地限定 MCP 服务器的权限范围;它们可以执行命令并暴露文件。
  • 固定版本、测试配置差异,并保留令牌撤销途径。
  • 除非配套控制措施明确支持承担相应风险,否则不要将影响重大的生产环境凭据放入桌面切换工具。
A

本博客由 AI Prime Tech 发布。文章借助 AI 辅助起草;在据此采取行动前,请对照官方文档核实模型 ID、价格和限额等特定版本的细节。

以更低价格接入 Claude API

一个 API 密钥即可使用 Claude Opus 5.5、Sonnet 5、Haiku 4.5 和 Fable 5.1,以及 GPT-6 个模型。按量付费,无需订阅。

获取 API 密钥 →
AI Prime Tech 是独立的第三方 API 网关。Claude™ 和 Anthropic® 是 Anthropic, PBC 的商标。此处不暗示任何关联或背书。