API Error: Stream idle timeout — disproportionately frequent in plan-mode, no automatic retry or workaround
Resolved 💬 4 comments Opened Apr 27, 2026 by mosquss Closed Jun 28, 2026
Environment
- Client: Claude Code web version (claude.ai/code)
- Mode when most affected: Plan mode (plan-mode)
- Date range: ongoing, observed repeatedly in April 2026
---
What happens
When generating a response (especially in plan-mode with long multi-step reasoning), Claude Code throws:
API Error: Stream idle timeout - partial response received
The stream is simply cut mid-response and the full answer is never delivered.
---
Reproduction frequency
- In plan-mode: triggered 5+ times consecutively in a single session without any change on my end.
- Across the full session: 10–15+ occurrences — nearly back-to-back.
- Outside plan-mode it still occurs, but less frequently.
---
Impact
- In plan-mode, which is intentionally used for long, structured reasoning, the timeout makes the feature nearly unusable under current network / infrastructure conditions.
- Users (myself included) have to prompt 5–15 times to complete a single plan-mode task that should take one response.
---
What I would expect
- Best: plan-mode chunking — for very long plan-mode responses, split into smaller streamed chunks server-side before the idle timeout threshold is hit.
---
Notes
I am aware multiple open issues exist for this error. I'm filing this specifically to add:
- Confirmed reproduction on web version (not just CLI/desktop).
- The plan-mode amplification — the error rate in plan-mode is meaningfully higher than in normal mode, suggesting the longer generation time / larger payloads in plan-mode push into the timeout window more consistently.
- The lack of automatic continuation and waiting for some kind of workarounds on the part of claude to solve the problem as the most unpleasant aspect, the error itself may be inevitable on a large scale, but failure without automatic repeated attempts to continue is the part that makes it a problem.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗