Running Agents
Lattis runs coding agents for you and keeps them organized so you can drive many at once. This page covers launching agents, running several together, and the terminals they live in.
Supported agents
Section titled “Supported agents”Lattis ships with its own agent built in, and also drives the agent CLIs you already use:
| Agent | What it is |
|---|---|
| Sawyer | Lattis’s built-in agent — ships in the app, no install. |
| Claude | Anthropic’s coding agent. |
| Codex | OpenAI’s coding agent. |
| Pi | Lattis’s standalone agent CLI. |
| OpenCode | The open-source agent. |
Sawyer is the default and runs out of the box — it’s built into the app, so there’s no separate CLI to install and no agent account to log in to. The others drive the matching CLI you install yourself.
You don’t configure any of them to talk to Lattis — when an agent launches, Lattis points it at its own gateway automatically, so it uses the models you’ve connected with no extra setup.
Only what you have installed
Section titled “Only what you have installed”Sawyer is always available — it’s built into Lattis, so the picker is never
empty. For the others, the agent picker shows only the agents whose CLI is
actually installed on your machine, so you never pick something that can’t run.
Install an agent’s CLI (so that claude, codex, pi, or opencode is on your
PATH) and it appears automatically.
The default agent — the one launched when you open a branch — is Sawyer out of the box, and is configurable in Settings.
Launch an agent
Section titled “Launch an agent”There are two ways to start one:
- Open a branch in the Projects sidebar. Lattis launches your default agent in that branch’s worktree, inside the branch’s tiled workspace.
- Use the + menu in any pane’s tab strip to add another agent (or a plain terminal) to the branch you’re already on.
Type your task into the agent’s terminal and it goes to work. The stoplight on the tab and the branch tells you when it’s running, done, or waiting for you.
Running several at once
Section titled “Running several at once”This is what Lattis is built for. You can:
- Run different tasks in parallel — open several branches, each with its own agent, and let them work simultaneously. They’re isolated in separate worktrees, so they never collide.
- Put two agents on one task — add, say, both Claude and Codex to the same branch and compare how they approach it. Each gets its own tab and status dot, and they share the branch’s Changes and Spend.
There’s no fixed limit on how many you run — open as many as your machine can handle. The stoplights are what keep a wall of agents manageable: glance across them and you instantly see which ones need you.
Tabs and terminals
Section titled “Tabs and terminals”- Agent tabs live in the panes of the tiled workspace. Each shows the agent’s name, its status dot, and a close (×) button; drag a tab by its title to move it to another pane. A tab reads “(exited)” when its process has finished but you’ve kept the tab open to read the output.
- The + menu in a pane’s tab strip spawns a new agent or a bare terminal in the current worktree.
- Plain terminals are persistent login shells — handy for running a build,
checking
git log, or anything else without interrupting an agent. Put one in its own pane and it stays visible (and running) while you work.
Closing a tab ends that session; closing a branch’s last tab leaves the worktree in place on disk (see Projects & Worktrees for cleaning up).
- Projects & Worktrees — how branches and worktrees are organized.
- Stoplights & Status — reading agent status at a glance.
- Pull Requests & CI — shipping what an agent produces.
- Code Review — putting an agent to work reviewing a branch instead of writing one.