Desktop app never asks a Remote Control session to draw a mod's AbovePrompt band
Environment
- Claude desktop app 2.31226.1 (macOS 27.0.1), Code tab
- Claude Code 2.1.296
- A mod (plugin with a hooks module) that draws an
AbovePromptband, installed at user scope
Summary
When a session started in a terminal is opened in the desktop app over Remote Control, the desktop app never asks that session to draw a mod's AbovePrompt band. The band shows in the terminal only. The desktop view of the session gets no band at all.
The mod can tell that input arrives over Remote Control (origin.kind === 'bridge'), but it cannot draw anything for the desktop, because the desktop client never attaches as a render surface.
Steps to reproduce
- Install a mod that draws an
AbovePromptband and has a debug command that prints$.session.surfaces(), the origin of the command, and everyui.renderit has answered (surface and component). - In a terminal, start
claude --remote-control. - In the desktop app, open that session through Remote Control.
- From the desktop view, run the mod's debug command.
Expected
The desktop client attaches as a desktop surface (session.attach fires, $.session.surfaces() includes desktop) and asks for AbovePrompt, the same way it does for a local desktop session. The band then shows in the desktop view as well.
Actual
Run from the desktop view of the Remote Control session:
surfaces=terminal · origin=bridge · draws: terminal AbovePrompt, terminal Pane
Run from a local desktop session, for comparison:
surfaces=desktop · draws: desktop SessionMode (footer), desktop AbovePrompt, desktop Pane
$.session.surfaces()returns only['terminal'].- No
ui.rendercall ever arrives withsurface: 'desktop'. - The command's
origin.kindisbridge, so the input path works. Command output (command.runreturning{ text }) also shows in the desktop view. Only the mod's drawing is missing.
Possibly related
#99265 (split view: the band is drawn only in the leftmost pane). The renderer excerpt quoted there gates the band on sessionRef.type === "local" && ... && isPanelActive. If a Remote Control session's ref is not local, the same gate would explain why its band is never requested. I have not confirmed this in the renderer myself.
Ask
Ask Remote Control sessions for mod render sites (AbovePrompt, SessionMode, Pane) the way local desktop sessions are asked, by attaching the desktop client as a desktop surface over the bridge.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗