What
Remote Control lets a Claude Code session be driven from somewhere else, such as another app. Two new options were added to how it starts:
reportGateRefusalReason: when Remote Control is not enabled for you, Claude Code now fetches the reason and, if this option is set, reports it as a failure (onStateChange("failed", reason)). Before, it only loggedremote_control_entryand returned nothing, so the attempt went silently nowhere.skipAutoTitle: asks Remote Control not to give the session an automatically generated title.- Starting Remote Control from the SDK (the toolkit for driving Claude Code from other programs) now passes
reportGateRefusalReasonas true and also passesskipAutoTitle. - A new helper decides
skipAutoTitlefor a session component. It is true whenCt()holds orCLAUDE_CODE_DISABLE_TERMINAL_TITLEis set, andtengu_concurrent_moonbeamis on. For that gate, the flag server returned off for this site's account and for the anonymous baseline; no reading has been taken under this release yet.
A new message also covers clearing the conversation mid-start: "The conversation was cleared while Remote Control was being enabled; send the request again".
Why
If you try Remote Control and it is not available to you, especially from the SDK, you can get an explanation instead of nothing happening. When the gate is on, setting CLAUDE_CODE_DISABLE_TERMINAL_TITLE would also stop Remote Control sessions from being titled automatically.
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubt
The wording of the reason, and which parts of Claude Code ask for it to be reported, are not clear.