Alto docs
Alto is the backplane for people and agents. Your terminals keep running, on every machine you have, and tell you when one needs you. You plug in from the terminal you already use, from Alto’s own app or from your phone, and your agents plug in too.
A backplane is the board every card in a computer plugs into, and the cards talk across it. Alto is that for work. Every session is four things:
- Alive. Each terminal is its own process. It keeps running when the window closes, the app updates or the network drops, and comes back after a reboot.
- Addressable. Every server in your company or homelab becomes a device with one command, and every session on it is
machine:idfrom any machine you have. Say what a session needs and Alto puts it on a machine that fits. Tailscale is built in: secure remote access from anywhere, with nothing exposed to the internet. - Legible. Every session says whether it’s working, needs you or is done, with one queue of what needs you and one list of every session on every machine.
- Open. Any terminal can show a session, and so can your phone. Agents read it, type into it and wait on it with the
altocommand. Alto’s app is optional: a fast terminal of its own, built on libghostty, with agents working in a pane beside you.
Install
Build from source today; Homebrew is coming soon.
Keep your terminal
The app is optional: everything works from iTerm, Ghostty, Windows Terminal or ssh.
Alto and the tools you already use
The backplane under your orchestrator, tmux manager or agent terminal, not another one of them.
Your first sessions
Open a tab, quit the app, come back to it.
Set up your agents
One command so Claude Code and Codex report what they're doing.
Working beside an agent
A work pane: the agent runs commands where you can see them.
Remote access
Tailscale built in: reach your sessions from anywhere.
Running a fleet
Every service in your company or homelab, one command each.
Every session, every machine
One list of all of them, grouped by repository, agent or OS, each named machine:id.
Putting work where it fits
alto new --in 'os:windows has:claude': Alto picks the machine, and your code goes with it.
CLI reference
Every alto command, generated from the binary.
The ideas in one page
Section titled “The ideas in one page”- A session is a process, not a tab. Each tab’s session runs on its own, owned by a small background service. The window only draws it. See Sessions.
- Status, not screen-scraping. Tabs show working, needs you, done or idle, from what the terminal sees and from hooks agents call. See Agent status.
- Every client is equal, and the app is optional. The app,
alto attachin the terminal you already use, a script, your phone and another computer all attach the same way. See Keep your terminal and How it’s built. - Small on purpose. No repo, worktree or browser panels, and no planner of its own. You and your agents decide the work; Alto keeps it running and tells you when something needs you.