[BUG] Session read/unread state is per-device: reading a session on mobile does not clear it on desktop (or vice versa)
Environment
- Claude Code desktop app (Windows 10 19045), v2.1.204
- Claude mobile app, same account (Max)
- Remote Control / session sync otherwise working correctly
What happens
Read/unread state on Code sessions is tracked per-device rather than per-account. Opening
and reading a session in the mobile app leaves that same session still showing as unread in
the desktop app, and reading it on desktop does not clear it on mobile. Nothing propagates
in either direction.
Archived state, by contrast, does sync — an archived session is archived on every surface.
So some session state is already account-level; read state appears not to be.
Expected
Read/unread is account-level state, consistent with archive state. Reading a session on any
surface clears its unread marker on all of them.
Impact
This matters most for the heavy scheduled-task workflow the desktop app enables. A fleet of
~14 recurring sessions fires overnight (roughly 03:00-04:30), plus ad-hoc one-off sessions
during the day. The unread marker is the only signal for *"which of last night's runs have I
actually reviewed?"*
Because it doesn't sync, triaging the overnight batch on a phone clears nothing on the PC —
the same sessions all still read as unreviewed when returning to the desktop, and there is no
way to tell which were genuinely missed from which were already handled elsewhere. The
reverse is equally true. The marker is therefore unusable as a work-tracking signal for
anyone who moves between the two surfaces, which is precisely the workflow Remote Control
exists to serve.
Related
Same cross-surface session-state consistency family, different field:
- #78679 — desktop/web session pins never surface on mobile
- #75343 — session names differ between mobile/web and desktop
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗