Compare
AgentKennel vs plain SSH and tmux
SSH into a server, start claude inside tmux, detach. It is the oldest way to keep an agent running, and it works. AgentKennel is built on the same tmux; the difference is everything around it.
Same core
Under the hood, AgentKennel is plain Python and Bash around three programs you may already know: tmux keeps every agent alive, ttyd shows a tmux session in the browser, and Claude Code runs inside. Each agent is the real claude TUI, not a chat wrapper. So the question isn't which runs Claude better: it's how much of the managing you want to do yourself.
Side by side
| Aspect | AgentKennel | plain tmux + ssh |
|---|---|---|
| What you drive | the real claude TUI, in a browser tab | the real TUI, in an SSH client |
| Where Claude runs | your VPS | your server |
| From the phone | any browser, and Telegram (voice, buttons) | an SSH app |
| Many agents at once | yes, with a memory limit, idle unloading, archive | yes, by hand |
| Back after a reboot | yes, the same conversations | no, resume each by hand |
| Shared task board | yes | no |
| Other agents (Codex, Cursor…) | no, Claude only | anything |
| Price | free (AGPL) | free |
When plain tmux is enough
- One or two sessions that you attach to from a computer with a real keyboard.
- You want to run other tools too. tmux runs anything; AgentKennel is for Claude Code only.
- Nothing extra listening on the network. SSH is already open; a dashboard is one more service, even behind a password and HTTPS.
What AgentKennel adds
- No SSH client. Every terminal is a browser tab, with copy and paste like a desktop terminal: Ctrl+V pastes text and images, and screenshots drop straight in.
- Restarts handled. After a service restart or a reboot, every terminal reopens the same conversation (
claude --resume). With tmux alone, you resume each one by hand. - Memory handled. At most 12 terminals loaded; one idle for 2 hours unloads (never one with an open tab or a pending timer) and comes back on click.
- Names and codes. Each terminal has a name and a code that is the same in the dashboard, tmux, the logs, the task board and Telegram. Rename, reorder, search, archive.
- A phone interface. Swipe to scroll, press and hold to select, a key bar with Ctrl+C, Tab, the arrows and Enter. And a Telegram bot for the same terminals.
- A task board and a Server tab. What each agent is working on, and which one is using the CPU and memory.
- Safety guards. Claude Code hooks that stop secrets in commits,
pkillby pattern and mail to people without your yes. - HTTPS and setup. One command installs tmux, ttyd, Caddy, Node.js if needed and Claude Code, sets up systemd services, and gets a certificate for a free sslip.io name.
Your tmux stays yours
If you already use tmux on the server, AgentKennel doesn't touch it: the agents run on their own tmux server, in ~/agentkennel/.sessions/tmux. You can still look at them over SSH with TMUX_TMPDIR=~/agentkennel/.sessions/tmux tmux ls. Removing AgentKennel (~/agentkennel/install.sh --uninstall) stops its services and keeps your terminals, board and password.
The short answer
A couple of sessions, from a laptop, and you're at home in tmux: stay with tmux. A dozen agents that should survive reboots and be reachable from a phone: that is what AgentKennel automates. More details are in the AgentKennel README; to try it, see the install options or the guide to running several agents at once.