Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SSH integration bombs out with fish remote #6233

Open
3 tasks done
daveio opened this issue Apr 1, 2025 · 3 comments
Open
3 tasks done

SSH integration bombs out with fish remote #6233

daveio opened this issue Apr 1, 2025 · 3 comments
Labels
Bugs Bugs, Hangs, Crash, and Freezes

Comments

@daveio
Copy link

daveio commented Apr 1, 2025

Pre-submit Checks

Describe the bug

I can't connect to fish remotes unless I use command ssh to disable Warp's SSH handling.

$ ssh mba

fish: Unsupported use of '='. In fish, please use 'set hook $(printf "{\"hook\": \"SSH\", \"value\": {\"socket_path\": \"~/.ssh/21841\", \"remote_shell\": \"%s\"}}" "${SHELL##*/}" | command od -An -v -tx1 | command tr -d " \n")'.
hook=$(printf "{\"hook\": \"SSH\", \"value\": {\"socket_path\": \"~/.ssh/21841\", \"remote_shell\": \"%s\"}}" "${SHELL##*/}" | command od -An -v -tx1 | command tr -d " \n")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
Connection to mba closed.

To reproduce

  1. Connect via SSH to a remote machine using the fish shell.
  2. Watch as it fails.
  3. Try with command ssh.
  4. Watch as it succeeds.

Expected behavior

Connection to remote with full Warp shell integration.

Screenshots, videos, and logs

2025-04-01T22:50:01Z [INFO] dispatching typed action: Enter
2025-04-01T22:50:01Z [INFO] dispatching typed action: HandleFocusChange
2025-04-01T22:50:01Z [WARN] Received 'end_in_band_command_output' while not expecting to read in-band command output.
2025-04-01T22:50:01Z [INFO] dispatching typed action: ClearMarkedText
2025-04-01T22:50:01Z [INFO] Received Preexec hook
2025-04-01T22:50:01Z [INFO] Received PreInteractiveSSHSession hook
2025-04-01T22:50:04Z [INFO] Received CommandFinished hook
2025-04-01T22:50:04Z [INFO] Tried to exit the alternate screen, but it was already inactive
2025-04-01T22:50:04Z [INFO] Block finished with new state DoneWithExecution
2025-04-01T22:50:04Z [INFO] dispatching typed action: HandleFocusChange
2025-04-01T22:50:04Z [INFO] dispatching typed action: ClearMarkedText
2025-04-01T22:50:04Z [INFO] dispatching typed action: ClearMarkedText
2025-04-01T22:50:04Z [INFO] Received Precmd hook
2025-04-01T22:50:04Z [WARN] failed to get git_branches_for_command_corrections
2025-04-01T22:50:04Z [INFO] Received InputBuffer hook
2025-04-01T22:50:05Z [INFO] Dispatching custom action History
2025-04-01T22:50:05Z [INFO] dispatching typed action: Up
2025-04-01T22:50:06Z [INFO] Dispatching custom action History
2025-04-01T22:50:06Z [INFO] dispatching typed action: Up
2025-04-01T22:50:06Z [INFO] Dispatching custom action History
2025-04-01T22:50:06Z [INFO] dispatching typed action: Up
2025-04-01T22:50:07Z [INFO] dispatching typed action: Enter
2025-04-01T22:50:07Z [INFO] dispatching typed action: HandleFocusChange
2025-04-01T22:50:07Z [WARN] Received 'end_in_band_command_output' while not expecting to read in-band command output.
2025-04-01T22:50:07Z [INFO] dispatching typed action: ClearMarkedText
2025-04-01T22:50:07Z [INFO] Received Preexec hook

Operating system (OS)

macOS

Operating system and version

macOS latest

Shell Version

fish 4.0.1

Current Warp version

v0.2025.03.26.08.10.stable_02

Regression

No, this bug or issue has existed throughout my experience using Warp

Recent working Warp date

No response

Additional context

No response

Does this block you from using Warp daily?

No

Is this an issue only in Warp?

Yes, I confirmed that this only happens in Warp, not other terminals.

Warp Internal (ignore): linear-label:b9d78064-c89e-4973-b153-5178a31ee54e

None

@daveio daveio added the Bugs Bugs, Hangs, Crash, and Freezes label Apr 1, 2025
@dannyneira
Copy link
Member

Warp has an SSH Wrapper that enables features (like the blocks, prompt, completions, etc.) on remote machines requiring the default prompt on the remote machine to be either bash or zsh.

As a workaround you can add command ssh to your Settings > Subshells > Added commands menu, then run command ssh <user@server> to connect to remote session, this will attempt to enable Warp features as a subshell.

You can also try disabling the SSH Wrapper by navigating to Settings > Features. Blocks will stop working but with it disabling, SSH should work as normal.

That being said, we're actively working on an SSH wrapper overhaul which should improve the SSH experience considerably so stay tuned!

Related docs:
https://docs.warp.dev/features/ssh
https://docs.warp.dev/features/subshells

If those don't work, please let us know.

@daveio
Copy link
Author

daveio commented Apr 2, 2025

I am aware - as I say, using command ssh works fine. This doesn't block me, but it is a pain, and I would like to have the goodies that the SSH wrapper provides in fish :) I wonder if a bash/zsh shebang in the integration might even address it, I'm happy for the integration to assume that bash or zsh are installed.

@daveio
Copy link
Author

daveio commented Apr 2, 2025

At the very least, it would be nice if ssh didn't actively bomb out and disconnect if the integration failed. As it stands, it forces a disconnect!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bugs Bugs, Hangs, Crash, and Freezes
Projects
None yet
Development

No branches or pull requests

2 participants