I have just today discovered zmx [1] which is like tmux but I always hated the tmux terminal emulation and how it hijacks scrolling, especially on Termius on my phone. It does session persistence but I think without the terminal emulator side of things, so scrolling works normally.
Been testing it today with Claude Code and it seems to work quite well switching between my laptop and phone.
I also hate how tmux uses alt mode and can never remember all the shortcuts, copy paste is a PITA and just today I had to look up how to dump the scrollback buffer to a file. Named sessions without window management makes a lot more sense these days. Similarly, I'm not a fan of all the ANSI escape codes that CC uses to jump the cursor around and rewrite the display to look like a GUI. I prefer a TUI that doesn't mutate rows after writing them, that's what alt mode is for. CC often clears whatever was in the scrollback buffer before you opened it, it hides bracketed paste, and goes crazy sometimes when content overflows the window and I have to resize the terminal or get blasted with a wall of glitching characters--extra annoying if I'm working from a low bandwidth link. I develop my own agent framework and code agent, and while some features aren't as polished as CC, one of my explicit goals is to preserve the traditional CLI feel, like the python REPL (that's what it's based around). I'll give zmx a try tonight :)
It can help to recognize that tmux combines three kinds of functionality: 1. process persistence; 2. client attachment; 3. view layout. If you don't like how tmux works, there are alternatives. I prefer Zellij [1]. (It also can be informative to take a peek at dtach [2] and abduco [3].)
I'm still doing this, too! The only thing I added was setting up notifications on my local machine using hooks in Claude Code (using a reverse ssh tunnel from my local machine to a VPS).
As for fancier setups, I keep bookmarking them, but haven't gotten around to trying any of them, yet.
Nice. What other fancier setups have you seen? I haven’t even come across any potential better alternative. Been playing around with tailscale’s new aperture service too which is awesome as well.
tmux supports tabs so you can have multiple Claude Code sessions running concurrently. You do need to learn a few tmux keyboard shortcuts to use it effectively (e.g. opening/closing/switching tab).
Thanks for the tip. Other ppl are saying "most of us started out like this" but if you haven't played with tailscale etc. (like me). Then this is new and good for learning imo
Yes. Doing the same. What is the advantage of this new feature? Tmux/Tailscale/Termius give you full control of your terminal.
Or mainly to save the end user the hassle to set it up correctly?
Oh lots of people will not be comfortable with tmux approach. The anthropic feature makes sense. But it's Max only and doesn't work well according to other comments.
Ease of setup is the biggest reason. I use this setup as well, but there are other UX niceties that would be a lot better with a dedicated mobile app: push notifications when Claude needs your input (I use a hook for this that connects to Pushover, but that's another service and extra setup), voice input, autocorrect that's right for this context, etc.
I have a hook in my claude.json that fires on "Stop", it calls a shell script (written by Claude, of course) that calls the Pushover API: https://pushover.net/, which lets you send push notifications to your device. It's paid, but just a one-time fee when you install the app on your phone.
The shell script takes a message which includes Claude's message, but unfortunately there's no deeplinking back to my ssh app (for obvious reasons, the notification just routes you to the pushover app), so instead of tapping the message, I know to just open my Blink shell app to respond to Claude.
This is also quite noisy when I'm just sitting at my desk working, but I usually turn off phone notifications while working anyway.
- - -
get tailscale (free) and join on both devices
install tmux
get an ios/android terminal (echo / termius)
enable "remote login" if on mac (disable on public wifi)
mosh/ssh into computer
now you can do tmux then claude / codex / w/e on either device and reconnect freely via tmux ls and tmux attach -t <id>
- - -
You can name tmux and resume by name via tmux new -s <feature> and tmux attach -t <feature>