One workspace. Many agents.
Run many AI coding agents in parallel lanes: issues, worktrees, sessions, one board.
Install · Quickstart · Docs · Discord
Five agents, eight terminal tabs. One is waiting for input. One finished ten minutes ago and nobody noticed. Two are quietly doing the same work.
Agents got good at writing code. Nothing got good at keeping track of them.
brew install --cask lanes-sh/lanes/lanes && open -a LanesmacOS Ventura or later. Universal binary, native on Apple Silicon and Intel. Lanes updates itself on launch.
The Quickstart takes you from here to a first agent session. Join the Discord for updates and questions.
A native macOS app that puts every agent session on an issue board. Each card is a task. Each task holds live agent terminals, its own git worktree, and the diff those agents produced. You see what is running, what is blocked, what is waiting on you, and what shipped, in one window.
Review it without leaving that window: the diff, the editor, the database, the commit, the pull request.
- A board that holds the work. Drag issues through Planning, Implementation, Review and Done. Multi-select, labels, filters, dependencies with cycle detection, and board tabs scoped per project so two repos never bleed into each other.
- Real terminals, several per issue. Every session is PTY-backed, and one card can hold the plan-mode session plus the two implementation runs it spawned. Live status, per-session token usage, and resume across restarts.
- Claude Code and Codex, first class. Lanes detects them, reads their state, resumes their sessions and lists their models. Anything else runs as a plain shell session.
- A worktree per issue. Generated branch names, uncommitted state in the status bar, setup and teardown scripts, and auto-cleanup when the issue completes.
- A git client, not just a diff. Commit, publish, switch branches, undo the last unpushed commit, and open a pull request from the issue panel.
- Monaco and a database browser. A real editor with a file tree, and read-only SQL against the SQLite files it finds in your project, so checking what an agent actually wrote is two clicks.
- The model provider you choose. Gateway points a session at Ollama, LM Studio, vLLM, OpenRouter or z.ai, applied as real process environment so the request goes straight from the CLI to your provider. Local LLMs drives Ollama end to end. Both are research previews.
- GitHub and Linear over OAuth. Import a whole sprint onto the board, and push results back as comments.
- A team, when you want one. Remote workspaces sync issues, chat and presence in about two seconds, with assignees, presence avatars, and an honest banner when sync is degraded.
Full detail: Desktop docs.
Lanes Link is one endpoint you run: Gmail, GitHub, Linear, Notion, Slack and over a hundred others, plus your memory, tasks and skills, behind one set of permissions.
- Connect once, use everywhere. Any MCP server, any REST API with an OpenAPI spec, any IMAP mailbox, any CalDAV server.
- Permissions enforced at dispatch, not asked of the model, with every call in an append-only audit log.
- Profiles keep work and personal credentials, memory and policy apart, and credentials never reach the agent.
Install it from inside Lanes, or run bun install -g @lanes-sh/link. Free and open source at github.com/lanes-sh/link.
Lanes ships a built-in MCP server so Claude Code, Codex and other clients can read your board and drive sessions. Enable it under Settings > Integrations > Lanes MCP, then use Connect Claude Code or Connect Codex.
Once an agent can read session status and the diff that came out of it, you can stop prompting and start looping. Building loops is the guide; Loop engineering is the thinking behind it.
This repository is also a Claude Code plugin marketplace. Add it once, then install what you use:
/plugin marketplace add lanes-sh/app
/plugin install lanes-desktop@lanes
/plugin install lanes-bridges@lanes
/plugin install lanes-link@lanes
/plugin install lanes-forms@lanes
| Plugin | Skill | What it is for |
|---|---|---|
lanes-desktop |
install-lanes-desktop |
Install the Mac app, add a project, connect the local MCP. |
lanes-sessions |
Drive the board: issues, sessions, worktrees, terminals. | |
/lanes:setup-mcp |
Slash command: register the local MCP with Claude Code and Cursor. | |
lanes-bridges |
github-lanes-bridge |
Import GitHub issues, run them locally, post results back. |
linear-lanes-bridge |
The same loop for Linear, including sprint imports. | |
lanes-link |
setup-lanes-link |
Stand up the Lanes Link endpoint and register it with every agent. |
lanes-forms |
lanes-forms |
Provision a form backend, or fill one in on someone's behalf. |
Update them with /plugin marketplace update lanes. Without the plugin system, npx skills add lanes-sh/app installs the SKILL.md files alone.
Tauri 2, React 19, Rust and SQLite. Axum serves the MCP, portable-pty runs the terminals, xterm.js renders them, Monaco edits your files.
Local-first by default: a local workspace keeps every issue, session and setting in SQLite on your machine, and your code never goes anywhere. Remote workspaces are opt-in. Crash reporting is on by default and can be turned off under Settings > User > General.
- Quickstart, install to a running session.
- Desktop docs, including the board, sessions, worktrees, keyboard shortcuts and settings.
- All Lanes docs, where /docs/mcp compares the three MCP servers we ship.
A family of products for building with agents. Overview.
- Lanes Desktop is this one: your agent sessions on a board, on your Mac.
- Lanes Link is one MCP endpoint you run yourself, between your agents and your accounts, memory, skills and secrets. Open source.
- Lanes Forms gives you a live form endpoint from a single POST, with no signup.
- Lanes Compute is GPUs on demand, a single A100 through multi-node H100 clusters, billed per second. Limited early access.
Proprietary. All rights reserved.
