Auto-continue at usage limit never arms when Remote Control is connected
Summary
With "Continue automatically at usage limit" turned on (autoContinueAtUsageLimit: true), a session that has Remote Control connected never arms the automatic continue when it hits a claude.ai usage limit. No "Usage limit reached · continuing automatically at …" line appears, nothing resumes at the reset, and nothing says why. The same account and setting in a session without Remote Control arms and resumes as expected.
Environment
- Claude Code 2.1.295 (also observed on 2.1.266, 2.1.281, 2.1.283)
- Linux x86_64, interactive CLI, fullscreen TUI
- Claude Max subscription, claude.ai login
autoContinueAtUsageLimit: truein~/.claude/settings.json
Steps to reproduce
- Turn on "Continue automatically at usage limit" in
/config. - Start an interactive session and connect Remote Control (two-way).
- Work until the 5-hour session limit is reached.
Expected
The session shows "Usage limit reached · continuing automatically at <time>" and continues after the reset, as it does without Remote Control. If the wait is deliberately not armed under Remote Control, a line saying so.
Actual
Only the limit error is shown. The session stays idle after the reset.
Evidence
From 60 days of local transcripts, 8 sessions hit a usage limit:
| Remote Control (bridge-session records in transcript) | Sessions | Versions | Armed automatically |
| --- | --- | --- | --- |
| No | 2 | 2.1.266, 2.1.280 | 2 of 2, both resumed at reset |
| Yes | 6 | 2.1.266, 2.1.281, 2.1.283 | 0 of 6 |
The quotaLimits payload on the rejected requests is the same in both groups: status: "rejected", rateLimitType: "five_hour", isUsingOverage: false, overageStatus: "rejected".
No usage limit was hit on 2.1.289 or 2.1.295, so on the current version this is from reading the bundle rather than a live run.
Likely cause
In the 2.1.295 bundle, the function that arms the wait when a rate_limit API error arrives returns early on a check that is true when the REPL bridge is active (the same check also covers background sessions and teammates):
if(cm())return!1
function cm(){return id()||Lt()||J_()!==void 0} // id() = surfaceCapabilities.replBridgeActive()
The manual path from /rate-limit-options ("Wait here, then continue automatically at …") does not go through this check.
Request
Either arm the automatic continue under Remote Control as well, or show a notice at the limit that it was not armed and that /rate-limit-options can arm it.
---
This issue was investigated, written and filed with Claude Code (Opus 5.5) on behalf of the reporter.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗