[BUG] Claude Code shows "out of credits" on overage accounts; requires full system reboot to recover
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Bug Report — Claude Code shows "out of credits" on overage accounts; requires full system reboot to recover
Claude Code version: 2.1.187
OS: Windows 11 Home 10.0.26200
Account type: Pro with overage enabled
---
Summary
When an account enters overage mode, Claude Code displays an "out of credits" error in the interactive session and stops accepting input entirely. Closing and reopening the application does not fix it. A full system reboot is required to recover. Credits were available the entire time — headless CLI workers on the same account continued running and processing requests successfully throughout.
---
Steps to Reproduce
- Run a long or parallel Claude Code session (or multiple headless
claudeCLI workers) on a Pro account with overage enabled. - Account enters overage status mid-session.
- Interactive Claude Code session displays "out of credits" and stops responding.
- Close Claude Code completely and reopen it.
- Error persists — the new window shows the same "out of credits" state.
- Reboot the computer.
- Open Claude Code — works immediately. Credits were always available.
---
Root Cause (observed)
Every API response when in overage mode includes a rate_limit_event with status: "rejected" even when the request is allowed and succeeds:
{
"type": "rate_limit_event",
"rate_limit_info": {
"status": "rejected",
"rateLimitType": "seven_day",
"overageStatus": "allowed_warning",
"overageInUse": true,
"isUsingOverage": true,
"resetsAt": 1783022400
}
}
overageStatus: "allowed_warning" means the request was allowed and processed. The status: "rejected" field is the rate-limit state descriptor, not the outcome of the request. Claude Code appears to read status: "rejected" and enter a hard error state.
The critical bug: this error state persists in a background process that survives app close/reopen on Windows. Claude Code (Electron) keeps a node.exe background process alive after the window is closed. That process holds the stuck "out of credits" state in memory. Reopening the window reconnects to the same broken process. Only a full system reboot terminates the background process and clears the state.
---
Expected Behavior
- When
overageStatusis"allowed_warning", Claude Code should continue operating normally. "Out of credits" should only appear when requests are genuinely being blocked (e.g.,overageStatus: "blocked"). - If an error state does occur, closing and reopening the application should clear it. Background processes should not persist stale error state across app restarts.
---
Actual Behavior
- Interactive session locks up and displays "out of credits."
- Closing and reopening Claude Code does not fix it — error persists.
- Full system reboot required to recover.
- Headless CLI workers (
claude --dangerously-skip-permissions --output-format stream-json) on the same account and API key continue running successfully throughout, confirming credits are available.
---
Impact
Any Pro user on an overage plan who runs a long or parallel session will hit this. The only recovery path is a full reboot, which is disruptive and not obvious. The correct recovery (kill the background process) is invisible to the user.
---
Workaround
Open Task Manager, kill all claude.exe and node.exe processes associated with Claude Code, then reopen the app. This avoids the full reboot. (A full system reboot also works.)
---
Evidence
The rate_limit_event above was captured from a headless worker stream (--output-format stream-json) during a run that completed successfully ($4.70 cost, 42 turns, full output) despite the status: "rejected" field. The interactive session on the same account simultaneously showed "out of credits" and was unresponsive.
What Should Happen?
Claude should poll overages for credit.
Error Messages/Logs
Steps to Reproduce
{
"type": "rate_limit_event",
"rate_limit_info": {
"status": "rejected",
"rateLimitType": "seven_day",
"overageStatus": "allowed_warning",
"overageInUse": true,
"isUsingOverage": true,
"resetsAt": 1783022400
}
}
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.187
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
_No response_
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗