When Andrea (known online as sindro) decided to write a blog post, he didn't open VS Code. He didn't fire up a cloud IDE or even reach for his laptop. Instead, he SSH'd into a Raspberry Pi running in a closet somewhere in his house — from his phone, while sitting in the bathtub — and started typing. This isn't a gimmick or an elaborate joke. It's a serious workflow that Andrea has refined over months of daily use, and he's documented every detail for anyone curious enough to try it themselves.
The Hardware: A Pi 5 Running Debian Trixie
At the heart of this setup is a Raspberry Pi 5 running Debian Trixie (aarch64) — affectionately named "nowhere" for reasons Andrea leaves unexplained. The machine runs Claude Code inside tmux, 24 hours a day, seven days a week. No Docker containers, no Kubernetes clusters, no VS Code remote tunnels. Just Unix doing what Unix does best: staying out of your way. To connect from any device, Andrea simply types ssh nowhere followed by tmux -u at, and he's back exactly where he left off — sessions intact, scrollback preserved, every project window available.
Why tmux Is the Real IDE Here
Andrea's tmux configuration uses Ctrl-F as the prefix key (a decision that "kills" the default find binding), with multiple windows named after projects: 0:sysadm 1:gastone 2:sindrome 3:gastone-logs. Each window runs its own Claude Code instance, and Andrea switches between them with quick prefix-number combos. The features he relies on most are scrollback (up to 10,000 lines), vi-style copy-paste without a mouse, and synchronized pane input for running commands across split views simultaneously.
SSH Agent Persistence via systemd
One clever trick keeps authentication seamless: Andrea's ssh-agent is managed by systemd with a hardcoded socket path exported in .bashrc. This means Claude Code — running inside tmux, inside a shell — automatically has access to his SSH keys without any agent forwarding flags. It can push to git repos, deploy to staging and production servers, and SSH into other machines without prompting for passwords or keys on every operation.
The Phone Setup: Termius and the Typo Feature
On iOS, Andrea uses the free version of Termius with a saved connection to his Pi. The critical detail is mapping Ctrl-F (his tmux prefix) to a dedicated button above the keyboard — giving him full multiplexer control from a phone screen. Touch-to-scroll works beautifully for reading through Claude's output and build logs, which he describes as "completely natural." Interestingly, Andrea embraces the typos that come with mobile typing — noting that LLMs are fuzzy matchers by nature, so 'stsging' becomes 'staging', 'tge' becomes 'the', and 'donMr' becomes 'don't' without any friction. What would be a nightmare on traditional interfaces becomes a non-issue.
WireGuard: Seamless Roaming From LAN to Cafe
Andrea's WireGuard VPN activates automatically when he leaves his home network, routing traffic back through his house so SSH connections stay intact regardless of physical location. When the endpoint switches from local LAN IP to VPN address, the TCP connection does drop — but Termius reconnects in about three seconds, and tmux keeps everything running exactly where it was. The trade-off is worth it: mosh (a UDP-based alternative) would survive network changes automatically but sacrifices scrollback and touch-to-scroll support on mobile.
Why Not Mosh?
Andrea gives a direct answer to the obvious question: "The deal-breaker is that mosh doesn't support scrollback or mouse events." Since mosh syncs screen state rather than streaming raw bytes, Termius loses touch-to-scroll functionality — which is how Andrea reads through hundreds of lines of terminal output on his phone. WireGuard keeps VPN links stable enough that disconnects are rare anyway, and the three-second roundtrip when switching endpoints costs less than losing full scrollback would.
Key Takeaways
- Claude Code doesn't need an IDE because it IS the IDE — reading files, editing them, running tests, checking build output, iterating
- tmux provides everything modern "workspace" concepts offer (persistent sessions, multiple contexts, searchable history) without graphical bloat
- The typo-friendliness of LLMs makes mobile typing a viable workflow rather than a compromise
- Defense in depth matters: keeping SSH keys on the Pi works because it's not internet-exposed — but forwarded-only keys are more secure for riskier environments
The Bottom Line
Andrea's bathtub-to-production workflow isn't about flexing or proving a point — it's a genuine demonstration that the tools we already have (SSH, tmux, Unix philosophy) combined with modern AI assistants can eliminate the overhead we accepted as inevitable. If you're still paying for cloud dev environments or dragging a laptop everywhere, this setup deserves a second look.