Session renamed in the mobile app never reaches the host, so it cannot be found or addressed by that name

Status Closed — not planned
Reported on v2.1.221
Maintainer reply None cached
Activity 1 comment · opened Sep 1, 2026 · closed Sep 1, 2026

What happens

I renamed a session to "the upgrade plan" from the Claude mobile app (the session shows as Connected to my server). On the host machine, that name does not exist anywhere:

  • ~/.claude/sessions/*.json lists all 10 live sessions with nameSource: "derived" and placeholder names like thatevilguy-63. None carries the custom name.
  • The transcript's aiTitle still reads "Workflow system with credential mocking", the title generated from the opening turn.
  • grep -ri 'upgrade plan' ~/.claude/ returns nothing.

I confirmed the session identity by messaging it with SendMessage. It corroborated the topic, and reported that it has no tool or context exposing its own session title, so it cannot state its own name either.

Consequences

  1. Finding a session by name fails silently. Asked to find a conversation by the name shown in the app, the agent has no lookup available, so it falls back to listing recent transcripts by mtime and guessing from content. It then presents that guess confidently. Wrong answers are indistinguishable from right ones.
  2. SendMessage cannot address the session by that name. ListAgents only offers the derived placeholder.
  3. A session cannot report its own name. Asked directly, it has nothing surfacing its session title or aiTitle.
  4. Past sessions are unreachable entirely. This machine has 73 transcripts but only 10 live sessions, so 63 conversations are neither listable nor addressable, by name or otherwise.

Why I believe this is a regression

CHANGELOG 2.1.221:

Fixed renaming a session from Claude Code Desktop or claude.ai not updating the CLI's session name; session names from every rename surface are now sanitized

I am on 2.1.234, which is after that fix, and the name still does not reach the host. My guess is the mobile app is not covered as a rename surface.

Expected

A name set on any surface reaches the host session registry, so the session is findable and addressable by that name everywhere. Ideally alongside a lookup that resolves a name to a session id, including for sessions that are no longer live, since aiTitle is already persisted in the transcript and would support exactly that.

Environment

  • Claude Code CLI 2.1.234, Linux 6.8.0
  • Sessions Connected via Remote Control, renamed from the Claude mobile app
  • Read CHANGELOG through 2.1.257: no entry covering this

View original on GitHub ↗

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