What's Fixed
Extended session ID protection to SSH path
Follow-up to v5.25.7's session ID corruption fix. This patch extends the same UUID validation guards to the SSH execution path that was missed in the previous release.
Changes:
-
claude-ssh.js— UUID validation for--resume— The SSH runner now applies the samesessionIdregex guard (/^[a-f0-9-]+$/i) before passing--resumeto the remote Claude process. Previously, a corrupted session ID could be forwarded to a remote server unchecked. -
claude-ssh.js— Type check onsession_idresponses — SSH result parsing now verifiesdata.session_idis a string before passing it to theonSessionIdhandler, preventing object values from propagating. -
claude-cli.js— Diagnostic logging — When a non-UUIDsessionIdis rejected by the--resumeguard, aconsole.warnis now emitted with the type and truncated value. This makes debugging session corruption issues visible in server logs instead of silently dropping the ID.
Why this matters
Without this patch, SSH-based sessions (remote servers added via the SSH panel) could still experience the session ID corruption that v5.25.7 fixed for local sessions. If you use Claude Code Studio to work on remote servers via SSH, this update is recommended.
Full Changelog: v5.25.7...v5.25.8