Compare/Lanes Desktop/Lanes vs tmux

Lanes vs tmux

You can run several agents by hand in tmux panes. Lanes is purpose-built for it: automatic worktrees, a board, and live status.

tmux is a terminal multiplexer. Plenty of people use it to run a few coding agents in split panes, and it works. But tmux knows nothing about agents, branches, or what each one is doing. Lanes is built for exactly that job.

This page is honest about the trade: tmux gives you primitives, Lanes gives you the workflow.

At a glance

DimensionLanestmux
PurposeWorkspace for parallel coding agentsTerminal multiplexer
IsolationAutomatic git worktree and branch per sessionYou manage worktrees by hand
VisibilityBoard with per-session status and a bellPanes you check one by one
Task modelIssues from plan to doneNone; it is a terminal
IntegrationsGitHub, Linear, and Lanes Desktop MCPNone built in
Quick commandsPer repo, one keystroke, run in the worktreeYour own bindings and scripts
DocsLanes Desktop docsman tmux

Where Lanes fits

Lanes removes the manual work of running agents in parallel. Worktrees are created and cleaned up for you, every session has a status you can see at a glance, and the work lives on a board with ticket integrations. You get the parallelism without the bookkeeping.

A session in Lanes is still a real PTY running the same official claude or codex you would run in a pane, but it is attached to an issue. That attachment is what tmux cannot give you: the card shows Busy, Awaiting input, Stopped, Exited, or Error, a bell rings when an agent has a question, and the Meta tab keeps tokens, cost, and runtime per session. Stopped Claude Code sessions restart with their history carried over, and Cmd+T still opens a bare terminal when you want a plain shell.

Where tmux fits

tmux is free, universal, and endlessly scriptable. If you want full manual control, already live in the terminal, and are happy wiring up worktrees and monitoring panes yourself, tmux is hard to beat. None of that is a knock: if your setup already works and you want nothing between you and the shell, keep it.

How Lanes does it

  • Worktrees without the bookkeeping. Each issue gets a directory under .worktrees/, named from the issue ID plus a generated word pair, branched off your base branch. Lanes warns before removing anything with uncommitted work and cleans up automatically on completion. See worktree management.
  • The repetitive parts become keystrokes. Quick commands live per repo in .lanes/quick-actions.json, typed as either Claude prompts or raw terminal commands, bound to Cmd+Alt+1 through 9, and always run inside the issue's worktree. See quick commands.
  • Strays stay visible. The process manager lists tracked sessions, orphans left behind by a crash, and external claude or codex processes Lanes did not start. Stop Sessions winds tracked work down gracefully; Kill All clears the slate. See process manager.

Choose Lanes if

  • You want isolation, status, and a board without setting it up yourself.
  • You want tickets and MCP orchestration around your agents.
  • You want a stopped agent to come back with its context instead of starting over.

Choose tmux if

  • You want a minimal, scriptable terminal and full manual control.
  • You work over SSH on machines where a desktop app cannot follow.

You can also use both: run Lanes for orchestration and keep tmux for everything else in your terminal.

Further reading

See Lanes Desktop or read the quick start.