SSH connection fails after auto-update 2.2553.0 -> 2.2553.1: "SSH master exited before the connection was established"

Status Open
Maintainer reply None cached
Activity 1 comment · opened Sep 21, 2026

Environment:

  • Claude Desktop version: 2.2553.1 (previously working fine on 2.2553.0)
  • OS: Windows 11 Pro, x64
  • Auto-update installed shortly before the failures began; issue has persisted since

Summary:
SSH connection to a remote host (previously working for weeks) started failing immediately after the app auto-updated from 2.2553.0 to 2.2553.1. Fails consistently with:

SSH master exited before the connection was established

Steps to reproduce:

  1. Have a working SSH connection configured to a remote Windows host (OpenSSH server).
  2. Update Claude Desktop from 2.2553.0 to 2.2553.1.
  3. Try to connect / send a message requiring the remote session.
  4. Fails on every attempt, including after deleting/recreating the connection, restarting the app, and restarting the machine.

Relevant log pattern (%LOCALAPPDATA%\Claude\Logs\ssh.log):

[info] [OpenSSHConnection] starting master for user@<host>
[info] [OpenSSHConnection] master stderr: Warning: Identity file <path>\.ssh\id_rsa_claude not accessible: No such file or directory.
[info] [OpenSSHConnection] master stderr: The system cannot find the path specified.
[info] [OpenSSHConnection] discrete primary exited before/at readiness: code=255 traced=true marks=banner/kex/auth killedLocally=false -> connect failure
[error] [RemoteServerController] Connection failed (...ms, trigger: warm_up, attempt 1): SSH master exited before the connection was established

Investigation done:

  • Manual ssh -vvv connections (both Git's OpenSSH and Windows' built-in OpenSSH client) to the same host, using the same ~/.ssh/config, succeed instantly with an existing key — network, credentials, and remote host are confirmed healthy.
  • The remote server itself is healthy (service, disk, memory, tooling all fine, no session limits hit).
  • The app references a dedicated identity file ~/.ssh/id_rsa_claude that does not exist on disk. Manually reproducing "-i <missing identity file>" (with/without IdentitiesOnly=yes) does not reproduce a fatal exit with either OpenSSH client — it just warns and falls back. So the missing file alone doesn't explain the code=255 fatal exit; something else in the app's exact spawn invocation (possibly ControlPath, working directory, or the claude-ssh-broker.exe helper process) seems to be the real cause.
  • Deleting/recreating the connection, restarting the app, and restarting the machine did not help — points to a regression in the 2.2553.1 build itself, not local state.

Expected behavior: Should connect as it did on 2.2553.0, or at minimum fall back to an interactive password/keyboard-interactive prompt when the app-managed key is unavailable.

Impact: Completely blocked from using SSH-based remote sessions since the update.

🤖 Generated with Claude Code

View original on GitHub ↗

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