[BUG] Windows desktop: Remote Control session stuck on "Needs input" after its host goes offline — prompt unanswerable and home-screen card can't be cleared
Preflight checklist
- [x] I have searched existing issues — this exact combination isn't filed (closest related are linked under "Related issues" below)
- [x] This is a single, focused bug report
- [x] I am using the latest version of Claude Code
What's wrong?
On the Claude desktop app (Code tab) home / "Sessions" screen on Windows, a session attached via Remote Control gets permanently stuck showing a "Needs input" badge after the remote host becomes unreachable (e.g. a lab/build machine that is powered off or disconnected while a prompt was pending on that session).
Because the host that would receive the answer is gone, the pending prompt can never be resolved through the normal flow:
- The "Needs input" badge makes the card look actionable.
- Clicking the card opens the session and shows the pending question, but it cannot be answered (the host is gone) — a dead end.
- The card can only be archived (the X at the end of the session row), which hides it from the list — there's no way to actually answer or resolve the dead prompt, and the misleading "Needs input" badge persists until you archive. Archiving makes a dead-end disappear; it doesn't resolve it (related: #69457, which argues X should dismiss the notification rather than archive the whole session).
What should happen?
An in-product way out of the dead end, for example:
- Detect that the host is unreachable and surface an explicit, non-actionable state (e.g. "Host offline / disconnected") instead of "Needs input"; and/or
- A discoverable way to resolve the dead session (mark done / host-gone) that is distinct from archiving it — so the session list reflects reality instead of a permanent, unanswerable "Needs input".
Steps to reproduce
- On a remote machine, start Claude Code with Remote Control (
/remote-control) and attach to it from the Claude desktop app on Windows. - On that session, trigger a state that requires user input (a permission request / AskUserQuestion / usage-limit prompt).
- Before answering, make the remote host unreachable (power it off / disconnect it).
- Return to the desktop app home / "Sessions" screen.
- Observe: the card shows "Needs input"; opening it offers no way to answer; the only way to remove it is to archive it (the X), which hides rather than resolves it.
Environment
- Claude Code version: 2.1.181
- OS: Windows 11
- Platform: Anthropic API
- Feature: Remote Control (desktop app, Code tab)
Additional information
Docs checked: https://code.claude.com/docs/en/desktop documents a hover→archive icon in the in-session sidebar and auto-archive after PR merge, but does not cover the home-screen "Sessions" cards, the "Needs input" state, or what happens to a Remote Control session when its host is offline.
Related issues (searched — none is an exact match for this combination: Remote Control + host permanently gone + unanswerable "Needs input" + a card that can only be archived, on Windows):
- #69457 — X on home-screen session cards archives instead of dismissing the "Needs input" dot (same card surface; macOS; about X-button semantics).
- #54266 — Stale remote environment persists across platforms after local purge attempts (stale Remote Control state that couldn't be cleared locally; resolved only by server-side purge; Windows).
- #64468 — Allow manually overriding session status + a Closed/Dismissed state (a finished/irrelevant session stays with no way to dismiss it).
- #67811 — Desktop archived an active Remote Control session without user action (Remote Control + archive coupling; closed as duplicate).
- #41503 — /remote-control session permanently stuck on a usage-limit prompt with no recovery path (closed/stale).
Open questions for maintainers:
- Archiving (the X) hides the card but doesn't resolve the prompt. Should there be a distinct "resolve / host-gone" affordance, or should X dismiss the notification rather than archive the whole session (per #69457)?
- Should a Remote Control session detect host unreachability and stop presenting an unanswerable "Needs input" state?
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗