trzsz / trzsz-go

trzsz-go is the go version of trzsz, makes all terminals that support local shell to support trzsz ( trz / tsz ).

Home Page:https://trzsz.github.io/go

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Support for mosh?

markshep opened this issue · comments

I love this program - thanks for writing it!

I've successfully used trzsz-go with both SSH sessions and interactive AWS SSM Sessions but it doesn't work with mosh sessions. I know it's quite a different protocol as it uses UDP rather than TCP and has predictive modelling of the screen state so I guess it wouldn't be trivial, but is it even possible?

The mosh-server rewrites the stdout output. It controls the output of the entire screen, causing the data transmitted by trzsz to be lost.

You might want to try https://github.com/trzsz/trzsz-ssh

@markshep How about making another mosh with trzsz support and port forwarding?

Based on tssh:

  • Make a new tssh-server program to replace mosh-server.
  • Make tssh --udp to replace mosh ( Support enabling --udp by default in ssh configuration ).
  • tssh and tssh-server use the udp protocol to communicate like mosh.

Now, tssh supports --udp mode like mosh. The tsshd works like mosh-server.

Please check https://github.com/trzsz/trzsz-ssh/blob/main/README.en.md#udp-mode for more details.

tssh --udp and tsshd are released.