Claude hands out the work
Claude opens tabs by name, reads what any tab is doing without switching to it, and sends it a prompt, whatever account or backend either one runs on. The send checks that the message actually arrived.
So it can message them and hand out work. Nothing more, nothing less: your terminal and your tabs stay as they are, with no tmux and no dashboard. Tabby is supported today.
I usually have more than 50 Claude Code sessions open. I started cctabs for myself in March, and it has been how I work ever since: thousands of pull requests at work, most in private repos, have come out of sessions in its tabs. My team runs parallel sessions the same way, and it has taken our PR throughput up about four to five times. After people saw it in demos at work and at meetups, I kept adding what my team and others needed, so it is now something you can install too.
It grew release by release: Wave Terminal in April (0.1), Tabby and a backend per tab in May (0.3–0.4), moving a session to another Claude account in August (0.5), Windows 11 in September (0.5.4), and in October restore across a reboot, Codex tabs and a token that locks the plugin's API (0.5.12–0.7.0). The whole history is in the changelog.
— Fred Motin (@motin)
Claude drives the fleet. One plugin install gives Claude Code the CLI and a skill to use it. Claude checks what is already running, opens new tabs, starts sessions in them, reads their output and sends them work, without you relaying anything by hand. Pair it with Claude Code's Remote Control and you steer the whole fleet from your phone.
Fork to explore. Branch any conversation into a new tab and try a different approach, with the original left exactly as it was. --worktree gives a new session its own branch and checkout.
Check in without switching tabs. cctabs sessions lists every session with its status; scrollback and transcript show what a tab is doing and what it has worked out.
Names that stay put. cctabs rename changes the tab title, the live session's name and the name resume looks for, together. A per-machine prefix keeps names apart when several machines share one Remote Control list.
Move to another machine. cctabs export packs a tab or a whole workspace, conversation included, and cctabs import opens it on the new laptop.
Claude Code and Codex CLI. cctabs runs both, and one fleet can mix them.
See all commands, or how it compares to claude-squad, ccmanager and agent-deck.
The simplest path: open Claude Code in any terminal and paste this prompt:
Visit https://cctabs.com/guide/getting-started and walk me through setting up cctabs on this machine.
Claude will install Tabby, the tabby-cctabs companion plugin, and the cctabs Claude Code plugin — then verify with cctabs sessions.
Or follow the manual steps in the Getting Started guide.
| Terminal | Platforms | Companion install |
|---|---|---|
| Tabby | macOS · Linux · Windows | Tabby → Settings → Plugins → search cctabs → install → restart |
Platform status: cctabs is tested on macOS and Windows 11. Tabby on Linux hasn't been tried yet, but its plugin format is portable, so it might Just Work.
Wave Terminal was supported through 0.4.x and was withdrawn in 0.5.0 — tabs would open but the Claude session inside them often never started. Running cctabs under Wave now exits with a pointer to Tabby. Your sessions are unaffected: they live in
~/.claude/projects, socctabs restorereopens them by name once Tabby is set up.Hitting issues on Linux or another terminal? Point Claude Code at the cctabs repo, share the error, and ask it to investigate and open a PR. Adding a new terminal backend means implementing the small
TerminalAdapterinterface —src/core/tabby.tsis the worked example.
Then, inside Claude Code:
❯ /plugin marketplace add generativereality/plugins
❯ /plugin install cctabs@generativereality
❯ /reload-pluginsThe plugin ships the cctabs CLI and a Claude Code skill — so Claude can drive your tabs without you switching to a separate tool.