Anthropic CLI(Claude Code)启动报错 422 完整解决办法
一、问题背景之前由于 Node 版本切换重装了 Anthropic CLIClaude Code之后在 CMD/PowerShell 中使用 claude 命令时一直报 422 错误API Error: 422 { detail: [ { type: literal_error, loc: [body, messages, 1, role], msg: Input should be user or assistant, input: system, ctx: { expected: user or assistant } } ] }简单说就是接口不接受 system 角色但新版 Claude Code 强制往 messages 里塞了 role: system导致国内中转接口直接拒绝请求。二、为什么会出现这个问题核心原因Claude Code v2.1.154 强制插入 system 角色消息而很多国内中转接口如百度云 CodingPlan不支持 system 角色只允许 user/assistant。同一版本一台电脑能用、一台电脑报错是因为正常电脑走了旧缓存 / 兼容模式没触发新版强制 system 逻辑。报错电脑全新安装 / 清过配置直接走新版逻辑必带 system → 422。三、完整解决办法实测有效方案 1推荐 —— 使用 --bare 模式启动不用降级--bare 模式会完全禁用 Claude Code 内置的 system prompt请求里只有 user/assistant完美兼容国内接口。步骤1清理旧配置可选已清理过可跳过在 PowerShell 中执行以下命令# 退出登录并清理旧配置 claude logout Remove-Item -Recurse -Force $env:USERPROFILE\.claude -ErrorAction SilentlyContinue Remove-Item -Force $env:USERPROFILE\.claude.json -ErrorAction SilentlyContinue步骤 2用--bare模式启动直接在命令行中输入claude --bare步骤 3测试接口在 Claude 中输入任意指令测试例如你是什么模型此时接口会正常返回结果不再报 422 错误。方案 2降级到 v2.1.153最后一个不强制 system 的稳定版这个麻烦些就没测试了可能还要清除缓存如果不想使用--bare模式可以降级到不强制插入system角色的版本。步骤 1卸载当前版本npm uninstall -g anthropic-ai/claude-code步骤 2安装 v2.1.153 版本npm install -g anthropic-ai/claude-code2.1.153