[BUG] Desktop app (v2.1.197) shows empty chat history after update/restart, even though transcripts are intact on the remote host

Open 💬 0 comments Opened Jul 2, 2026 by Demuri

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Description:

After updating the Claude desktop app on MacOS, previously open Code sessions on remote ssh in the sidebar started showing as empty — the session titles/metadata are still listed, but no messages render when opening them. I fully quit and restarted the desktop app hoping to fix it, and the currently open session also lost its rendered history immediately after reconnecting.

Environment:

  • Client: Claude desktop app, version 2.1.197
  • Entrypoint: claude-desktop (peerProtocol 1)
  • Connecting to a remote host over SSH-mounted project dir (cwd: /home/admin/web/mydomain.dir)
  • OS on remote host: Linux 4.15.0-213-generic

Evidence data was NOT lost server-side:

On the remote host, ~/.claude/projects/-home-admin-web-mydomain-dir/ still contains all session transcript .jsonl files, fully intact and recently modified:

590085 bytes  2026-07-02 15:30:30
892346 bytes  2026-07-02 15:30:28
175739 bytes  2026-07-02 15:30:28
112556 bytes  2026-07-02 15:31:45  <- currently open session, growing normally

The currently-open session's transcript file (93f0e939-2624-4c28-bbaf-5fc85d103ce5.jsonl) contains all prior turns of the conversation, including the exchange where this exact bug was being diagnosed. After a full app restart, a new process (pid 6489) reconnected to the same sessionId, so the reconnect itself worked correctly — only the message rendering/hydration in the UI is broken.

What Should Happen?

Expected behavior: On reconnect, the app should hydrate the visible transcript from the existing session data (local .jsonl on the connected host and/or the session index), matching what's actually stored.

Actual behavior: Chat UI shows an empty conversation despite the underlying transcript being complete and up to date.

Impact: No data loss confirmed (transcripts are on disk), but the app is currently unusable for resuming any previous conversation — this looks like a regression introduced in the 2.1.197 update.

Error Messages/Logs

Steps to Reproduce

  1. Have several active sessions against a remote project directory.
  2. Update the desktop app to 2.1.197.
  3. Open a previously active session from the sidebar — history renders empty (title/metadata present, no messages).
  4. Fully quit and relaunch the app.
  5. Even the session that was open at quit time reconnects (same sessionId, new pid) but renders with no messages.

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.197

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

iTerm2

Additional Information

_No response_

View original on GitHub ↗