alpha — v0.1 coming soon
  ██████╗ ██████╗███╗   ███╗██╗   ██╗██╗  ██╗
 ██╔════╝██╔════╝████╗ ████║██║   ██║╚██╗██╔╝
██║     ██║     ██╔████╔██║██║   ██║ ╚███╔╝
██║     ██║     ██║╚██╔╝██║██║   ██║ ██╔██╗
 ╚██████╗╚██████╗██║ ╚═╝ ██║╚██████╔╝██╔╝ ██╗
  ╚═════╝ ╚═════╝╚═╝     ╚═╝ ╚═════╝ ╚═╝  ╚═╝

ccmux — One TUI for every AI coding session

One TUI for every AI coding session — Claude Code, Codex, Gemini CLI, on every device.

Built on tmux, Mosh + Tailscale, and your agent of choice — Claude, Codex, or Gemini. ccmux is the TUI that ties them together.

terminal
$ git clone https://github.com/skzv/ccmux ~/Projects/ccmux
$ cd ~/Projects/ccmux && make bootstrap
$ ccmux # launch the TUI

One dashboard for every session

Live state across every project and every device on your tailnet. Color-coded by state, one key to attach. The daemon holds a caffeinate lock while sessions are active, releases it when they go idle.

ccmux — dashboard
ccmux dashboard showing six AI coding sessions (Claude / Codex / Gemini), a summary panel with 1 active, 5 idle, 0 waiting for input, a Devices panel listing sputnik, sashas-mac-mini and iphone-14-pro-max, and a Claude usage panel with the 5h context window utilization.

Pick the agent. ccmux drives it.

Each project picks its own agent and remembers it. Switch with one keystroke. The dashboard, daemon, and dispatch all follow.

Claude Code
@anthropic-ai/claude-code
Codex
@openai/codex
Gemini CLI
@google/gemini-cli

Stored per-project in .ccmux/agent. Default: Claude. Mobile push categorization via Moshi is Claude-only today; Codex / Gemini get the audible bell (still a generic iOS push).

🔁

Seamless device switching

Start on your laptop, get a push on your iPhone, attach, answer, detach. The session keeps going.

🛰️

Auto-discovered over Tailscale

Install ccmux on a new device and it appears on every other device on your tailnet within seconds. No host config.

Laptop won't sleep

A background daemon holds a caffeinate lock while sessions are active. Close the lid; the agent keeps thinking.

Project notes, terminal-native

A per-project Notes tab with a tree view of docs/, markdown rendered in-pane by Glamour. Ripgrep-backed search; plain markdown on disk is the source of truth.

ccmux — notes
ccmux notes screen showing the docs/ tree on the left — Specs (Vision, Feature Catalog), Architecture (System Design, Notes System, iOS Mobile Setup, Tailscale Networking) — with the selected Feature Catalog markdown rendered on the right.

// never stop shipping.

Try it on your machine

Alpha today, v0.1 coming soon. macOS, Linux, or Windows via WSL2 — Go 1.22+, make bootstrap installs the rest.