Check Node
Cubicle needs Node 20 or newer, on macOS or Linux. Windows is not supported yet — it works under WSL.
node --version # v20 or higherCubicle runs entirely on your machine. One global install, hooks once, then launch your sessions through it — only the processes you start that way are ever shown.
Cubicle needs Node 20 or newer, on macOS or Linux. Windows is not supported yet — it works under WSL.
node --version # v20 or higherOne global install. Nothing is compiled, and nothing runs until you ask it to.
npm install -g cubicle-cliDetects Claude Code and Codex, and writes Cubicle's hook entries into each one's own config. It backs them up first, merges rather than overwrites, and changes nothing on a second run.
cubicle initThis is the opt-in. It launches Claude Code or Codex normally with a run id in its environment, starts the local office the first time, and opens it in your browser.
cubicle run claude --name "Fix the review table"
cubicle run codex --name "Audit the queue worker"Every later run joins the same office. Leave the tab open on a second monitor — characters arrive, work, and walk over when they need you.
cubicle open
# http://localhost:4517Verifies Node, both runtimes, the hooks, the local files, the server, the websocket and the ports — and lists what is being tracked right now.
cubicle doctorWhen the header reads BACKEND LIVE and a character walks in after cubicle run claude, you are done.
LOCALHOST:4517Working. The label under the character names the tool and the file, and how long it has been in that state.
Thinking between tools, or running subagents. An agent with work in flight is never drawn as idle.
Blocked on an approval or a prompt. It walks to your door with a ring around it — answer it in the terminal you launched from.
A tool failed. The failure holds on screen rather than being replaced by the next quiet moment. Click the character to read its events.
A finished turn brings you a card. One agent at a time; the rest queue outside. Press Received and the next one comes in.
Nothing to do. The character waits by the portal instead of sleeping at a desk, and comes back as itself on your next prompt.
The server stopped. Any cubicle run starts it again, and the office reconnects on its own — cubicle status will tell you whether one is up.
Almost always because it was started as a plain claude or codex, which Cubicle ignores on purpose. Launch it with cubicle run claude. If that still shows nothing, run cubicle doctor to check the hooks.
By design. Only runs whose process is genuinely still alive come back; everything else is archived into History, so a restart can never repopulate the floor with old sessions.
That run has nothing to do at this moment. It keeps its desk and its identity, and walks back in on your next prompt.
They are two runs under one project, tracked and shown separately. You can track one and ignore the other.