[Feature] Auto-retry with exponential backoff on "Server is temporarily limiting requests" instead of halting the session
What I'm asking for
When a session hits:
API Error: Server is temporarily limiting requests (not your usage limit) · Rate limited
Claude Code should automatically retry the request with exponential backoff instead of giving up and halting the turn. Right now the session just stops dead and I have to manually go into every running session and tell it to continue.
This is explicitly not a usage-limit error (the message says so) — it's a transient server-side throttle. Transient throttles are the textbook case for client-side retry-with-backoff, so failing hard on the first occurrence is the wrong behavior.
Why it matters
I run multiple Claude Code sessions in parallel. This error reliably fires whenever I switch Claude accounts (and at other times too). Every time it happens I have to babysit and manually re-prompt every session to keep going. That defeats the point of long-running / parallel / autonomous sessions — one transient throttle kills the whole run.
Proposed behavior
- On this specific "temporarily limiting requests / Rate limited" response, retry automatically with exponential backoff (e.g. 1s, 2s, 4s, 8s … with jitter), up to a sensible cap (configurable max retries / max total wait).
- Honor a
Retry-Afterheader from the server if one is present, instead of the backoff schedule. - Show a non-fatal status line (e.g. "Rate limited, retrying in Ns…") rather than ending the turn, so the session resumes on its own.
- Only surface a hard error to the user after the retry budget is exhausted.
- Ideally expose the retry budget / backoff cap as a setting for people who want to tune it.
Related issues
This is the fix requested by the pile of existing bug reports for the same error, e.g. #70082, #70183, #68521, #69098, #65731, #64438, #63929. Those report that the error happens; this asks for the specific remediation (auto-retry with backoff) so the session self-recovers instead of stopping.
Environment
- Triggered most reliably right after switching Claude accounts, on macOS, Opus 4.8.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗