The terminal-first agent manager for every coding CLI, every OS.

What can Pane do?
Worktrees and isolation · 1 of 28Clicking New pane grows a fix-nav branch off main with its own worktree. Archive removes it again.
Worktrees and isolation · 2 of 28Claude Code, Codex and Aider work side by side in three terminals: one edits, one runs tests, one is done.
Worktrees and isolation · 3 of 28Three panes each start a dev server on their own port: 4210, 6380 and 7750.
Worktrees and isolation · 4 of 28Clicking New pane creates an add-billing worktree, and the .env file is copied into it.
Worktrees and isolation · 5 of 28A new fix-nav pane runs the setup and run scripts from pane.json: pnpm install, then pnpm dev.
Worktrees and isolation · 6 of 28One command brings an existing hotfix worktree into the sidebar as a pane.
Agents · 7 of 28The same terminal tab runs Claude Code, Codex, Cursor and Aider in turn. No plugins, no SDK, no waiting.
Agents · 8 of 28Two Sessions side by side: one starts panes for a pricing page and opens a PR, the other starts a pane for an auth bug.
Agents · 9 of 28Asked to start a pane for the docs, Claude Code calls Pane's agents_start tool and a new update-docs pane appears.
Agents · 10 of 28One command lists what an agent can do in Pane: add repos, create panes, send input and check on other agents.
Agents · 11 of 28The developers page links API docs, OpenAPI, agent instructions and the CLI contract.
Agents · 12 of 28An agent goes around a loop: create a pane, read its output, send input, validate, and again.
Panes and tabs · 13 of 28The sidebar shows each pane's name, branch, port and status on one row.
Panes and tabs · 14 of 28Split Right, then Split Down, turns one terminal into three.
Panes and tabs · 15 of 28From the + menu, a browser showing localhost:3000 opens beside the agent's terminal.
Panes and tabs · 16 of 28Typing @ in a terminal offers npm test output with 2 failures from another terminal, and picking it drops that output into the prompt.
Panes and tabs · 17 of 28A sidebar where a working pane's name breathes, a finished pane gets a dashed blue underline, and clicking it clears the marker.
Panes and tabs · 18 of 28A desktop alert says fix-nav needs your input, and clicking it takes you to that pane.
Remote and phone · 19 of 28Pane runs on your desktop while Claude Code, Codex and Aider run on a VM.
Remote and phone · 20 of 28The display turns off overnight while the host stays awake and two agents finish their work.
Remote and phone · 21 of 28A Claude notification on a phone says fix-nav finished, and a reply typed on the phone goes back to the host.
Git and terminal · 22 of 28Commit adds a new commit to the branch, and Push to Remote sends it to origin.
Git and terminal · 23 of 28While you scroll back to read, new output arrives and your place in the terminal stays put.
Git and terminal · 24 of 28Ctrl+Shift+P opens the command palette, and typing split finds Split Right and Split Down.
Platform · 25 of 28The same Pane window on Windows, macOS and Linux.
Platform · 26 of 28Inside a WSL terminal on Windows, Claude Code starts in an Ubuntu distro.
Platform · 27 of 28A LICENSE file gets stamped AGPL-3.0, and a GitHub star lights up.
Platform · 28 of 28Each pane shows the tokens it used and what it cost, and a bar shows the Codex rate limit at 62%.
Worktrees and isolation
- Auto worktrees: Pane creates and cleans them - you never type
git worktree - Parallel panes: run Claude Code, Codex, Cursor, OpenCode and Aider side by side
- Isolated ports: each pane gets its own block of 10 ports in $PANE_PORT, so parallel dev servers never collide
- Secrets sync:
.envauto-copies into every new worktree - Setup scripts: Pane runs the setup, run and archive scripts from your
pane.jsonorconductor.json - Bring your worktrees:
runpane panes adoptpulls in worktrees you made with Git or another tool
Agents
- Agent-agnostic: Claude Code, Codex and Cursor are built in. Anything else that runs in a terminal works too. No plugins, no SDK, no waiting
- Sessions: chats with Claude Code, Codex or Cursor that split up work, start panes, watch them, collect reports and track PRs. Tile several side by side
- MCP server: Pane registers its tools with Claude Code, Codex and Cursor on launch, even inside WSL. Your agents can start and check on other agents
- Agent-operable CLI: agents can discover Pane's schema, register repos, and create follow-up panes themselves
- RunPane developer resources: API docs, OpenAPI, agent instructions, and the local CLI contract
- Agent loops: let Codex, Claude Code, or any CLI agent create panes, read terminal output, send input, and validate progress
Panes and tabs
- Vertical sidebar: every pane, branch, port, and status visible at a glance
- Split panes: horizontal and vertical splits within each pane
- In-app browser: split a browser alongside your terminal
- Cross-terminal context: type
@to pull output from another terminal in the same pane - Status indicators: workspace dots, breathing active panes, and dashed return markers
- Notifications: desktop + sound alerts when agents need attention
Remote and phone
- Remote Pane: keep the desktop UI local while worktrees, terminals and agents run on a VM, WSL box or another machine
- Always-on setup: keep the host awake when agents need to continue: power guidance
- Phone access: steer agents from the browser app on your phone, get Claude app push through Remote Control, and let Sessions resume interrupted turns
Git and terminal
- Built-in Git: diff, commit, push, pull, rebase, squash, merge. All from the keyboard
- Terminal patches: xterm.js fixes tuned for agent CLIs: no scroll-jump, inline images, kitty keyboard protocol
- Keyboard-first: shortcuts for panes, tabs, splits and Git, plus a ⌘/Ctrl+Shift+P command palette
Platform
- Cross-platform: Windows x64 + ARM64, Mac (Apple Silicon + Intel), Linux x64 + ARM64. Same UI, same shortcuts
- WSL that works: open repos inside WSL, run agents in the distro, and run Sessions in the WSL distro you pick
- Open source: AGPL-3.0, no lock-in
- Usage & limits: tokens and cost for Claude Code and Codex per pane, plus Codex rate limits
What problem does Pane solve?
AI coding agents are incredible. Claude Code can work autonomously for hours. Codex can ship features end-to-end. The models are not the bottleneck.
Your agent manager is the bottleneck.
Managing AI agents right now feels like air traffic control with a walkie-talkie. You're juggling terminal windows. Copy-pasting between tabs. Losing track of which agent is on which branch. Alt-tabbing between your diff viewer, your terminal, your Git client, and your editor. The agents are fast - but your tools make you slow.
Git worktrees solve agent conflicts by giving each task its own branch and folder. But actually using worktrees? It's miserable. git worktree add, git worktree remove, remembering paths, tracking which worktree is on which branch, cleaning up stale ones, rebasing back to main, squashing commits before merging. Even experienced developers fumble the workflow. It's powerful infrastructure with terrible UX.
Pane makes worktrees invisible. You create a pane, Pane creates the worktree. You delete a pane, Pane cleans it up. You hit a shortcut, Pane rebases from main. You never type git worktree again. All the isolation benefits, none of the pain.
The AI agent manager tools directory maps the broader landscape. It covers desktop apps, tmux tools, terminal multiplexers, worktree helpers, dashboards, and orchestration systems.
How does Pane work?
Pane uses two primitives: panes and tabs. One pane per feature, one worktree. Inside each pane, agents, terminals, the browser and file diffs are tabs, and a side panel shows the pane's files, changes and Git history. Your workspace comes back after a restart, and Claude Code, Codex and Cursor pick up their conversations. Every pane is fully isolated. Your agents never step on each other.
$ codex
What can you run?
Pane runs Claude Code, Codex and Cursor out of the box, plus OpenCode, Aider, Goose, Gemini or any other CLI agent that runs in a terminal.
Where can agents run?
Agents can run on your laptop, WSL distro, desktop, Mac mini, Linux box, VM, home server, or cloud host.
fix-navneeds you✓ approved
update-docsworking
Where do you control agents?
You control agents with Pane desktop for the full workflow, or runpane.com/app from your phone.
How do agents operate Pane?
A Session is a chat with Claude Code, Codex or Cursor that runs your other agents. It adds repos, creates worktree panes, starts agents, watches them and collects their reports through runpane agent-context and Pane's MCP server. See Sessions.
Why does it matter?
Pane is cross-OS, open-source and self-hostable, with the basics you need to code with agents and none of the lock-in.
See the details →Any CLI agent runs in Pane instantly, with zero integration. Other tools build custom chat UIs that only work with agents they've specifically added support for. Pane gives every agent a real terminal. Claude Code, Codex, Aider, Goose, whatever ships tomorrow. No plugins. No SDK. No waiting for support. Just run the agent.
Your agents already talk to Linear, Jira, GitHub, Slack - through MCPs and CLI tools. The terminal is the universal integration layer. Pane doesn't re-integrate what your agents already access. It gives them a place to run.
Pane also exposes the workspace back to the agent. Claude Code, Codex and Cursor get Pane's MCP tools automatically. Any agent can use the runpane CLI: runpane agent-context to learn the commands, runpane repos add to register a repo, runpane panes create to open panes with the right first prompt. Read the CLI contract.
What does a Session coordinate?
Open a Session from the sidebar and talk to Claude Code, Codex or Cursor about the whole workspace, not one repo. It runs outside any worktree, keeps its own notes folder, and coordinates work through runpane.
The important split: the Session keeps the discussion with you and decides what to do. The work happens in isolated worktree panes. The Session watches them, hears when they finish or get stuck, follows their PRs, and tells you what needs your call.
Read the Sessions docs →Pane isn't an IDE or a terminal emulator. It's Vim for agent management. Pane doesn't integrate with tools. It's the tool everything integrates with. Pane is cross-platform, keyboard-driven, and built for devs drowning in terminal tabs and Git conflicts. You bring the agents. We make them fly.
Which small details make Pane faster?
Pane's quality-of-life details compound. Each one saves seconds. Together they change how fast you ship.
How do you see status at a glance?
Workspace dots show project-level activity, pane names breathe while work is active, and dashed blue underlines mark finished panes you have not visited yet.
> fix @npm test
How do terminals share context?
Type @ to pull recent output from another terminal in the same pane into the one you're in. Your agent and your test run share context without copy-paste.
> Review this diff
How do snippet shortcuts help?
⌘/Ctrl+Alt+letter types text you saved into any terminal. Prompt templates, review instructions, debug commands. One keystroke each.
> ./screenshot.png
What can you drag and drop?
Drop files up to 50 MB directly into a terminal. No path-typing.
How does Pane sync secrets?
.env and gitignored files copy into every new worktree. Your pane is ready to run the moment it's created.
▶refactor-apiready on :4210
▶fix-navready on :6380
▶update-docsready on :7750
How does Pane isolate ports?
Each pane gets its own block of 10 ports in $PANE_PORT. Point your run script at it once, and three panes run three dev servers with no collisions.
✓ tests/api.test.ts (18)
Reading src/api/client.ts…
✓ tests/navigation.test.ts (9)
new output ↓Which terminal bugs does Pane fix?
Claude Code's scroll-jump bug in long conversations? Fixed. Several other xterm.js patches tuned for agent workflows - the same terminal engine VS Code uses.
How does Remote Pane work?


Refactor API client. Same task on desktop and on the iPhone app, coming soon.
Run agents on your other computer and keep the UI on your laptop. Open Pane on both with the same Tailscale login, then go to Settings → Remote Access → Your computers and click Connect. Use connection codes for browsers, other Tailscale accounts, and headless hosts. Get started quickly.
$ runpane workspace mac exec -- make test
[mac: macOS, zsh, exit 0]
One agent, your Mac, Windows and WSL machines
Need to check another OS or borrow a tool installed elsewhere? Workspaces lets your agent read files and run commands on your machines through Tailscale, your private network. Your agent stays here. The command runs there.
WSL to its own Windows host is still being fixed. See the setup guide for supported routes.
Hand the task to a fresh agent
With runpane handoff, a new agent picks up your note and code on another machine, then reports back. Use a native Mac or Windows repository. WSL destinations aren’t supported yet.
- Fill in the note from
runpane handoff --template. - Push your branch. Name the destination agent and machine, then check with
--dry-run. - Send the handoff. Leave that branch to the receiver while it works.
Which two remote paths can you use?
For your own computers, open Settings → Remote Access → Your computers and click Connect. For browsers and other accounts, create a pane-remote:// code under Connection codes → Set Up Host. Paste it under Your computers → Add with a Code on desktop, or into runpane.com/app in a browser.
How does the self-hosted daemon stay secure?
Pane runs a small daemon on the host so sessions, terminals, files, Git state, and approval prompts behave like Pane. Tailscale, SSH, or a trusted HTTPS tunnel becomes the access layer.
Is Remote Pane free and open source?
Remote Pane is included with Pane. Self-host it on your own hardware without a managed execution subscription, then bring the agent and voice provider keys you already use.
Can you use desktop and phone?
Desktop Pane gives you the full remote surface. The browser app at runpane.com/app lets you check and steer terminal-backed sessions from a phone, then install it as a PWA for quick access.
How is Pane different?
| What can Pane do? | Pane | Superset | Conductor | Claude Squad | Cursor | Herdr |
|---|---|---|---|---|---|---|
| Platform | Win (x64 + ARM64) + Mac + Linux, plus WSL repos | Mac (Linux experimental, no Windows) | Mac only | Mac + Linux (needs tmux) | Win + Mac + Linux | Windows + macOS + Linux |
| Agents | Claude Code, Codex, Cursor built in + any CLI | Any CLI | Claude Code, Codex, Cursor, OpenCode | Any (tmux) | Built-in only | Supported integrations + terminal commands |
| Diff viewer | Built-in, syntax-highlighted | Built-in | Built-in | None | Editor-level | Terminal or external review |
| Git workflow | Commit, push, pull, rebase, squash, merge. All keyboard | Worktrees + merge | Worktrees + PR | Worktrees only | Editor-level | Terminal Git or integration |
| Remote runtime | Local, or your own host over SSH, Tailscale or HTTPS. Phone browser app | Relay to your own machines (Pro); cloud workspaces in beta | Paid cloud workspaces; iPhone app for cloud only | DIY SSH + tmux | IDE local / SSH extensions | Server, SSH, named sessions |
| Keyboard-first | Shortcuts + command palette | Partial | Partial | Terminal only | IDE shortcuts | Terminal UI |
| Open source | Yes (AGPL-3.0) | Source-available (Elastic License 2.0) | No | Yes | No | Yes (Apache-2.0) |
| Session persistence | Workspace, tabs and scrollback come back; Claude Code, Codex and Cursor resume their conversations. Agents stop when you quit | Yes | Yes | No | N/A | Yes, with live detach and restore layers |
| Cross-terminal context | @ to share output between terminals | No | No | No | No | Compose with CLI or socket APIs |
| Secrets sync | .env auto-copied to worktrees | Manual | Manual | Manual | N/A | Your setup |
| Port isolation | Auto-assigned per pane | Manual | Manual | Manual | N/A | Your setup |
Why does Pane exist?
The worktree mess
Everyone agrees worktrees are the right way to run parallel agents - isolated branches, no conflicts, clean separation. But actually using them? It's miserable.
git worktree add, git worktree remove, remembering paths, tracking which worktree is on which branch, cleaning up stale ones, rebasing back to main, squashing commits before merging. Even experienced developers fumble the workflow. It's powerful infrastructure with terrible UX.
Pane makes worktrees invisible. You create a pane, Pane creates the worktree. You delete a pane, Pane cleans it up. You hit a shortcut, Pane rebases from main. You never type git worktree again.
The Windows problem
Windows has ~70% of the developer desktop market. Linux has another 5-10%. Mac has about 25%. The entire AI coding tool ecosystem is building for that 25%.
Conductor is Mac-only. Superset has no Windows build. Claude Squad requires tmux, which doesn't run on Windows. Claude Code agent teams needs tmux or iTerm2. Cursor and Windsurf want you on their built-in agents.
Pane is for the other 75%. And for Mac developers who want to choose their own agents.
Design principles
Keyboard-first, always. Every action has a shortcut. The keyboard isn't an alternative input - it's THE input.
Agent-agnostic, forever. We will never lock you into a single agent. If it runs in a terminal, it runs in Pane.
Cross-platform, actually. The developer on a Surface Pro deserves the same tool as the developer on a MacBook Pro.
Git-native, not Git-adjacent. The agent writes code. You review it. You commit it. That loop should be seamless.
Speed is a feature. If something takes more than 100ms, it's a bug. If an animation doesn't serve a purpose, remove it.
Used by builders at
In 100 countries
Who is Pane for?
- → Developers on Windows, Windows ARM, WSL, and Linux underserved by Mac-only tools
- → Multi-agent users who want one app to manage them all
- → Keyboard-driven developers who want Superhuman-level speed
- → Anyone tired of juggling terminal windows
What do people ask about Pane?
Why did you build this?
Why is Pane built with Electron? Isn’t Electron bad?
I have 47 terminal windows open right now. Help?
What are Git worktrees and why do they matter?
git worktree again. Claude Squad uses worktrees but makes you manage them yourself. Pane makes them invisible.Who is Pane NOT for?
Why "Pane"?
Why does everyone hate Windows developers?
"But developing on Windows is hard"
wsl --install. That's it. You now have Ubuntu running inside Windows with zero VMs, zero overhead. The entire "you can't dev on Windows" narrative comes from people who've never tried WSL and think the terminal starts and ends with iTerm2. Meanwhile, 70% of the world's developers are shipping production code on Windows just fine. Pane works on all of it - Windows, WSL, Mac, Linux. No excuses needed.Isn’t this just tmux with extra steps?
Wait, you actually use Windows?
How is Pane different from Cursor, Conductor, and Claude Squad?
What's an "agent manager" and do I need one?
What's the "Superhuman for AI coding agents" thing?
What if a new AI agent comes out tomorrow?
Every tool says "keyboard-first." Are you actually?
How do I install Pane?
curl -fsSL https://runpane.com/install.sh | sh. Windows PowerShell: irm https://runpane.com/install.ps1 | iex. Or download directly from GitHub releases. The script auto-detects your OS and architecture.Is Pane free? Will it ever cost money?
Join the Discord, view the source on GitHub, or reach out at [email protected].





