跳转到内容

Unexpected item type in content. - CC Switch

Quick fix

在配置中启用内容块过滤以移除第三方后端不支持的 Anthropic 内部类型。

报错原文
The provided messages input is invalid. The error info is [Unexpected item type in content.]

当使用 CC Switch 代理转发请求至非官方的 Anthropic 兼容端点(如阿里云百炼等)时,Claude Code 会在会话历史中注入其内置工具调用产生的专有 Content Block(例如 server_tool_use、web_search_result 等)。这些内部类型仅由 Anthropic 官方服务端识别,第三方后端无法解析,因此在后续请求中直接返回 400 错误。目前该问题在相关 Issue 中仍处于开放状态,尚未有官方合并的修复方案;社区建议通过 Rectifier 层增加过滤逻辑来剥离这些不支持的类型。

  1. 打开 cc-switch 配置文件,在 rectifier 配置项中启用内容块过滤功能。

ToolClaude Code / Codex
Version未知
PlatformsmacOSWindows
报错后当前会话还能继续使用吗?
不能。一旦会话历史中混入不支持的内部 Content Block,该 Session 的所有后续请求都会持续返回 400。需要新建一个 Session 才能恢复正常对话。
这个错误是否只影响特定模型?
不影响具体模型名称,而是取决于目标 API 端点是否完全兼容标准 Anthropic 格式。任何拒绝 server_tool_use 或 web_search_result 等非标准类型的第三方后端都会触发此报错。
为什么开启本地代理或切换 Provider 后会突然出现此问题?
因为 CC Switch 默认会原样转发完整的消息历史。当 Claude Code 触发内置搜索或工具调用时,会自动附加这些专有标记。如果目标端点不是 Anthropic 官方服务,就会因无法识别而拦截请求。

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