Claude Code 报错对照:API Error 500、529 Overloaded 与 Request timed out(2026)
阅读说明
官方信息查阅日期:2026-10-23。Claude Code 文档会更新,以官方原文为准。本文不写价格,也不写花费上限和 credits 的金额。
一句话结论
API Error: 500 和 529 Overloaded 是服务侧问题,先看 status.claude.com 再重试。Prompt is too long 用 /compact 或 /clear。You've hit your session limit 是用量窗口,读法见 用量与限额排错。安装、PATH 和登录见 安装与登录。
不确定该查哪一页时,会话里运行 /doctor。claude 完全起不来时,在 shell 里运行 claude doctor。
错误参考里有大量旧版本措辞差异。下面写的是当前文档给出的消息和处理,不逐条抄写「某版本之前这句话不一样」。
报错对照
| 报错原文 | 是什么 | 先做什么 |
|---|---|---|
API Error: 500 Internal server error | 服务端 5xx,通常与你的提示、设置、账号无关 | 看状态页,过一分钟再发。长提示可输入 try again |
API Error: Repeated 529 Overloaded errors | API 全站容量满。文档写明这不是用量上限,也不计入额度 | 过几分钟再试,或 /model 换一个模型 |
Request timed out | 在连接时限内没有收到响应。默认请求超时是 10 分钟 | 重试。慢网络或代理再考虑调 API_TIMEOUT_MS |
API Error: Request rejected (429) | API 密钥、Amazon Bedrock 项目或 Google Cloud 项目的速率限制 | /status 核对当前凭证,减少并行 |
Prompt is too long | 对话加上附件超过模型的上下文窗口。交互界面常显示 Context limit reached | /compact 或 /clear |
There's an issue with the selected model (...) | 配置的模型名无法识别,或账号无权使用 | 交互会话里运行 /model |
Model '...' not found | 按名字切换时,端点确认没有这个模型 | /model 不带参数,从账号可用的模型里选 |
Error: Claude Code process exited with code 1 | 启动 Claude Code 的程序发现进程非零退出。退出码本身不说明原因 | 看包装程序的日志,或在同一项目的终端里运行 claude |
You've hit your session limit · resets ... | 订阅的用量窗口用完 | 等到提示里的时间。细节见用量页 |
This organization has been disabled | 错误参考:已停用组织的 ANTHROPIC_API_KEY 盖过了订阅 | 见 账号停用与申诉 |
API Error: 500 Internal server error
Claude Code 对任意 5xx 会显示状态码和 API 的错误信息。Anthropic API 上的例子是:
API Error: 500 Internal server error. This is a server-side issue, usually temporary — try again in a moment. If it persists, check https://status.claude.com.
句末的状态页会随提供商变化。Amazon Bedrock、Google Cloud’s Agent Platform、Microsoft Foundry 会写成该提供商的状态页。自定义 ANTHROPIC_BASE_URL 会写成网关主机。
来自 API 本身的 5xx 表示 API 内部的意外失败。文档写明,它不是你的提示、设置或账号造成的。代理、负载均衡或网关若返回 HTML 错误页,消息里是状态码加页面标题,例如 API Error: 502 Bad Gateway。
先做:
- 打开消息里点名的状态页。Anthropic API 上是 status.claude.com。
- 等一分钟再发送。原来的消息还在对话里,长提示可以输入
try again,不必整段再贴一次。 - 若
ANTHROPIC_BASE_URL指向 LLM 网关,而且每个请求都这样失败,文档要求检查网关是否拒绝了 Claude Code 默认发送的 tool search 字段。检查方法是按文档把ENABLE_TOOL_SEARCH设为false后再试。 - 没有已发布的事件、错误仍在,运行
/feedback,让 Anthropic 用这次请求的细节排查。当前环境没有/feedback时,按错误参考里的 “Report an error” 处理。
API Error: Repeated 529 Overloaded errors
API 暂时对所有用户都处于容量上限。Claude Code 在显示这句话之前已经重试过多次:
API Error: Repeated 529 Overloaded errors. The API is at capacity — this is usually temporary. Try again in a moment. If it persists, check https://status.claude.com.
句末同样会随提供商变化。文档写明:529 不是你的用量上限,也不会计入额度。
先做:
- 查看 status.claude.com,或消息里点名的提供商状态页,看有没有容量通知。
- 过几分钟再试。
- 运行
/model换一个模型。容量按模型计算。某一模型负载特别高时,Claude Code 会提示你切换,例如Opus is experiencing high load, please use /model to switch to Sonnet。Fable 模型上,这句话会点名 Fable。桌面应用(例如 Code 标签或 Cowork)里的句子是Opus is experiencing high load. Switch to Sonnet.,用应用里的模型选择器切换。
Request timed out
API 没有在连接时限内响应:
Request timed out
文档写明默认请求超时是 10 分钟。把 API_TIMEOUT_MS 设为 0 会关掉这一项请求超时。首字节时限和响应体空闲超时不会因为设成 0 而关闭。非流式尝试在本地会话里仍有 300 秒限制,仍可能以这句话结束。
先做:
- 每个请求都是这句,而且你把
API_TIMEOUT_MS设成了0:运行claude --version。文档写明,早于 v2.1.305 的版本应更新 Claude Code,或改成一个正数。 - 重试这次请求。
- 原因是慢网络或代理时,按错误参考 “Automatic retries” 一节提高
API_TIMEOUT_MS。 - 网络本身正常、超时却很频繁:看错误参考的网络与连接一节。
另一句容易和超时放在一起:流式请求在首字节时限内没有收到响应头,重试也超过时限,回合以 API Error: No response from API 结束。消息里会写每次等了多久,并提示如果代理或网关要等响应完成才返回,就提高 API_TIMEOUT_MS 或 CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS。文档的第一步仍是再发一次;长提示可以输入 try again。反复出现时,按网络或代理问题处理。
连接失败是另一组句子,例如 Unable to connect to API. Check your internet connection,以及带 Check your internet connection and proxy settings 的 Request timed out。文档列出的常见原因包括没有网络、VPN 挡住了 api.anthropic.com,或公司要求的代理没有配置。那一节的处理是检查连接和代理设置,不是下面的 500/529。
API Error: Request rejected (429)
文档写明:你碰到了为 API 密钥、Amazon Bedrock 项目或 Google Cloud 项目配置的速率限制。
API Error: Request rejected (429) · this may be a temporary capacity issue. If it persists, check https://status.claude.com.
句末的健康检查地址随提供商变化。自定义 ANTHROPIC_BASE_URL 会写成网关主机。中间的代理或网关若返回自己的 HTML 429 页面,· 后面是该页标题(有标题时),例如 Too Many Requests。
先做:
- 运行
/status,确认正在用的凭证是你期望的那一个。环境里多出来的ANTHROPIC_API_KEY会把请求走到那把密钥,而不是订阅。 - 到提供商控制台查看当前限额。文档还写了必要时申请更高档位。档位和价格不在本文。
- Anthropic API 密钥的档位说明,文档指向 rate limits reference。
- 降低并发:少开并行子代理,或在大量脚本运行时用
/model换更小的模型。
另一句要分开:API Error: Server is temporarily limiting requests (not your usage limit)。文档写明这是与计划额度无关的短时服务端限流。从 v2.1.199 起,无论用哪种认证,都会先自动退避重试再显示。处理是稍等再试;持续则看 status.claude.com。
You've hit your session limit、每周上限、月度花费上限和 credits 余额,不在这句 429 里。见下一节和用量页。本文不写花费上限怎么提高,也不写金额。
Prompt is too long
对话加上附件超过模型的上下文窗口。脚本和记录里的原文是:
Prompt is too long
交互会话里显示为:
Context limit reached · /compact or /clear to continue
设置了 DISABLE_COMPACT 时,这一行只保留 /clear。你在用户设置里关掉了自动压缩时,还会加上 auto-compact is off · /config to turn it on。
Amazon Bedrock 把同一情况报告为 Input is too long for requested model. Claude Code 按同样方式处理。Claude apps gateway 在云上游以提供商自己的错误形式拒绝时,报告为 capability_rejected: prompt_too_long。
自动压缩跑过、但失败在另一个错误上(例如模型不可用或认证失败)时:
Prompt is too long · automatic compaction failed: <the underlying error>
先处理尖括号里点名的那个错误。在此之前 /compact 会因同一错误失败。
只有一轮交换、没有更早的回合可摘要时,Claude Code 会跳过压缩并说明请求被什么占满。API 没有在错误里给出 token 数时,原文是:
Prompt is too long · this conversation is a single exchange and cannot be compacted — the request size comes mostly from system prompt, tool definitions, or attachments.
API 给出了 token 数时,还会区分「对话本身占了大部分」和「其余是系统提示、工具定义和附件」。两种都写明单轮对话无法压缩。
先做:
- 运行
/compact摘要较早的回合,或/clear重新开始。/compact回答Not enough messages to compact.时,这是单轮对话,没有更早的内容可摘要。运行/clear,用更少的粘贴文本或更小的附件重发,或按下面的步骤减少工具定义和记忆文件。 - 运行
/context,看窗口被系统提示、工具、记忆文件和消息各占多少。 - 用
/mcp disable <name>关掉不用的 MCP 服务器,把它们的工具定义移出上下文。 - 删短过大的
CLAUDE.md,或把说明挪到只在相关路径加载的规则里。 - 自动压缩默认开启,通常会避免这句错误。若在
/config或用DISABLE_AUTO_COMPACT关掉了,再打开。继续关着的话,在窗口满之前自己运行/compact。
/context 顶部若出现 Context exceeds the ... token limit,文档写明在腾出空间之前,请求会以 Prompt is too long 失败。交互会话里就是上面的 Context limit reached 那一行。
There's an issue with the selected model 与 Model not found
配置的模型名无法识别,或账号无权使用。交互界面的例子是:
There's an issue with the selected model (claude-...). It may not exist or you may not have access to it. Run /model to pick a different model.
先做:
- 交互 CLI:运行
/model,从账号可用的模型里选。 - 非交互
-p:用--model传入有效的别名或 ID,或设置ANTHROPIC_MODEL。这一界面上的错误文本写的是Run --model。 - 用
sonnet、opus这类别名,而不是会过期的完整版本 ID。别名会解析到仍在维护的默认模型。 - CLI 里错误的模型一直回来,说明某个地方还留着旧 ID。按文档 “Setting your model” 的优先级逐处检查并删掉旧值。
- 文档写明,过期的 claude.ai 登录会报 Login expired,不会报这句。更早的版本上,无法刷新的过期登录会让每个模型都报这句;旧版本上若看到这种情况,运行
/login。
按名字切换、而 Claude Code 确认不了这个名字时,标题是 Model not found。名字不是模型别名、也不是本地接受的另一种写法时,Claude Code 会用一次很小的 API 请求去核实,这句错误通常就是端点的回答。/model <name> 里,名字根本不可能是模型 ID(例如含有空格)时,也是这句话。例子:
Model 'claude-opus-9' not found
先做:不带参数运行 /model,或使用会解析到默认模型的别名,例如 sonnet。如果输入的是完整 ID,对照你的提供商的模型目录。文档写明,新发布的模型可能先在 Anthropic API 上可用,你的提供商或地区还没有。
计划不包含所选模型时,是另一句,例如:
Claude Opus is not available with the Claude Pro plan. If you have updated your subscription plan recently, run /logout and /login for the plan to take effect.
桌面应用会话里,这句话要求 sign out and sign in again,不写命令名。处理是:/model 改选计划内的模型;若刚刚升级过计划仍看到这句,先 /logout 再 /login。文档写明,已保存的 token 反映的是登录当时的计划,在 claude.ai 上升级不会自动作用于当前会话。各计划包含哪些模型,文档指向套餐页,本文不摘录。
Claude Code process exited with code 1
底层 claude 进程以非零码退出。退出码本身不说明失败原因。真正的错误在进程自己的输出里:包装程序抓到了就附在后面,否则留在它的日志里。
Error: Claude Code process exited with code 1
文档写明,Windows 上原生构建可能在一个回合刚结束时以码 4294967295 退出。若这次退出落在回合边界、没有等待中的消息、也没有后台任务,VS Code 扩展会安静地关掉会话,而不显示这句错误。下一条消息会恢复对话。
先做:
- 在 VS Code 里,按错误旁边的 View output logs 看底层失败。
- 在 Agent SDK 应用里,在消息循环周围接住错误。各语言收到什么,文档放在 “CLI process exit”。
- 在同一项目的终端里运行
claude。失败通常会在那里复现,并带上真正的错误句,再回到本页查找。 - 在终端运行
claude doctor,检查安装和配置。
安装阶段的 command not found、登录循环不走这一句,见 安装与登录。
You've hit your session limit
订阅计划有滚动用量额度。用完时可能看到:
You've hit your session limit · resets 3:45pm
You've hit your weekly limit · resets Mon 12:00am
You've hit your Opus limit · resets 3:45pm
You've hit your Sonnet limit · resets 3:45pm
文档里的钟点是例句,以你屏幕上的时间为准。Claude Code 会挡住后续请求,直到消息里的重置时间。
会话上限和每周上限在所有模型之间共享,切换模型不会恢复这两项。Opus 上限和 Sonnet 上限只作用于各自的模型族,用 /model 换到该族以外的模型可以继续工作。换模型后,下一次请求会重新读取整段对话。
文档还写了:在打开的交互会话里,可以用订阅登录等待重置后继续被打断的任务;桌面应用 Code 标签的会话上限卡片上有 Auto-continue when limits reset。每周上限卡片没有这个勾选。/usage 查看计划上限和重置时间。
花费上限、usage credits 的开通和金额,本文不写。怎么读这些提示,见 Claude Code 用量与限额排错。
常见问题
529 Overloaded 要不要等用量重置?
错误参考写明,529 是 API 容量,不计入额度。看状态页,过几分钟重试,或用 /model 换模型。带 resets 的 You've hit your session limit 才按提示里的时间等待。
Prompt is too long 和网页上的长度上限是同一句吗?
Claude Code 这里的原文是 Prompt is too long,交互界面是 Context limit reached · /compact or /clear to continue。网页对话帮助中心的句子是 Your message will exceed the length limit for this chat...,见 Claude 常见报错对照。
挂了很多 MCP 工具,明明对话不长也提示 Prompt is too long?
Claude Code 官方 CHANGELOG 记录:2.1.306 修复了「在挂有很多 MCP 工具的会话里,一个 API 错误被显示成 "prompt is too long",并触发不必要的压缩」的问题。用较早版本遇到这种情况,先运行 claude update(或你的安装方式对应的升级命令)更新到最新版,再看真实的报错。同一版本之前的 2.1.305 还修复了走 Vertex、Bedrock 或其他网关时每个请求都失败的问题(2.1.304 引入)。(官方信息查阅日期:2026-10-24)
code 1 能不能直接告诉我原因?
不能。文档写明退出码不说明失败了什么,要看进程输出或包装程序的日志,或在同一项目的终端里复现。
模型报错和登录过期怎么分?
当前文档把无法识别或无权使用的模型,写成 There's an issue with the selected model 或 Model '...' not found。过期的 claude.ai 登录另有 Login expired。计划不包含该模型时,例句是 Claude Opus is not available with the Claude Pro plan,处理是换模型,或在刚改过计划后重新 /logout 再 /login。
相关阅读
参考来源(官方)
- Claude Code · Error reference:https://code.claude.com/docs/en/errors(查阅日期:2026-10-23)
- Claude Code · Troubleshooting:https://code.claude.com/docs/en/troubleshooting(查阅日期:2026-10-23)
- Claude 状态页:https://status.claude.com(查阅日期:2026-10-23)
- Claude Code · CHANGELOG(2.1.305、2.1.306):https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md(查阅日期:2026-10-24)
- Claude API · Rate limits:https://platform.claude.com/docs/en/api/rate-limits(查阅日期:2026-10-23)