两条消息都表示模型的流式答案在完成前停止。“上面的响应可能不完整”会在部分答案已到达、随后流传输停滞、断开或损坏时显示;Claude Code 会保留已到达的内容,回复 continue 即可继续该轮。“流式响应在收到任何完整数据之前结束”表示完全没有可用内容到达,因此 Claude Code 会在不使用流式传输的情况下重试相同请求——而当这种情况持续发生时,正如消息本身所说,通常原因是 Claude Code 与模型提供商之间的代理或网关。
错误
API Error: Response stalled mid-stream. The response above may be incomplete.
# the wording in Claude Code's current error reference for the same stall:
API Error: The response stopped arriving. The response above may be incomplete.
# when nothing complete arrived at all:
Streaming response ended before any complete data was received. Retrying without
streaming. If this keeps happening, check any proxy or gateway between Claude Code
and your model provider.原因和解决方法一览
| 原因 | 解决方法 |
|---|---|
| 连接保持打开,但停止传送数据,Claude Code 的流式空闲监视器因此中止了连接 | 回复 continue。如果您的连接确实会长时间暂停,请提高 CLAUDE_STREAM_IDLE_TIMEOUT_MS,而不要关闭监视器。 |
| 连接断开、计算机进入睡眠状态,或服务器在响应中途返回错误 | 回复 continue;已完成的答案部分会保留。如果问题重复,请检查 VPN、Wi-Fi 切换和睡眠设置。 |
| 中间的代理或网关缓冲、截断或拒绝了流——例如请求正文超过其大小限制 | 尝试一次绕过它。提高代理的正文大小限制和读取超时,并关闭 API 路由的响应缓冲。 |
| 它在 Claude Code 升级后立即开始出现 | 在 /status 中记下版本。2026 年 7 月的一份报告测得,在同一台机器上,该停滞消息在 2.1.210 上为 0%,在 2.1.217–2.1.218 上为 3.0–4.4%。 |
先回复 continue
Claude Code 会保留故障发生前已完成的文本和工具调用,并附加通知。在交互式会话中,阅读已到达的内容并回复 continue:该轮会从那里继续。在非交互式运行(claude -p)中,Claude Code 会打印最后一个已完成的文本块,然后附加通知;恢复该会话并发送 continue。如果只发生一次,则无需更改其他设置。
区分这些消息
Claude Code 的错误参考按原因列出了不完整响应的措辞:响应中途发生服务器错误、响应中途连接丢失、响应中途计算机进入睡眠状态、响应停止到达(停滞)、部分响应未到达,以及响应流格式错误。2026 年 7 月的报告引用了停滞问题的旧措辞“响应在流传输中途停滞”。另一条单独的消息“流式响应在收到任何完整数据之前结束”表示没有完整数据到达,因此 Claude Code 会在不使用流式传输的情况下重试,而不是保留部分答案。
调整监视器,不要禁用它
Claude Code 使用四个计时器,在流不再传输数据时中止流,使失效的连接报错并重试,而不是一直挂起:首字节接收期限、事件级看门狗(300 秒)、字节级看门狗(直接使用 Anthropic API 时为 180 秒,其他情况下为 300 秒,包括使用自定义 ANTHROPIC_BASE_URL 时),以及某些提供商的五分钟响应体空闲超时。CLAUDE_STREAM_IDLE_TIMEOUT_MS 同时设置两个看门狗的超时时间;低于五分钟的值会被提高到五分钟,字节级看门狗的超时时间上限为 30 分钟。将其放入 settings.json 的 env 块中,让后台智能体也能获得该设置:
{
"env": {
"CLAUDE_STREAM_IDLE_TIMEOUT_MS": "600000"
}
}位于代理或网关之后时,尝试绕过它
当“不使用流式传输重试”的消息重复出现时,暂时移除这一跳:在单次会话中取消设置 HTTPS_PROXY,或设置 NO_PROXY="*",然后运行相同任务。如果问题停止,该跳就是原因。常见原因是长会话逐渐超过的请求正文大小限制、将实时流变成长时间静默的响应缓冲,以及短于模型思考暂停时间的读取超时。请注意,当 ANTHROPIC_BASE_URL 指向网关时,首字节截止时间不会运行,但字节级监视器会运行。
如果你通过 Kunavo 调用
Kunavo 就是该消息所涉及的网关之一,因此以下是它在 /v1/messages 上的行为,即 Claude Code 调用的端点。上游流在产生第一个内容事件之前会被暂存;如果上游在此之前出错或返回空流,则该尝试会在模型有其他通道时通过另一通道重试,否则返回 HTTP 错误——绝不会返回一个以空内容结束的 200 流。内容开始传输后的停滞不是网关可以重试的情况,Claude Code 的监视器和 continue 才是正确的工具。 OpenAI 兼容端一侧的流如何结束,以及如何区分完整答案和被截断的答案,见 LLM API 流式传输错误.
常见问题
Claude Code 中“上面的响应可能不完整”是什么意思?
流式答案在部分内容到达后停止了——可能是停滞、连接断开、服务器错误或计算机进入睡眠状态。Claude Code 会保留已完成的文本和工具调用,并附加通知。回复 continue,该轮会从已到达的内容继续。
“响应在流传输中途停滞”和“响应停止到达”是一回事吗?
它们描述的是同一种情况:连接保持打开,但停止传送数据,直到流式监视器将其中止。Claude Code 当前的错误参考使用“响应停止到达”;2026 年 7 月提交的报告引用“响应在流传输中途停滞”。
为什么 Claude Code 会说“正在不使用流式传输重试”?
因为流在收到任何完整数据之前结束了,所以没有内容可以保留。Claude Code 会在不使用流式传输的情况下再次发送相同请求。如果该消息持续出现,请检查 Claude Code 与提供商之间的代理或网关——正文大小限制、缓冲和读取超时是常见原因。
我应该关闭流式监视器吗?
不应该。监视器的作用是让死连接失败并重试,而不是让会话无限期挂起。如果您的连接确实会长时间静默,请提高 CLAUDE_STREAM_IDLE_TIMEOUT_MS(低于五分钟的值会提高到五分钟),而不要将 CLAUDE_ENABLE_STREAM_WATCHDOG 或 CLAUDE_ENABLE_BYTE_WATCHDOG 设置为 0。
使用带有 ANTHROPIC_BASE_URL 的网关会让这种情况更容易发生吗?
Claude Code 与提供商之间的每一跳都增加了一个可能缓冲、截断或使流超时的位置,因此当消息重复出现时,请尝试绕过网关。字节级监视器也会在网关连接上运行;当 ANTHROPIC_BASE_URL 通过网关路由时,首字节截止时间不会运行。