v0.6.2 Workspaces is Mission Control

A command center for coding agents.

TurboTTY is a native macOS terminal built around repositories. Each task gets its own git worktree and a real, GPU-drawn terminal. Sessions survive quit. Agents stay visible until you look.

macOS 26+ · Apple Silicon · signed & notarized

Runs side by side

  • Claude Code
  • Codex
  • Grok
  • Kimi Code
  • OpenCode

Built around repositories

Not a pile of tabs.

Open a project, spin a worktree per task, and run every agent side by side. Status dots and the bell tell you who needs you. One click jumps you there.

8 Workspaces Filter Activelumen~/src/lumenoffline-syncmain+2lumen~/src/lumen.wt/idle-hibernateidle-hibernateorbit~/src/orbitpdf-exportmainatlas-api~/src/atlas-apimainnotes~/notesmaintern~/src/ternsearch-v2maindotfiles~/.configmainScratchSession · ~/Downloads

Worktree-first

Every task is a checkout with its own terminals. Pin, archive, nest by branch. Rows that need you — a waiting agent, unread output, a running script — hoist themselves into Active.

lumenClaude Code CodexKimi claude — offline-sync claudeRead src/sync/queue.tsUpdate src/sync/queue.ts +31 -9Bash bun test sync ✓ 142 passed 0 failed 1.84sThe retry queue drains on reconnect. Open the pull request? codex — idle-hibernate codexPlan: hibernate canvases idle for 20 min 1. track the last visit per canvas 2. free surfaces, keep the zmx session 3. reattach on focusApply patch Canvas/Hibernation.swiftswift build Compiling 214 files AGENTS2Open the pull request?lumen · offline-syncApprove the migrationorbit · pdf-export Hibernate idle canvaseslumen · idle-hibernate Ready for reviewlumen · mainNotification History…

Agents in view

Presence chips on every row. An attention queue for anyone blocked on you. Install hooks and a skill so the agent can talk back through the app, not just the PTY.

lumenClaude Codebun testzsh claude — lumen Claude Code · lumenmake the retry queue survive a reconnectStarting with the queue and its tests.Read src/sync/queue.tsUpdate src/sync/queue.ts +31 -9Bash bun test sync ✓ 142 passed 0 failed 1.84sThe retry queue drains on reconnect. Open the pull request? bun test — lumen bun test --watchsrc/sync/queue.test.tsdrains on reconnect 4msbacks off after 3 tries 2mskeeps order across restarts 142 pass · 0 fail · 1.84sWatching for changes… zsh — lumen git log --oneline -49f2c1e4 Drain the retry queue on reconnect51b07aa Back off after three failuresc3e9d10 Keep queue order across restartsturbotty tab new --cwd "$PWD" Split Right

Real terminals

libghostty surfaces, drawn with Metal. Tabs, splits, zoom. Find in scrollback, clear the screen without wiping history. Layouts come back on relaunch.

lumen — offline-sync claude claudeUpdate src/sync/queue.ts +31Bash bun test sync running 142 tests… lumen — offline-sync claude claudeUpdate src/sync/queue.ts +31Bash bun test sync running 142 tests… ✓ 142 passed 0 failedQueue drains on reconnect. Open the pull request? zmxalivelumen/claudelumen/testsorbit/zsh 18:42 Before you quit 09:10, next morning Relaunched, reattached Q still running Scrollback intact, new output highlighted Agent mid-run when the app quits

Quit. They’re still there.

Every pane is zmx-wrapped. Close the laptop, install a build, come back in the morning — every agent, every command, every scrollback reattaches where you left it.

New in 0.6.2

A stage of terminal cards.

The window is the panes, and Workspaces is how you move between them.

  • Workspaces is Mission Control

    One grid of every project and workspace, with a live preview of the active tab down to each split. Filter, arrow keys, Return.

  • The canvas is the panes

    The tab strip lives in the header. Split, zoom, equalize, and close sit on each leaf when you hover it.

  • Each leaf is its own slab

    Liquid glass, a shared gap, and the window background between them. Native traffic lights, centered with the header.

every pane's PATH
 turbotty worktree list --json
 turbotty tab new --cwd "$PWD"
 turbotty surface send --submit "open the PR"

Busy agents, quiet machine.

0frames

for panes you can’t see

Hidden tabs stop their render loop, display link, and Metal encoding. Output, badges, and notifications keep flowing.

20min

then idle canvases hibernate

Surfaces, scrollback, and GPU buffers are freed; the zmx session stays alive and reattaches when you come back.

fewer gh calls

One combined git probe per worktree, parallel pull-request polls, and prompt refreshes that coalesce.

Also in the box

Everything around the terminal, too.

Command palette

Every action, with shortcut search that knows cmd from command.

GitHub and GitLab

Pull request state on the row. The hover card opens the PR.

Markdown preview

Read the plan an agent just wrote without leaving the app.

Project scripts

Run the scripts each repository defines, and see which are running.

Themes

Ghostty themes that recolor the chrome, not just the cells.

Find in scrollback

Search the whole history. ⌃L clears the screen, never the scrollback.

TurboTTY app icon

Get TurboTTY 0.6.2

Unzip, drag it to Applications, and open a repository.

Download for macOS .zip · arm64
  • macOS 26 or later

    Built for Tahoe with SwiftUI and Liquid Glass.

  • Apple Silicon

    Native arm64 build for M-series Macs.

  • Signed and notarized

    Developer ID signed, notarized by Apple.

  • Updates itself

    New releases install in place, verified with an EdDSA signature.