Description
Ed25519 key-based SSH authentication fails silently on macOS. The GUI shows "Failed to connect. Check your credentials and try again." Password authentication works fine with the same server/user.
Environment
- VibeShell version: 0.1.4
- macOS: Darwin 25.4.0 (macOS 15.x)
- Host machine: Mac Studio M2 Max
- Target: Mac Mini M4 (macOS, sshd)
Steps to Reproduce
- Add a server with SSH key auth (Ed25519 key, no passphrase)
- Select private key file via Browse (note: file picker only shows
.pub files — workaround needed to select private key)
- Click Connect
- Connection fails with generic credential error
Expected Behavior
Connection succeeds using the Ed25519 private key, same as ssh -i ~/.ssh/id_ed25519 user@host which works correctly from CLI.
Additional Notes
- Key auth works via OpenSSH CLI:
ssh -i ~/.ssh/id_ed25519 zdravac@192.168.1.149 → authenticated
- Same key is in target's
authorized_keys
- Key has no passphrase
- Key format: OpenSSH native format (ed25519)
- Tested with both key in
~/.ssh/ and copied to app support directory — both fail
- Password auth works correctly as a workaround
Secondary Bug
The Browse button in the key file picker only shows .pub files (public keys). Private keys (no extension or different extension) are not shown. The private key path must be manually edited.
Description
Ed25519 key-based SSH authentication fails silently on macOS. The GUI shows "Failed to connect. Check your credentials and try again." Password authentication works fine with the same server/user.
Environment
Steps to Reproduce
.pubfiles — workaround needed to select private key)Expected Behavior
Connection succeeds using the Ed25519 private key, same as
ssh -i ~/.ssh/id_ed25519 user@hostwhich works correctly from CLI.Additional Notes
ssh -i ~/.ssh/id_ed25519 zdravac@192.168.1.149→ authenticatedauthorized_keys~/.ssh/and copied to app support directory — both failSecondary Bug
The Browse button in the key file picker only shows
.pubfiles (public keys). Private keys (no extension or different extension) are not shown. The private key path must be manually edited.