🔄 Session Replay Recovery
When a Claude session becomes unavailable (e.g., after server restart, session ID corruption, or timeout), Claude Code Studio can now replay the conversation history to a fresh session to recover context. This allows Claude to understand the full prior conversation without the original session.
How it works
- Studio detects when the session ID is invalid or points to an expired session
- A "session recovery" message is shown in the session bar with a "Restart" button
- On restart, the system fetches all messages from the database for that session
- Messages are serialized and replayed to Claude as a structured context
- Claude receives the full conversation history and continues from where it left off
Why this matters
For long-running projects: No more losing hours of context when you return days later.
For scheduled tasks: Kanban tasks that recover gracefully from server restarts.
For interrupted work: Browser crash or network issue? Session replay has you back.
📎 Attachment Handling Improvements
Normalized Attachment Storage
- New
normalizeStoredAttachment()function ensures consistent handling across all code paths serializeMessageAttachments()andparseMessageAttachments()for reliable serialization/deserialization- SSH attachments now properly resolve host credentials from stored host configuration
Better UI Feedback
- Attachment chips show "Copy" button with visible label for better discoverability
- Focus-within support for action buttons (accessibility improvement)
- Session restart cleans up UI state more thoroughly (retry flags, session bar elements)
Full Changelog: v5.26.0...v5.27.0