Ask HN: What's your SSH terminal workflow like?

1 points by otherayden ↗ HN
I recently transitioned into doing most of my work via SSH running on an old server I've had lying around my house. Currently using tmux, ssh, neovim for file editing, and switching between claude code and codex for terminal coding agents. Is this as good of a setup as one can get? Anything I'm missing out on?

17 comments

[ 1.1 ms ] story [ 12.8 ms ] thread
Back in the day I used to do ssh, tmux, vim for most of my work on the server and sshfs for stuff where I needed my IDE. In the last 10 years I think the only thing thats changed is adding agents to the mix (and no longer needing sshfs). Some files kinda open slow on vim or screw up the syntax highlighting so I switch to nvim/helix (still evaluating both. Don’t know what to pick)
How often do you manually edit text files these days? I have been a neovim power user for a few years now but I find that I almost never open it anymore since I use agents for most code.
One thing you might be missing is better integration between the local desktop and the remote environment. Things like persistent ssh connections, seamless clipboard sharing (including images), port forwarding and file path translation, so that working remotely feels almost indistinguishable from working locally.

I wrote a session manager[1] to handle all that. Linux/sway/kitty only though.

[1] https://github.com/artemave/hop

I have been dying for clipboard sharing actually. I have sort of a hacky solution using scp and xclip but I will definitely be checking out the session manager
If all you want is clipboard integration over ssh, then, perhaps, kitty terminal might be enough.

hop does take it a notch further and allows to `hop open` images (or any binary really) from the remote machine such that they are opened by your host's xdg-open (as well as pasting images from host to remote).

Make sure your terminal and tmux have OSC 52 enabled so your Neovim yank directly copies into your local client's clipboard over SSH.
you are my savior this is the exact use case that I have been hacking around thank you
sshfs so you can either edit on the remote file system with your local editor or have your editor save a copy to the remote system
I have a tmux split in 4. Personally I just use claude, but in any 4th you can run whatever you pref. Each agent has its own workspace (run in a diff dir), but they all share memory, skills, and can of course read each other work. Four is nothing special, just easy to still read in a 13” screen, easy to switch each pane to full screen and so on.
The problem then is how to avoid a situation where 1 wrong fact is present in the common memory and then propagated to all agents. So you need to be able to see what's in the memory, correct it once and then make sure this change is propagated to all agents. This is 1 of the ideas we used when we were building up memory in Substrate. How do you store the shared memory?
[flagged]