The terminal in my pocketessay
This week I kicked off a documentation audit of the homelab from my desk, then approved its findings from a parking lot, phone in one hand. That sounds absurd, and it is, and I do it daily. When people hear “I use AI a lot,” they picture a chat tab. Mine looks different: terminal windows that live on a small computer in my rack, keep working after I walk away, and fit in my pocket when I leave the house. Every project on this blog was built inside this setup. This is the cockpit.
The seat rotates between Claude Code, ChatGPT Codex, and Google Gemini CLI: a deep bench of command-line AI agents, and I love learning where each one shines. The distinction from a chat window matters. These agents do work: they read and edit files in my repositories, run commands and read the output, and reach my actual systems (my GitHub, the Grafana dashboards, the smart home) through MCP, an open standard that lets AI tools plug into real systems. A chat gives you advice about your problem; these agents work in the directory, fixing it, showing you the diff. True to the colophon: whichever frontier model won my attention that week is what’s driving, but the cockpit doesn’t change when the pilot does.
The agents live on an always-on Mac mini, and the reason is a lesson. Early on, everything ran wherever I happened to be sitting, but agentic work (a long migration, a batch of refactors, a documentation audit) takes real wall-clock time. Every closed laptop lid or killed mobile background process orphaned an hour of work mid-flight. Moving the work to a machine that never sleeps fixed the orphaning; the next problem was staying connected to it.
That fix is old technology: tmux, a terminal multiplexer, which is a fancy way of saying my terminal sessions run on the mini and keep running whether or not anyone is watching. I attach, work, detach, and the agent doesn’t notice. The sessions have become long-lived coworkers rather than conversations; most run for days, each accumulating context on its respective project.

Reaching it from anywhere is the part that makes it a lifestyle instead of a desk. All my devices share a Tailscale network, a private mesh between machines I own, with nothing exposed to the public internet: no open ports, no VPN server to maintain, the mini simply isn’t reachable except by my own hardware. On the phone, Termius gives me a proper SSH terminal, so from anywhere with a signal I can attach to a running session, read what the agent has done, and give it the next instruction. Claude Code’s remote-control mode goes a step further and hands a live session to its mobile app, in a form that’s actually pleasant to drive with thumbs. That’s the parking lot.
The detail I always point out first: almost none of it is AI technology. tmux is older than some of my coworkers, SSH is thirty years old, and Tailscale is plumbing. The AI is one component, deliberately swappable, in an arrangement whose real properties (persistent, reachable, auditable) come from boring pieces holding it in place. Agents made a terminal on a shelf worth reaching from everywhere; the terminal was always willing.
The tools, though, are only half of the setup. A new agent session starts as smart as its model but blank as a new hire, so the onboarding is everything. The other half is the paper trail my sessions inherit and leave behind (the project context files, the decision logs, the skills), and that system deserves a post of its own.