Resume-summary modal blocks headless `--rc` sessions; not visible in Remote Control / Code tab
Resolved 💬 3 comments Opened Apr 17, 2026 by RanaCM Closed Apr 20, 2026
Summary
When claude --resume <id> is invoked on a session that has crossed an internal token threshold (observed: ~100k tokens, regardless of age — saw it triggered at 8h38m/148.8k, 1d3h/104.2k, 1d16h/102.3k), the CLI displays an interactive modal:
This session is Xh Ym old and Z tokens.
Resuming the full session will consume a substantial portion of your usage limits.
We recommend resuming from a summary.
❯ 1. Resume from summary (recommended)
2. Resume full session as-is
3. Don't ask me again
Enter to confirm · Esc to cancel
This modal renders to the local TTY only (Ink/TUI render path). It is not surfaced to the Remote Control / Code tab even when the session was started with --rc.
Repro
- Start a long-running headless session via launchd or systemd:
````
script -q /dev/null claude --resume <uuid> \
--channels plugin:discord@claude-plugins-official \
--permission-mode bypassPermissions --rc
- Let the session accumulate >100k tokens (or crash after accumulation).
- Wrapper restarts → invokes
--resume <id>again. - Modal appears in the local PTY (which has no human attached) and blocks all input.
- Open the Remote Control session in the Claude Code Desktop app's Code tab — modal is invisible there. The session shows as connected but inert.
Impact
- Headless bot fleets (Discord/Telegram/iMessage channels via the
claude-channelsmechanism) become unrecoverable without local terminal access. - Even with
--rcenabled and the Desktop app open, there is no way to dismiss the modal. - Only fix is killing the process and starting a fresh session — losing all prior session state.
Requested fixes (any one would resolve)
- CLI flag like
--auto-resume-strategy=summary|full|fresh|prompt(defaultprompt, but settable tosummaryfor headless setups). - Settings.json key equivalent (e.g.,
resume.defaultStrategy). - Surface the modal via Remote Control — Desktop app should be able to render and respond to TUI dialogs of sessions it's connected to.
- Honor a one-time "Don't ask me again" preference globally — confirm whether option 3 in the modal already persists this (and if so, where).
Related
- #29205 — ghost sessions from RC summary tasks (adjacent)
- #6995 — arrow key navigation broken in resume picker (same modal family)
- #34025 — resume failures with image-heavy sessions
- #38498 — feat(channels): extend channel relay to ExitPlanMode, AskUserQuestion, and all modal dialogs (adjacent — same surfacing gap, different transport)
Environment
- Claude Code CLI (latest stable as of 2026-04-17)
- macOS Darwin 25.4.0
bashwrapper + macOS launchd,script -q /dev/nullfor PTY- Sessions are channel-bot sessions (
--channels plugin:discord@...)
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗