tmuxghostty, and gpui walked into a mux.

zz is a superset of tmux, with libghostty, CEF panes, in a gpui surface. Import your config and start muxing.

Download zz

macOS and Linux · MIT / Apache-2.0

Claude Code v2.1.227Sonnet 5 with xhigh effort · Claude Max~/dev/zz
/clear is zz built on gpui? Yes — zz is built on gpui (Zed's UI framework), specifically via a fork with several carried patches (RenderImage::into_frames, WgpuDeviceContext, external-texture element, window corner mask, superellipse corner smoothing, refresh_rate exposure, etc.), maintained through scripts/forks.conf against demfabris/zed. ✳ Churned for 3s
🌿 main 🤖 Sonnet 5 (claude-sonnet-5) 💰 $0.3120 12s 📝 +0/-0▶▶ bypass permissions on (shift+tab to cycle) · ← for agents
https://gpui.rs/
https://ghostty.org/
https://github.com/tmux/tmux
click the window, then press ⌃B to take it for a spin⌃B % split·⌃B " split down·⌃B x close·⌃B z zoom·⌃B ←→ move·⌃B s sidebar·⌃B q panes

Faster than the stack you already run

Same 150 MiB fixtures and DOOM-fire harness across hosts.

bench/

Apple M4 Max · 180×50 · median of 5

terminalcat-ascii MB/scat-unicode MB/sdoom-fire fps
zz32898668
ghostty-tip29494650
cmux28586627
kero273××
ghostty9469630
iterm287××
ghostty+tmux4419194
rio2830125

AMD Ryzen 7 7800X3D · 7900 XTX · Wayland · 180×50 · median of 5

terminalcat-ascii MB/scat-unicode MB/sdoom-fire fps
zz645811285
ghostty-tip637611216
rio4871241191
alacritty129911255
ghostty9845653
limux9454618
ghostty+tmux5617201

Crashed or failed to run in a reasonable time

One surface. Many machines.

Add a host over ssh and its shells, agents, and browsers join your local ones in the same window. Everything stays quick, even on a bad link.

docs

Chromium is a pane

Split a real Chromium next to the shell you are working in. Open one with your prefix key or from a script. It answers the same keys, resizes with the same drag, and reattaches on the same URL.

browser

Your config
comes with you.

First launch finds your tmux and Ghostty files and offers to bring them over. The prefix table arrives verbatim, the theme and font as plain values. Neither original is touched.

compat

Install from the cask

App bundle plus zz on your PATH.

brew install --cask demfabris/zz/zz