One window for
every project.

A desktop workspace for running Claude Code across several projects at once — built around terminals instead of an editor. And when you walk away, your terminals come with you.

clodestack — 3 projects
api-server
web
mobile
api-server ~/code/api % claude
● Analysing the migration…
✓ 14 files updated
# tests pass
api-server ~/code/api %  
web ~/code/web % npm run dev
VITE ready in 412 ms
→ http://localhost:5173
# open in panel?

Built for working in several places at once

Every project keeps its own terminals, its own colour and its own state — so you always know which machine you are typing into.

Many projects, one window

Each project in the sidebar owns its terminals. Switching projects swaps the whole set — no window juggling, no lost sessions.

You always know where you're typing

Every project gets an accent colour — on the sidebar chip, the pane border, and a badge in the shell prompt itself.

Real terminals

xterm.js on a genuine PTY, so full-screen TUIs — Claude Code included — render properly, with colour, mouse and resize.

Git at a glance

Branch and dirty count per project, polled off the UI thread so a big repo never freezes the window.

Broadcast

Run one command in every project at once — git pull, claude, whatever you would have typed five times.

Knows what your project is

App name, version, bundle id, icons and assets — read from the project's own files, and written straight back when you edit them.

Your terminals, on your phone

Turn on Remote, read a six-character code into your phone, and the window you left running is in your hand. Terminals travel as text, not video — so they stay sharp, work on one bar of signal, and barely touch your data.

  1. Type on the phone, it runs on the desktop. The same shell, the same session — Claude Code included. A key row adds the esc, ctrl and arrows a phone keyboard forgot.
  2. Watch your emulator. The Android device panel streams over WebRTC, peer-to-peer, so you can tap through the app you are building on the phone in your hand.
  3. Pairing you can take back. Codes work once and expire in five minutes. Unpair every device from the desktop in one click.
  4. Or host it yourself. The relay is a small open service — point clodestack at your own and nothing touches ours.
Glenn's Mac · api-server
api ~ % claude
● Reading migration.sql…
✓ done in 4.2s
# from the sofa
api ~ %  
esctabctrl ^C |

Install

Python 3.11+ and a git on PATH. The first launch creates a virtualenv and fetches PySide6.

$ git clone https://github.com/glennmichaelmejias/clodestack.git
$ cd clodestack
$ ./run.sh                          # or: ./run.sh ~/code/api ~/code/web

macOS and Linux. State lives in ~/.config/clodestack/. Remote is off until you turn it on.