Unanswered Desktop hook callbacks inject "Claude Desktop didn't respond" into the model's context on every turn while the Mac is offline

Status Open
Reported on v2.1.275
Maintainer reply None cached
Activity 1 comment · opened Oct 12, 2026

What happens: A Claude Desktop session running on a remote machine (SSH) keeps working when the Mac is asleep or offline, for example when driven from the phone through Remote Control. At the end of every turn, the Desktop app's registered Stop hook callback goes unanswered, and the CLI records a hook_system_message attachment: "Claude Desktop didn't respond, so this turn ended without it." Session start shows the matching "…didn't respond; carried on without it."

Why it matters: The attachment is part of the transcript the model reads, so agents sometimes treat it as an error to investigate instead of continuing their task. The wording also suggests the turn was cut short, when only the app's own follow-up was skipped. In our transcripts it appears 77 times since August, across CLI versions 2.1.275–2.1.295.

Expected: When the host app's own hook callback is unreachable, log it in debug output or show it in the UI only, and keep it out of the model's context. At least drop it for Stop and SessionStart callbacks the app registered itself, and maybe show it once per disconnection rather than on every turn.

Environment: Claude Desktop (macOS) driving a Linux remote session over SSH; Claude Code 2.1.295.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗