Self Checks / 自检
CC Switch Version / 版本号
3.14.1
Operating System / 操作系统
Windows
Related App / 涉及应用
Claude Code
Steps to Reproduce / 重现步骤
- 在 Claude Code 中登录官方 Anthropic 账号。
- 使用 CC Switch 将 Claude Code 切回第三方 API,例如 DeepSeek:
```json
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
"ANTHROPIC_MODEL": "deepseek-v4-pro[1m]"
}
}
- 启动一个新的 Claude Code session。
- 确认 /status 显示的是预期的第三方模型和 base URL。
- 要求 Claude Code 使用 WebSearch
Expected Behavior / 期望行为
- 从官方 Claude 登录 切换到第三方 API 后,Claude Code 的运行状态应当与当前选中的 provider 兼容。
- 如果当前 provider 不支持某些官方第一方工具路径,CC Switch 不应保留会导致 Claude Code 发送不兼容工具请求的官方缓存状态。
Actual Behavior / 实际行为
/status 显示的模型和 base URL 都是正确的第三方 provider,但 WebSearch 失败:
WebSearch returned API Error: 400
deepseek-reasoner does not support this tool_choice
这会造成一种状态:provider 看起来已经切换成功,但 WebSearch 仍然受到旧的官方 Claude Code 缓存状态影响。
Additional Context / 补充信息
CC Switch 正确恢复了 Claude 的 live settings 文件:
~/.claude/settings.json
但在登录过官方 Anthropic 账号后,Claude Code 还会在下面这个状态文件里写入官方缓存字段:
~/.claude.json
观察到会影响该问题的字段包括:
cachedGrowthBookFeatures
cachedExperimentFeatures
closedIssuesLastChecked
claudeAiMcpEverConnected
clientDataCache
additionalModelOptionsCache
additionalModelCostsCache
penguinModeOrgEnabled
手动清理 ~/.claude.json 中这些官方 Claude 缓存字段后,问题可以恢复。
单独执行 claude auth logout 在我的测试中不足以解决该问题。
一个可能的修复方向:
- 在 CC-Switch 切换时,写入
~/.claude/settings.json 后,检查 env.ANTHROPIC_BASE_URL。
- 如果 base URL host 不是
anthropic.com 或其子域名,则认为当前是第三方 API。
- 在这种情况下,从
~/.claude.json 中移除上述官方 Claude 缓存字段。
- 修改前为
~/.claude.json 创建备份。
- 保留无关状态,例如 MCP servers、onboarding flags 等。
Self Checks / 自检
I have read the FAQ section in README.
我已阅读 README 中的常见问题。
I have searched for existing issues, including closed ones.
我已搜索过已有的 Issue,包括已关闭的。
CC Switch Version / 版本号
3.14.1
Operating System / 操作系统
Windows
Related App / 涉及应用
Claude Code
Steps to Reproduce / 重现步骤
Expected Behavior / 期望行为
Actual Behavior / 实际行为
/status 显示的模型和 base URL 都是正确的第三方 provider,但 WebSearch 失败:
这会造成一种状态:provider 看起来已经切换成功,但 WebSearch 仍然受到旧的官方 Claude Code 缓存状态影响。
Additional Context / 补充信息
CC Switch 正确恢复了 Claude 的 live settings 文件:
~/.claude/settings.json但在登录过官方 Anthropic 账号后,Claude Code 还会在下面这个状态文件里写入官方缓存字段:
~/.claude.json观察到会影响该问题的字段包括:
手动清理
~/.claude.json中这些官方 Claude 缓存字段后,问题可以恢复。单独执行
claude auth logout在我的测试中不足以解决该问题。一个可能的修复方向:
~/.claude/settings.json后,检查env.ANTHROPIC_BASE_URL。anthropic.com或其子域名,则认为当前是第三方 API。~/.claude.json中移除上述官方 Claude 缓存字段。~/.claude.json创建备份。