Claude Code 降级指南 —— 让第三方模型重新工作
写在前面首先!A八分钱赣A马!
2026年5月28日,Claude Code 推送了 v2.1.156 静默更新。这个版本在 API 请求的 messages 数组中新增了 role: "system" 的消息。然而 DeepSeek、GLM、通义千问等第三方模型的 API 目前只接受 user 和 assistant 两种角色,导致 JSON 反序列化失败,喜提满屏报错:
12API Error: 400 Failed to deserialize the JSON body into the target type:messages[1].role: unknown variant 'system', expected 'user' or 'assistant'
不管背后的动机是什么,客观结果是新版 Claude Code 与第三方模型的兼容性已经断了。想继续用 DeepSeek?降级是目前最直接的方案。下面是我最直白、最简洁、最不绕弯子、只讲核心、不废话、不扩展、不铺垫、不抒情、不解释原理的降级方法。
降级前必须做的:禁止自动更新Claude Code 有自动更新机制,不关掉的话隔天它又自己升回去了,等于白干。两种方式任选其一:
方式一:环境变量(推荐,命令行专用)
123# Linux / macOSexport DISABLE_AUTOUPDATER="1"export DISABLE_UPDATES="1"
123# Windows PowerShell$env:DISABLE_AUTOUPDATER="1"$env:DISABLE_UPDATES="1"
方式二:写配置文件(全局生效,一劳永逸)
编辑 ~/.claude/settings.json(Windows 路径为 C:\Users\<你的用户名>\.claude\settings.json),加入:
1234{ "DISABLE_AUTOUPDATER": "1", "DISABLE_UPDATES": "1"}
建议两个都上。别问我为什么,A八分钱赣A马的自动更新可比你想象的勤快。
Linux / macOS 降级Claude Code 本质上是 TypeScript 实现,npm 管理版本即可。截至 2026年5月29日,最后一个最稳定支持第三方模型的版本是 v2.1.150。
123456789101112# 1. 禁止自动更新export DISABLE_AUTOUPDATER="1"export DISABLE_UPDATES="1"# 2. 卸载当前版本npm uninstall -g @anthropic-ai/claude-code# 3. 安装稳定旧版本npm install -g @anthropic-ai/claude-code@2.1.150# 4. 验证版本,确认已经回退成功claude --version
如果 npm 下载太慢,用国内镜像:
1npm install -g @anthropic-ai/claude-code@2.1.153 --registry=https://registry.npmmirror.com
Windows 降级原理一样,只是环境变量的写法不同:
123456789101112# 1. 禁止自动更新$env:DISABLE_AUTOUPDATER="1"$env:DISABLE_UPDATES="1"# 2. 卸载npm uninstall -g @anthropic-ai/claude-code# 3. 安装旧版本npm install -g @anthropic-ai/claude-code@2.1.150# 4. 验明正身claude --version
注意:$env: 变量只在当前 PowerShell 窗口生效。强烈建议同时修改 settings.json 做持久化(路径见上文),否则下次开终端它又会自己升回去了。
VS Code 插件降级CLI 降了,VS Code 插件也得同步降,不然版本不匹配照样寄:
操作步骤:
打开扩展面板(Ctrl+Shift+X),搜索 Claude Code
点击齿轮 ⚙️ → 安装另一个版本…
选择 v2.1.152
回到齿轮 → 自动更新 → 取消勾选
版本号 CLI 和插件要完全一致,否则启动时会报版本不匹配的错误。
替代方案(不想降级的看这里)如果你不想降级、或者降级后还是有问题,还有两条路:
cc-Switch / aivo 等代理工具:在请求到第三方 API 之前自动过滤掉 system 角色消息,变相绕过兼容性问题。
等第三方 API 厂商适配:DeepSeek 等厂商后续有可能会适配 system 角色格式,到时候新版就能正常用了。
但说实话,降级是目前最稳的方案。毕竟版本兼容性这种事,主动权不在我们手上。
后记从 v2.0.x 时代的版本限制策略,到 v2.1.156 的 system 角色变更,官方版本迭代和第三方模型之间的兼容性摩擦就没停过。好在社区反应够快,每次都有热心网友第一时间找到回退路径。这篇指南能帮到你的话,那就值了。
最后还请让我再说一句:A八分钱赣A马!