Working beside an agent
You talk to an agent in one pane. It works in another, its work pane, where you watch its commands run and can type yourself. The conversation is still the agent’s own interface (Claude Code, Codex). Alto adds the work pane, the link between the two, and commands that give the agent each command’s output and exit status instead of a screen to read.
-
Give the agent a pane.
In a Claude Code pane, Shell → Open Work Pane (⌘⇧K; Ctrl⇧K on Linux and Windows) splits it and starts a terminal beside it, on this computer or, if you have others, one you pick. Or split, then Shell → Give Pane to Agent to hand over a pane you already have and drive it together.
From a shell in the agent’s session:
Terminal window alto work new # start a work pane and link italto work new --on studio # on another computeralto work link 7 # link session 7 as the work pane -
The agent hears about it.
With Alto’s hooks installed, the next thing you say to Claude Code comes with a short note: it has a work pane, which you can see, and it runs commands there with
alto run -- COMMAND. It’s told once, again if the pane changes, and when it’s gone. -
It works where you watch.
Terminal window alto run -- cargo testRun from the agent’s session with no session named, this types the command at the work pane’s prompt and gives the agent back only that command’s output, and exits with its exit status. For full-screen programs and prompts:
Terminal window alto wait --until prompt # until the shell is back at its promptalto capture --screen # what's on screen nowalto send --key C-c # press keys there -
You stay in charge.
Type in the work pane whenever you like: the agent’s input waits until you’ve stopped for two seconds, so it never lands in the middle of yours. What the agent types is marked typed by claude for a moment.
Shell → Pause Agents Here (⌘⇧P), or
alto pause, stops agents typing there until you resume (alto resume); they’re told “paused by you”. Closing or unlinking the work pane leaves the agent running.
Several work panes
Section titled “Several work panes”A conversation can have several, on several computers:
alto work # list themalto work new --as db --on studio # name onealto run --in db -- psql -c '\dt' # pick it by namealto work unlink db # take the link away; the session keeps runningWhat run gives back
Section titled “What run gives back”alto run waits for the shell’s prompt, types the command and Enter, and waits for the command to end, using the shell’s own marks. Alto adds shell integration to zsh, bash and fish with no setup, still reading your own startup files.
| Exit | Means |
|---|---|
| the command’s own | it ran and ended |
124 |
still running after --timeout (it carries on) |
125 |
it couldn’t run it (something else running, or someone typed at the prompt) |
--json prints {output, exit, truncated, took, timed_out}; --max-lines keeps only the last lines (default 2000).
Where the agent’s files are
Section titled “Where the agent’s files are”The agent’s file tools still work where the agent runs, not in its work pane. For running and checking things on another computer that’s enough. To change code there, run the agent there (an Alto tab on that computer) and talk to it from here.
Prefer tools to shell commands? See The MCP server.