A curated, opinionated guide to the cmux ecosystem — the Ghostty-based macOS terminal built for AI coding agents. 190+ community projects and growing. This list covers
manaflow-ai/cmuxonly; for the Go connection multiplexer by soheilhy, see that repo directly.
cmux exposes three primitives that the entire plugin ecosystem builds on: CMUX_WORKSPACE_ID, CMUX_SURFACE_ID, and CMUX_SOCKET_PATH. Every project below uses at least one of them.
brew install --cask cmux # stable
brew install --cask cmux-nightly # nightly| Goal | Go to |
|---|---|
| See agent status at a glance in the sidebar | Sidebar & Status Pills |
| Know how long a task will take | Progress Bars & Estimation |
| Watch agent activity in real time | Sidebar Logs & Activity Feed |
| Get notified when an agent finishes or needs help | Desktop Notifications |
| Run many agents in parallel | Multi-Agent Orchestration |
| Let agents browse the web | Browser Automation |
| Give each agent its own git branch | Worktrees & Workspace Management |
| Recover sessions after a restart | Monitoring & Session Restore |
| Control cmux from my phone or another machine | Remote & Mobile Access |
| Set up a beautiful multi-pane layout | Themes, Layouts & Config |
| Find plugins for a specific agent | By Agent |
| Run cmux on Windows or Linux | Cross-Platform Ports |
| Use something tmux-based instead | Alternatives |
| Build my own plugin | Build Your Own Plugin |
| Read the official docs offline | Documentation |
- Feature Dimensions — primary navigation
- By Agent — secondary navigation
- Cross-Platform Ports
- Alternatives
- Build Your Own Plugin
- Reference — official docs, build infra, community
Repos appear in every section they are relevant to. If a project touches sidebar, notifications, and progress, it shows up in all three. This is intentional — browse by the feature you need, not by where someone decided to file it.
cmux's vertical sidebar is the primary surface for agent feedback. Plugins write status pills — small key-value pairs that appear next to each workspace tab. The best ones update on every lifecycle event so you can see model name, token count, thinking state, and active tool at a glance without switching tabs.
Recommended: yigitkonur/cmux-claude-pro for Claude Code (16 hooks, most complete), kdcokenny/ocx for OpenCode (520 stars, production-proven), HazAT/pi-config for Pi (228 stars, full multi-agent setup).
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Claude Code | |||
| yigitkonur/cmux-claude-pro | Claude Code | Cover the widest lifecycle surface of any Claude Code plugin: wire sixteen hooks for real-time status pills, adaptive progress bars, formatted log entries, git branch metadata, and subagent tracking simultaneously | TypeScript · ★7 |
| azu/cmux-hub | Claude Code | Focuses on post-session review rather than live pills: expose a browser-based diff viewer with inline comments, commit history, and GitHub PR/CI status that other Claude Code plugins omit | TypeScript · ★23 |
| taichiiwamoto-s/cmux-context | Claude Code | Specializes in context-window awareness unlike general status plugins — visualize fill percentage, line counts, and rate limits as color-coded progress bars across all open workspaces simultaneously | Shell |
| tslateman/cmux-claude-code | Claude Code | Adds emoji-labeled tool names to status pills and uses a logarithmic progress curve that accounts for diminishing returns, unlike linear bars in other Shell-based Claude Code plugins | Shell |
| hopchouinard/cmux-plugin | Claude Code | Uniquely bundles Claude-specific restraint rules alongside tab renaming and live progress bars, nudging the agent toward safer behavior rather than just reporting it | Shell |
| eduwass/cru | Claude Code | Targets multi-agent teams rather than single sessions: arrange workers in a labeled grid with a 447-line cmux module, SF Symbol lifecycle phases, and a progress-watcher — unlike single-session Claude Code plugins | TypeScript |
| bocktae80/cmux-pilot | Claude Code | Focuses on session persistence rather than live decoration: manage workspace-to-session mappings and bulk-resume all sessions after a system restart, a recovery workflow absent from other Claude Code plugins | Shell |
| KyleJamesWalker/cc-cmux-plugin | Claude Code | Prioritizes onboarding over decoration: inject the full cmux command reference into every new session and auto-grant cmux CLI permissions, so the agent can use cmux tools without manual setup | — |
| jaequery/cmux-diff | Claude Code | Unlike status-pill plugins, adds a Cursor-style changes panel inside cmux's browser split with syntax-highlighted diffs and AI-generated commit messages as a persistent companion view | TypeScript |
| wrock/wezterm-agent-cards | Claude Code | Targets WezTerm users exclusively: render Claude Code sessions as stacked curses-based status cards, unlike cmux-socket plugins that require the cmux sidebar infrastructure | Python |
| Mirksen/cmux-toolkit | Claude Code | Skips status pills in favour of IDE ergonomics: auto-open edited files in a Vim subpane and toggle a broot file-browser sidebar, turning cmux into a lightweight editor environment | Shell |
| niaeee/cmux_skill | Claude Code | Orchestrate 124 domain specialists via an 802-line skill file with 18 hooks, 28 scripts, and surface watcher detecting IDLE/ERROR/STALL states — the most granular Korean-language sidebar state machine for Claude Code | — |
| guanxm2617/feishu-openclaw-cmux | Claude Code | Bridge cmux sidebar state bidirectionally to Feishu/Lark: poll notifications every 4 seconds, forward as rich Feishu cards, and trigger cmux commands from Feishu messages — the only enterprise-chat integration for sidebar pills | Shell |
| Pi | |||
| HazAT/pi-config | Pi | Covers the broadest Pi surface of any plugin: push model, tokens, active tool, and cost to the sidebar via a built-in multi-agent architecture with dedicated planning, scouting, and review subagents | TypeScript · ★331 |
| w-winter/dot314 | Pi | Unlike single-script Pi plugins, ships as a curated extension collection that adds cost and token stats alongside sidebar state and workspace renaming — focuses on financial visibility other Pi plugins lack | TypeScript · ★95 |
| espennilsen/pi | Pi | Extends Pi with 7 LLM-callable tools for workspace and browser control stored in a version-controlled home directory, adding capabilities beyond sidebar status that no other Pi plugin matches | TypeScript · ★102 |
| sasha-computer/pi-cmux | Pi | Maintains exactly four live pills (model, state, thinking, tokens) via a persistent socket client, and unlike joelhooks/pi-cmux's heartbeat approach, generates context-aware notification summaries using LLM calls | TypeScript · ★14 |
| joelhooks/pi-cmux | Pi | Adds AI-generated session names via Claude Haiku on top of a 3-second heartbeat, and unlike sasha-computer/pi-cmux, includes explicit worker mode for orchestrator-spawned subagents | TypeScript · ★10 |
| dmallory42/pi-cmux | Pi | Launch Pi inside named cmux workspaces and expose slash commands for status pills, progress bars, logs, browser splits, and screen reads, combining workspace setup and live sidebar reporting in one small Pi package | TypeScript |
| stegmannb/pi-agent-cmux | Pi | Track Pi run summaries and push completion status into cmux notifications and sidebar pills, pairing automatic run-end reporting with passive skills that let Pi update status during builds, tests, and deploys | TypeScript |
| Attamusc/pi-cmux | Pi | Differentiates from other Pi plugins with render throttling to prevent sidebar flicker, dynamic progress estimation, and needs-attention alerts that auto-clear after ten seconds | TypeScript |
| sanurb/pi-cmux | Pi | Focuses specifically on safe command execution: adds an explicit allowlist for workspace tools alongside focus-aware debounced macOS notifications, a security layer absent from other Pi plugins | TypeScript |
| simonjohansson/pi-cmux | Pi | Prioritizes simplicity over breadth: expose a single configurable cmux_cli pass-through tool that forwards any argv to cmux, unlike multi-pill Pi plugins that hard-code their event mappings |
TypeScript |
| Marmalade118/gsd-wmux | Pi | Drop-in replacement for GSD/Pi's @gsd/cmux module adding WezTerm as a second multiplexer backend with OSC 1337 user variables and Windows toast notifications — the only Pi plugin supporting dual multiplexer targets |
TypeScript |
| OpenCode | |||
| kdcokenny/ocx | OpenCode | Adds portable configuration profile management on top of sidebar status — the only OpenCode plugin that lets you switch full environment profiles with flash triggers, making it production-proven at 520 stars | TypeScript · ★669 |
| 0xCaso/opencode-cmux | OpenCode | Unlike kdcokenny/ocx's profile focus, drives progress from todo completion counts and scopes unread log marks per workspace, giving per-project visibility across parallel OpenCode sessions | TypeScript · ★42 |
| Attamusc/opencode-cmux | OpenCode | Prioritizes performance over features: delivers ~1-2ms socket latency with render throttling and log rate-limiting, unlike Shell-based OpenCode plugins that lack backpressure controls | TypeScript |
| tully-8888/opencode-cmux-notify-plugin | OpenCode | Focuses on subagent lifecycle tracking alongside desktop notifications for questions, permissions, and errors — unlike Attamusc/opencode-cmux, does not throttle and targets completeness over performance | Shell |
| Joehoel/opencode-cmux | OpenCode | Uniquely integrates external project management services: polls Azure DevOps and Jira via Zsh to inject ticket and build status as additional sidebar pills alongside standard OpenCode status | Shell |
| Copilot | |||
| Attamusc/copilot-cmux | Copilot | Bridge Copilot CLI events to the cmux sidebar via socket JSON-RPC, covering status pills, progress bars, log entries, and desktop notifications — the only dedicated Copilot sidebar plugin in the list | TypeScript |
| Amp | |||
| block/cmux-amp | Amp | Wire the official Amp Plugin API to the cmux sidebar with SF Symbol icons for agent state — the only first-party Amp plugin in the list, built and maintained by Block | TypeScript |
| Multi-Agent / Agnostic | |||
| multiagentcognition/cmux-agent-mcp | Multi | Expose 81 MCP tools spanning agent spawning, sidebar metadata, notifications, browser automation, and session recovery — the largest MCP surface area of any plugin here, unlike EtanHey/cmuxlayer's focused 22-tool set | TypeScript |
| EtanHey/cmuxlayer | Multi | Expose 22 tightly scoped MCP tools for sidebar updates, progress, split creation, and screen reading — smaller and more auditable than cmux-agent-mcp's 81-tool suite, while still covering multi-agent orchestration | TypeScript · ★5 |
| gonzaloserrano/streamdeck-cmux | — | Extends status visibility beyond the screen entirely: mirror workspace state, progress bars, and notification badges onto Elgato Stream Deck hardware buttons — the only physical-hardware integration in the list | TypeScript · ★14 |
| Minoo7/cmux-hooks | Multi | Fan out cmux-aware hooks to SSH hosts, Hermes, and omp/Pi, then relay agent activity back as local notifications and sidebar badges through a stdlib helper rather than per-agent hand-written scripts | Shell |
Long-running agent tasks need visible progress. cmux's sidebar supports progress bars that fill from 0-100%. The best plugins estimate completion dynamically — some use logarithmic curves, others count completed todo items. Without progress bars, you are left guessing whether an agent is stuck or just thinking hard.
Recommended: yigitkonur/cmux-claude-pro for adaptive progress estimation, HazAT/pi-interactive-subagents for cross-multiplexer live TUI progress, 0xCaso/opencode-cmux for todo-driven progress tracking.
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Claude Code | |||
| hummer98/using-cmux | Claude Code | Teach Claude Code to own and drive sidebar progress bars as documented skill within a broader sub-agent lifecycle curriculum, making progress control an explicit agent capability rather than an implicit side-effect | Shell · ★33 |
| hummer98/cmux-team | Claude Code | Display independent real-time progress bars for conductor and each worker sub-agent in a task-queue daemon, letting you distinguish which tier of the hierarchy is blocked | TypeScript · ★10 |
| yigitkonur/cmux-claude-pro | Claude Code | Drive adaptive progress bars from sixteen lifecycle hooks, weighting tool execution patterns and session state to produce a continuously refined completion estimate rather than a fixed linear fill | TypeScript · ★7 |
| tslateman/cmux-claude-code | Claude Code | Render a logarithmic progress bar that deliberately slows near 100% to reflect the diminishing-returns reality of long-running Claude Code sessions | Shell |
| hopchouinard/cmux-plugin | Claude Code | Bundle live progress bars with auto tab renaming and completion notifications, covering the three most-wanted sidebar features in a single Shell hook file | Shell |
| taichiiwamoto-s/cmux-context | Claude Code | Repurpose the progress bar slot to show context window fill percentage with color-coded urgency bands, giving a resource-pressure signal instead of a task-completion estimate | Shell |
| Pi | |||
| Attamusc/pi-cmux | Pi | Estimate progress dynamically from Pi lifecycle events while enforcing render throttling so rapid tool bursts do not cause sidebar flicker | TypeScript |
| Marmalade118/gsd-wmux | Pi | Relay progress bar state from GSD/Pi to both cmux and WezTerm backends simultaneously via OSC 1337 user variables, enabling dual-multiplexer progress visibility from a single plugin | TypeScript |
| dmallory42/pi-cmux | Pi | Give Pi a /cmux progress command and lifecycle-driven status updates inside cmux workspaces, so project presets, browser panes, and sidebar progress all share the same package configuration |
TypeScript |
| OpenCode | |||
| 0xCaso/opencode-cmux | OpenCode | Track todo-item resolution as the progress signal — the bar advances each time a checklist item resolves, giving concrete task-based completion rather than an inferred estimate | TypeScript · ★42 |
| Attamusc/opencode-cmux | OpenCode | Combine tool-execution and file-edit counts into a blended progress estimate, capping update frequency with rate limiting to prevent sidebar jitter under fast OpenCode sessions | TypeScript |
| Joehoel/opencode-cmux | OpenCode | Update the sidebar progress bar from OpenCode events alongside Azure DevOps and Jira status pills, making it the only plugin that co-renders external ticket state next to local task progress | Shell |
| Copilot | |||
| Attamusc/copilot-cmux | Copilot | Map discrete Copilot CLI tool-execution stages to fixed progress increments, producing a step-function bar that reflects which phase of the agent pipeline is active | TypeScript |
| Multi / Other | |||
| HazAT/pi-interactive-subagents | Multi | Render elapsed time and live per-agent progress in a TUI widget while sub-agents execute in dedicated panes across cmux, tmux, zellij, or WezTerm — the widest multiplexer coverage of any progress plugin | TypeScript · ★429 |
| EtanHey/cmuxlayer | Multi | Expose progress indicator MCP tools as part of a 22-tool suite, letting any MCP-capable agent write progress state without being wired to a specific agent's lifecycle hooks | TypeScript · ★5 |
| multiagentcognition/cmux-agent-mcp | Multi | Embed progress tracking inside an 81-tool MCP server designed for multi-agent workspace orchestration, making progress updates composable with spawning, routing, and session-recovery tools | TypeScript |
| gonzaloserrano/streamdeck-cmux | — | Render progress bars physically on Elgato Stream Deck buttons by polling the cmux socket — the only plugin to project sidebar state onto dedicated hardware rather than a terminal column | TypeScript · ★14 |
The sidebar can show scrolling log entries — timestamped messages about what the agent is doing. Logs are essential for debugging: you can see which tools were called, which files were edited, and where errors occurred without switching to the agent's pane. The entries here differ meaningfully in what they capture, how they handle high-frequency events, and whether they correlate logs to external systems.
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Claude Code | |||
| yigitkonur/cmux-claude-pro | Claude Code | Emit formatted sidebar log entries for all sixteen lifecycle hooks — the only Claude Code plugin that attaches git branch and commit metadata to each entry, making logs navigable as a lightweight session audit trail | TypeScript · ★7 |
| claude-studio/claude-studio | Claude Code | Parse JSONL transcripts from ~/.claude/projects offline to render cost, token, and session statistics on a standalone dashboard rather than writing live log entries — suited for post-session analysis, not real-time monitoring |
TypeScript |
| Pi | |||
| simonjohansson/pi-cmux | Pi | Log Pi tool executions to the sidebar feed while also exposing a single passthrough cmux_cli tool that lets Pi issue any cmux command directly, making the agent itself a first-class log author |
TypeScript |
| dmallory42/pi-cmux | Pi | Add /cmux log and lifecycle log writes to Pi sessions launched through cmux, making the same package handle project bootstrap, browser setup, sidebar status, and activity-feed breadcrumbs |
TypeScript |
| OpenCode | |||
| 0xCaso/opencode-cmux | OpenCode | Maintain a workspace-scoped event timeline with unread marks — entries persist across pane switches so you can return to a workspace and immediately see what happened while you were away | TypeScript · ★42 |
| Attamusc/opencode-cmux | OpenCode | Apply rate limiting to log writes so high-frequency tool bursts produce a readable digest rather than a flooding stream, prioritizing signal over completeness during intensive OpenCode sessions | TypeScript |
| Joehoel/opencode-cmux | OpenCode | Interleave OpenCode agent event logs with Azure DevOps pipeline and Jira ticket updates in a single sidebar feed, correlating local agent work with external project state | Shell |
| Copilot | |||
| Attamusc/copilot-cmux | Copilot | Log the full Copilot prompt-submission → tool-execution → completion arc as discrete sidebar entries, providing a per-session breadcrumb trail of every agent action via socket JSON-RPC | TypeScript |
| Multi / Other | |||
| multiagentcognition/cmux-agent-mcp | Multi | Produce structured log output through an 81-tool MCP server so any orchestrating agent can write diagnostic entries to the sidebar without being bound to a single agent's event lifecycle | TypeScript |
When an agent finishes a task, hits an error, or needs permission, you want to know immediately — even if cmux is behind another window. Plugins use cmux notify or OSC 777 escape sequences to fire native macOS notifications. The best ones are focus-aware: they stay quiet when you are already looking at the workspace.
Recommended: kdcokenny/opencode-notify for OpenCode (standalone, 127 stars), sasha-computer/pi-cmux for Pi (context-aware summaries).
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Claude Code | |||
| yigitkonur/cmux-claude-pro | Claude Code | Fire targeted notifications on completion, errors, and attention events; uniquely pairs notifications with a 16-hook sidebar that tracks live agent state — the only Claude Code notifier with deep sidebar integration | TypeScript · ★7 |
| hummer98/using-cmux | Claude Code | Teach notification patterns as reusable sub-agent workflow skills rather than hooks; uniquely treats notification behavior as a learnable Claude Code skill library, not an event handler | Shell · ★33 |
| hopchouinard/cmux-plugin | Claude Code | Fire completion notifications alongside tab renaming and live progress bars; uniquely bundles three UX concerns (notify + rename + progress) in a single shell plugin rather than notifications alone | Shell |
| tslateman/cmux-claude-code | Claude Code | Send notifications on completion or attention events across five lifecycle hooks; leaner than hopchouinard's bundle — pure notification focus with no sidebar or tab side-effects | Shell |
| Th3Sp3ct3R/cmux-claude-agents | Claude Code | Send completion notifications specifically when redirected sub-agent panes finish; uniquely scoped to redirected-pane topology rather than the primary session | Shell |
| KyleJamesWalker/cc-cmux-plugin | Claude Code | Route notifications through cmux notify with auto-granted CLI permissions pre-configured; distinguishes itself by solving the permission-prompt problem so notifications fire silently on first run |
— |
| rappdw/zen-term | Claude Code | Forward OSC 777 rings from a remote DGX Spark to the local MacBook running cmux via Mosh; uniquely solves the remote-GPU-to-local-desktop notification gap — no other entry covers cross-host forwarding | Shell |
| eduwass/cru | Claude Code | Fire lifecycle-phase notifications rendered with SF Symbols inside an agent team grid; uniquely integrates notification glyphs into a multi-agent grid view rather than standalone alerts | TypeScript |
| guanxm2617/feishu-openclaw-cmux | Claude Code | Forward cmux notifications as rich Feishu/Lark cards every 4 seconds and accept Feishu-originated commands back into cmux — the only plugin routing desktop notifications through an enterprise messaging platform | Shell |
| Pi | |||
| HazAT/pi-config | Pi | Deliver notifications as part of a full multi-agent architecture with cost tracking and subagent coordination; the most feature-complete Pi config — notifications are one layer of a production-grade orchestration stack | TypeScript · ★331 |
| w-winter/dot314 | Pi | Send attention notifications when Pi needs input, alongside sidebar state sync and token stats; uniquely surfaces token spend next to every alert so cost is visible at the moment attention is requested | TypeScript · ★95 |
| bjacobso/pimux | Pi | Notify as part of a task state machine managing parallel Pi agents across worktrees; uniquely ties notification events to worktree lifecycle transitions, not just session-level hooks | TypeScript |
| joelhooks/pi-cmux | Pi | Send native macOS notifications combined with attention-cycle tab indicators and auto-generated session names; uniquely auto-names sessions from task context so notifications carry a human-readable label | TypeScript · ★10 |
| dmallory42/pi-cmux | Pi | Combine Pi workspace presets with notification settings, letting each project decide whether completions, browser previews, and pane layouts should be opened together rather than managed by separate helper scripts | TypeScript |
| stegmannb/pi-agent-cmux | Pi | Summarize every Pi run into a cmux notification, including changed files, searches, shell commands, duration, and error state, giving run-end alerts more context than plain completion hooks | TypeScript |
| Attamusc/pi-cmux | Pi | Show needs-attention banners that auto-clear after ten seconds with render throttling; unlike joelhooks' persistent indicators, alerts self-dismiss to avoid cluttering the notification center | TypeScript |
| sanurb/pi-cmux | Pi | Deliver focus-aware debounced macOS notifications alongside live sidebar status pills; uniquely suppresses rapid-fire alerts via debounce — the only Pi notifier with explicit debounce logic | TypeScript |
| sasha-computer/pi-cmux | Pi | Provide context-aware notifications that summarize agent actions using LLM-callable tools for targeted alerts; uniquely lets the agent itself decide when and what to notify — no static hook triggers | TypeScript · ★14 |
| Marmalade118/gsd-wmux | Pi | Deliver notifications through both cmux and WezTerm backends simultaneously with Windows toast support via OSC 1337 — the only Pi notification plugin targeting dual multiplexer environments | TypeScript |
| OpenCode | |||
| kdcokenny/opencode-workspace | OpenCode | Bundle OS notifications inside a 16-component harness with planning, delegation, and worktree plugins; the most expansive OpenCode setup — notifications are one piece of a full orchestration suite | TypeScript · ★402 |
| kdcokenny/opencode-notify | OpenCode | Deliver native OS notifications on completion, errors, and input-needed events with click-to-foreground, quiet hours, and custom sounds; the only standalone OpenCode notifier with quiet-hours scheduling and sound customization | TypeScript · ★184 |
| 0xCaso/opencode-cmux | OpenCode | Notify on permission requests and subagent activity scoped per workspace with unread marks; uniquely tracks unread notification state per workspace — alerts persist until explicitly acknowledged | TypeScript · ★42 |
| mspiegel31/opencode-cmux | OpenCode | Push desktop notifications on idle or error alongside subagent viewer panes and browser tools; distinguishes itself by pairing notification events with visible subagent viewer panes in the same plugin | TypeScript |
| Joehoel/opencode-cmux | OpenCode | Send desktop notifications on permission requests, errors, and completions; the lightest OpenCode notifier — shell-only, no extra components, useful as a copy-paste starting point | Shell |
| tully-8888/opencode-cmux-notify-plugin | OpenCode | Notify on questions, permissions, retries, and finish events with automatic stale-state clearing; uniquely handles stale-state cleanup on each trigger, preventing ghost notifications from aborted runs | Shell |
| Copilot | |||
| tadashi-aikawa/copilot-plugin-notify | Copilot | Emit OSC 777 escape sequences for tool-use approvals and agent-stop alerts with configurable allow/deny rules; uniquely exposes an allow/deny rule set so noisy approval events can be filtered before the notification fires | Shell |
| Attamusc/copilot-cmux | Copilot | Translate Copilot CLI socket JSON-RPC events into desktop notifications; lower-level than tadashi-aikawa's approach — operates on raw RPC messages rather than named hook events | TypeScript |
| Multi / Other | |||
| aannoo/hcom | Multi | Deliver cross-agent notifications and file-edit collision detection across Claude Code, Gemini CLI, Codex, and OpenCode in a single Rust daemon; the only entry covering four agents simultaneously and the only one that catches edit collisions | Rust · ★252 |
| itsmaleen/cmux-companion | — | Mirror cmux notifications to an iPhone via a Go bridge server over LAN WebSocket; uniquely extends notifications off the Mac entirely — no other entry targets a secondary device | Go / Swift · ★5 |
| richardhowes/cmux-mobile | — | Push APNs notifications from cmux to an iOS companion app over Tailscale with full workspace listing and ANSI terminal rendering — uniquely provides native mobile push as the delivery channel | TypeScript |
| dd7200/pomo-tui | — | Fire cmux notify on Pomodoro phase changes from a terminal TUI timer — the only standalone productivity tool using cmux notifications as its alert mechanism |
Go |
| Minoo7/cmux-hooks | Multi | Install cmux notification hooks across SSH hosts and local agent runtimes from one fanout script, then route Hermes and omp/Pi events through the same helper for consistent alert formatting | Shell |
| Michael-Z-Freeman/antigravity-cmux-notify | Antigravity | Wire Google Antigravity CLI hooks to cmux notifications through Antigravity's hooks.json contract, with stdout-safe JSON handling so the notification hook does not invalidate the agent runtime |
Shell |
Running multiple agents in parallel is cmux's superpower. An orchestrator agent splits panes, launches workers, sends them tasks, and monitors their output via read-screen. The best frameworks handle the full lifecycle: spawn, dispatch, poll for completion, collect results, and tear down. This section includes both ready-to-use frameworks and skill files that teach your agent how to orchestrate.
Recommended: manaflow-ai/manaflow (997 stars, broadest agent coverage across VS Code workspaces), HazAT/pi-interactive-subagents (251 stars, works across cmux/tmux/zellij), dagster-io/erk for plan-oriented workflows with PR automation.
Frameworks
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Multi-agent | |||
| Yeachan-Heo/oh-my-claudecode | Claude Code | Enable full autopilot mode with team pipelines, a tri-model advisor (Claude+Codex+Gemini), and tmux worker panes — the highest-starred orchestration framework by a wide margin | TypeScript · ★32659 |
| manaflow-ai/manaflow | Multi | Spawn Claude Code, Codex, Gemini, and other agents in parallel VS Code workspaces with git diff view and one-click PR creation — uniquely built around VS Code rather than terminal multiplexers | TypeScript · ★1033 |
| HazAT/pi-interactive-subagents | Multi | Spawn async sub-agents in dedicated panes across cmux, tmux, zellij, or WezTerm with a live TUI progress widget — the only framework with first-class multiplexer portability built in | TypeScript · ★429 |
| aannoo/hcom | Multi | Connect agents across terminals with cross-agent messaging, file-collision detection, and desktop notifications for Claude Code, Gemini, Codex, and OpenCode — focuses on safe concurrent file access rather than pane topology | Rust · ★252 |
| untra/operator | Multi | Present a kanban TUI managing agents (Claude/Codex/Gemini) across projects with cmux as one of three multiplexer backends — uniquely treats cmux as a pluggable transport rather than a hard dependency | Rust · ★17 |
| rjwittams/flotilla | Multi | Correlate branches, PRs, issues, and terminal agents across repos into unified work items via a TUI dashboard — addresses multi-repo tracking rather than single-repo task dispatch | Rust |
| ttalkkag/cmux-agent | Multi | Broker messages between controller, orchestrator, and worker cmux tabs with JSON artifact routing via file-watching and send_text — the only plugin using SQLite as a control plane for tab coordination | Python · ★5 |
| dongsik93/crosstalk | Multi | Fan one prompt into visible Claude, Codex, and Antigravity panes, collect deterministic agree/disagree markers, and support co-work assignments backed by temporary files instead of hidden broker state | Shell |
| 0xNekr/cmux-bus | Multi | Coordinate adjacent cmux panes through an append-only JSONL message bus with file ownership claims and escalation records, giving agents a lightweight audit trail without a daemon, MCP server, or database | Shell |
| Claude Code | |||
| dagster-io/erk | Claude Code | Create implementation plans from AI, execute each in an isolated git worktree, and ship via automated PR submission — uniquely enforces full plan-execute-ship cycle with worktree isolation per task | Python · ★81 |
| hummer98/cmux-team | Claude Code | Run a task-queue daemon that spawns conductor and worker sub-agents in visible cmux split panes with a TUI dashboard — differs from erk by operating entirely in-terminal with no git-worktree isolation | TypeScript · ★10 |
| eduwass/cru | Claude Code | Arrange agent team workers into a labeled grid across tmux, Ghostty, or cmux — focused purely on layout templating rather than task dispatch or lifecycle management | TypeScript |
| Islanders-Treasure0969/claude-pilot | Claude Code | Provide a browser-based dev cockpit with declarative workflow.yml gates, substep tracking, and Autopilot via cmux send — uniquely exposes a Ctrl+K command palette for manual override during automated runs |
JavaScript |
| alevental/cccp | Claude Code | Execute YAML-based deterministic pipelines with Plan-Generate-Evaluate loops, a TypeScript state machine, cmux split-pane dashboard, and MCP approval gates — enforces repeatable multi-step workflows | TypeScript |
| Ridgeio/swarm | Claude Code | Coordinate agents across terminals via cmux send with /join-swarm registration, SQLite persistence, and UserPromptSubmit hooks — focused on persistent swarm awareness rather than ephemeral pane dispatch |
TypeScript |
| mangledmonkey/devmux | Claude Code | Implement a master-worker pattern using worktrees, cmux workspaces, and Agent Teams (lead+tester+reviewer+security) with deterministic port allocation — uniquely assigns fixed ports per agent role | Shell |
| albertlieyingadrian/cmux-multiplexer | Claude Code | Teach one Claude Code session to spawn, brief, and monitor child workspaces over cmux send and read-screen, with each worker isolated in its own directory, git worktree, and MCP context |
Python |
| TimoKruth/cmux-t3code | Multi | Embed t3code AI coding GUI as per-workspace chat panels via sidecar Node.js servers on unique ports — uniquely grafts an external coding GUI into each cmux workspace | — |
| Pi | |||
| burggraf/pi-teams | Pi | Turn one Pi agent into a coordinated team with specialist teammates, shared task board, direct messaging, and plan-approval gates — Pi-native alternative to general multi-agent frameworks | TypeScript · ★91 |
| bjacobso/pimux | Pi | Manage parallel Pi agents via an Effect service with per-task workspaces, sidebar state machine, and diff review workflow — adds typed Effect-based orchestration on top of Pi's native agent model | TypeScript |
| OpenCode | |||
| kdcokenny/opencode-workspace | OpenCode | Bundle 16 components for multi-agent orchestration with plan and build orchestrators, specialist agents, and MCP servers — the most comprehensive starter kit purpose-built for OpenCode | TypeScript · ★402 |
MCP Servers
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Multi-agent | |||
| multiagentcognition/cmux-agent-mcp | Multi | Expose 81 tools covering full agent hierarchy, grid launchers, bulk dispatch, and session recovery — broadest tool surface for agents that need granular programmatic control over cmux | TypeScript |
| EtanHey/cmuxlayer | Multi | Provide 22 focused tools via sub-millisecond socket transport with CLI fallback and an agent lifecycle engine — trades breadth for latency, optimized for high-frequency agent polling loops | TypeScript · ★5 |
Orchestration Skills (teach your agent how to orchestrate)
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Claude Code | |||
| hummer98/using-cmux | Claude Code | Teach visible sub-agent lifecycle patterns — split, send, read-screen, status, notifications, and recovery — the most complete reference for Claude Code agents new to cmux orchestration |
Shell · ★33 |
| ygrec-app/supreme-leader-skill | Claude Code | Plan subtasks, spawn a 2–8 worker grid, monitor via read-screen polling, review deliverables, and dispatch fix iterations — covers the full orchestrator loop in a single skill |
Markdown |
| umitaltintas/cmux-agent-toolkit | Claude Code | Teach fan-out execution with spawn, then synchronize via wait-for/wait-for --signal signals and explicit pane topology management — unique focus on barrier-style synchronization primitives |
Markdown |
| baixianger/claude-orchestration-in-cmux | Claude Code | Coordinate parallel work via pane delegation with cmux send/read-screen through worktrees — emphasizes git-worktree isolation as the coordination boundary rather than shared workspace |
Markdown |
| Th3Sp3ct3R/cmux-claude-agents | Claude Code | Intercept Agent tool calls via a PreToolUse hook and redirect them to visible cmux split panes — hook-based approach means zero changes to the agent's own prompts or skills |
Shell |
| ygrec-app/offload-task-skill | Claude Code | Offload a single task to a dedicated split pane with an autonomous worker, preserving main session context and token budget — minimal single-task delegation rather than full grid orchestration | Markdown |
| manaflow-ai/cmux-skills | Multi | Provide installable cmux skills for any Agent Skills-compatible runtime, covering CLI control, settings, browser automation, artifacts, workspace refs, and customization from one maintained public source | Python |
| bocktae80/cmux-pilot | Claude Code | Manage workspace-to-session mappings with /cmux-ws commands and bulk session resume after restarts — addresses persistent session bookkeeping that other skills leave to the user |
Shell |
| alaasdk/cmux-ctl | Claude Code | Display a real-time TUI dashboard of all active workspaces with keyboard-driven agent launching and direct input — control-plane view complementing skills that focus on task dispatch | Python |
| jeremyeder/sisi-cmux | Claude Code | Auto-discover projects and build tmux workspaces with one-key Claude Code integration and checkpoint save/restore — project-bootstrap companion rather than a runtime orchestration skill | TypeScript |
| halindrome/cmux-tmux-mapping-for-cc | Claude Code | Detect tmux vs cmux at runtime and transparently route all panel operations through the correct backend — enables skills written for one multiplexer to work unchanged on the other | Shell |
| mikasalikh/cmux-wf | Claude Code | Bundle a PM orchestrator script with SKILL.md that reads PRDs and distributes work to agents via the cmux socket API — the only skill pairing project management with cmux dispatch | Shell · ★6 |
| sdgranger/will-public-claude | Claude Code | Ship a plugin marketplace package with five skills: cmux detection, cmux-browser, cmux-parallel, cmux-run, and skillify (auto-generate SKILL.md) — the only multi-skill marketplace bundle | Shell |
| ogallotti/cmux-tmux-shim | Claude Code | Translate tmux commands to cmux equivalents, enabling --teammate-mode tmux (Agent Teams) inside cmux by mapping pane IDs to surface IDs — solves the tmux-compatibility gap for agent team mode |
Shell |
| KyubumShin/cmux-skills | Claude Code | Provide three skills: /cmux-control for remote session control with 8-state detection, /cmux-get for context import, and /cmux-md-preview for interactive Markdown checklists — granular per-feature skill separation |
JavaScript |
| take0x/cmux-skills | Claude Code | Offer two skills: self-referential cmux docs lookup (live cmux -h + scraped cmux.com) and /pane reader for other terminals — the only skill that dynamically scrapes upstream documentation at runtime |
Shell |
| niaeee/cmux_skill | Claude Code | Orchestrate 124 domain specialists via an 802-line Korean skill with 18 hooks, 28 scripts, and surface watcher detecting IDLE/ERROR/STALL — the most exhaustive single-file orchestration skill by line count | — |
| H-Noguchi-josys/cmux-split-plugin | Claude Code | Provide a /split skill that forks current conversation into a new cmux pane via cmux new-split right + claude -c — minimal single-command conversation forking |
Shell |
| Multi-agent | |||
| wangyuxinwhy/agent-skills | Multi | Deliver framework-agnostic skills symlinked into Claude Code, Codex, Coco/Trae, or OpenCode with cmux orchestration and Feishu/Lark CLI integration — the only skill set targeting five agent runtimes | — |
| basedcorp99/claude-worktree-zsh | Multi | Provide Zsh helpers launching 5 agents (Claude/Codex/Droid/OpenCode/Pi) in worktrees with cwl dashboard and cwm merge-back — the widest agent coverage of any worktree helper |
Shell |
| Pi | |||
| HazAT/pi-config | Pi | Configure a multi-agent architecture with cmux-visible subagents for planning, scouting, coding, and reviewing — the canonical reference for role-specialized Pi agent teams | TypeScript · ★331 |
| w-winter/dot314 | Pi | Provide branch-out workflows, a command center, and multi-repo project navigation for Pi agents — extends Pi's scope to cross-repo orchestration that single-repo skills cannot address | TypeScript · ★95 |
| espennilsen/pi | Pi | Maintain 22 extensions including subagent delegation and project context switching — a general-purpose Pi config that bundles orchestration alongside unrelated productivity extensions | TypeScript · ★102 |
| joelhooks/pi-cmux | Pi | Enforce a worker mode in orchestrator-spawned agents to prevent fork bombs — solves a single critical safety problem that every other Pi orchestration skill ignores | TypeScript · ★10 |
| sanurb/pi-cmux-workflows | Pi | Add slash commands for splitting panes with new agent sessions and handing off task context between splits — lightweight entry point for Pi users who want manual-trigger orchestration | TypeScript |
| Multi-agent | |||
| owizdom/context-brdige-for-cmux | Multi | Run a background daemon that extracts agent context, persists it to SQLite, and auto-injects handoff briefs into new sessions — the only skill addressing cold-start context loss across session boundaries | Go |
| meengi07/cmux-agent-observer-skill | Multi | Launch visible worker panes for Codex and OpenCode with optional tmux wrapping and a browser helper — extends cmux orchestration to non-Claude agents that lack native cmux support | Shell |
cmux embeds a WebKit browser pane that agents can control via CLI. Plugins use cmux browser for navigation, DOM interaction, screenshots, form filling, and JavaScript evaluation. The best ones expose the full 40+ subcommand surface. This is how agents can visually verify their work, run E2E tests, or display rich content alongside the terminal.
Recommended: azu/cmux-hub for the highest-starred diff viewer with CI status (★15), sasha-computer/pi-cmux for the best all-round Pi browser toolkit (★14), jasonraz/cmux-browser-mcp for MCP-based browser control (43 tools).
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Claude Code | |||
| azu/cmux-hub | Claude Code | Open a syntax-highlighted diff viewer in a browser split with inline review comments and live GitHub CI status alongside the terminal — the only browser plugin combining code review and CI feedback in one pane | TypeScript · ★23 |
| jasonraz/cmux-browser-mcp | Claude Code | Expose 43 discrete MCP tools covering navigation, DOM clicking, form filling, screenshots, JS eval, and network inspection — the widest MCP tool surface of any browser plugin | JavaScript · ★8 |
| jaequery/cmux-diff | Claude Code | Show Shiki-powered syntax-highlighted diffs in a browser split with multi-file selection and AI-generated commit message suggestions — distinct from azu/cmux-hub by pairing diff viewing with commit authoring | TypeScript |
| hashangit/cmux-skill | Claude Code | Control browser elements by stable ref via snapshot --interactive, applying a notification decision matrix to choose alert vs. pane — the only skill built around element-ref stability rather than XPath/CSS selectors |
Shell |
| RyoHirota68/cmux-pencil-preview | Claude Code | Auto-export Pencil design files to PDF and hot-reload them in the browser pane on each save — purpose-built for design iteration loops, not general web content | Shell |
| hopchouinard/cmux-plugin | Claude Code | Open browser splits for UI verification and pair them with tab renaming, animated progress bars, and audio completion notifications — uniquely combines visual verification with rich status feedback | Shell |
| mangledmonkey/cmux-skills | Claude Code | Teach Claude Code browser automation across four auto-syncing skill files covering form filling, screenshots, and debug window capture — structured as a multi-file skill suite rather than a single monolithic document | Shell |
| Stealinglight/cmux-claude-code-skill | Claude Code | Document browser, CLI, and shortcuts references with concrete Python socket API examples for WebKit automation — the only skill that bridges the cmux Python socket API into browser control | Shell |
| goddaehee/cmux-claude-skill | Claude Code | Map all 40+ browser subcommands alongside workspace navigation and a tmux-to-cmux migration table, written in Korean — uniquely serves developers migrating existing tmux muscle memory | Markdown |
| mikecfisher/cmux-skill | Claude Code | Cover browser automation as part of a broad CLI taxonomy that uniquely documents capture-pane internals and CMUX_SOCKET_PASSWORD authentication — more reference than tutorial |
Markdown |
| monzou/mo-cmux | Claude Code | Preview Markdown files in a browser split with live-reload on save and fuzzy filename matching — focused narrowly on Markdown rendering rather than general browser control | Shell · ★5 |
| hoonkim/cmux-skills-plugin | Claude Code | Enable browser automation and pane control via cmux tree, read-screen, and send, with all documentation in Korean — distinct by emphasizing pane-tree introspection commands not covered in English-language skills |
Markdown |
| sdgranger/will-public-claude | Claude Code | Include a cmux-browser skill in a 5-skill marketplace package that also covers parallel execution and auto-skill generation — distinct from single-purpose browser plugins by bundling browser alongside orchestration | Shell |
| Islanders-Treasure0969/claude-pilot | Claude Code | Render a browser-based dev cockpit with declarative workflow gates and Autopilot via cmux send — uniquely provides a visual dashboard for monitoring multi-step browser-driven agent workflows |
JavaScript |
| alankyshum/semantic-diff | Claude Code | Display a terminal TUI diff viewer that uses AI to semantically group git hunks with SIGUSR1 auto-refresh from Claude Code edits and Mermaid rendering in Ghostty/cmux — semantic grouping distinguishes it from line-level diff tools | Rust |
| RyoHirota68/difit-cmux | Claude Code | Auto-reload the difit web diff viewer in a cmux browser pane triggered by Claude Code rules after file changes with per-workspace port isolation — purpose-built for continuous visual diff monitoring | Shell |
| KyubumShin/cmux-skills | Claude Code | Expose /cmux-md-preview for interactive Markdown checklists in a browser pane alongside remote session control and context import skills — unique in treating the browser pane as an interactive checklist surface |
JavaScript |
| EverybodyBusiness/cmux-browser-first | Claude Code | Force cmux browser tools to always be prioritized via three slash commands (/browse, /browse-check, /browse-compare) — the only plugin that elevates browser to the default tool choice in Korean |
— |
| TimoKruth/cmux-t3code | Multi | Embed a t3code AI coding GUI in cmux browser panes via sidecar Node.js servers on unique ports — uniquely grafts an external coding interface into the browser surface | — |
| Pi | |||
| sasha-computer/pi-cmux | Pi | Give Pi LLM-callable browser automation tools alongside sidebar notification pills and context-aware inline notifications — the most starred Pi browser plugin and the only one with a native sidebar pill UI | TypeScript · ★14 |
| sanurb/pi-cmux-browser | Pi | Provide Pi with typed browser automation actions (click, fill, screenshot, snapshot) plus a dedicated spawnable web-dev subagent — unique in offering a purpose-built subagent for frontend development tasks | TypeScript |
| storelayer/pi-cmux-browser | Pi | Equip Pi with dual browser modes: cmux in-app WebKit for visual debugging and Playwright for headless CI workflows — the only Pi plugin that lets the agent switch between visual and headless modes per task | JavaScript |
| mastertyko/pi-cmux-preview | Pi | Render assistant Markdown responses as styled HTML in a cmux browser pane with inline terminal screenshots and file previews — turns the browser pane into a rich conversation renderer rather than a web browser | TypeScript |
| sanurb/pi-cmux-workflows | Pi | Display ringi-powered code reviews in cmux browser panes alongside split-pane and agent handoff slash commands — the only Pi plugin integrating a structured review workflow into the browser pane | TypeScript |
| dmallory42/pi-cmux | Pi | Open project-specific browser splits from Pi workspace presets and expose /cmux browser commands for URL, reload, and snapshot actions, keeping visual debugging in the same package as workspace launch |
TypeScript |
| OpenCode | |||
| doublezz10/figure-viewer | OpenCode | Display scientific figures in a cmux browser pane with lightbox zoom, freshness timestamps, and auto-refresh — purpose-built for data-science and research workflows where figures change frequently | JavaScript |
| mspiegel31/opencode-cmux | OpenCode | Expose optional cmux browser tools to OpenCode's AI agent alongside subagent viewer panes and desktop notifications — the primary OpenCode integration offering agent-to-agent viewer handoff |
TypeScript |
| Multi / Other | |||
| darkspock/cmux-skill | Multi | Teach agents the full cmux browser surface covering DOM interaction, JS eval, cookies, tab management, dialogs, and frames — the most starred standalone skill document for browser subcommands |
Markdown · ★7 |
| multiagentcognition/cmux-agent-mcp | Multi | Include browser automation as one capability among 81 MCP tools for multi-agent workspace orchestration — browser control is a supporting feature within a much larger multi-agent coordination toolkit | TypeScript |
| EtanHey/cmuxlayer | Multi | Provide browser control tools alongside 22 other MCP tools for workspace management — a compact multi-tool server where browser access complements pane and session management rather than standing alone | TypeScript · ★5 |
| gomipapa/cmux-sidecar | Multi | Drop a code-server sidecar beside Claude Code or Codex in a cmux split, installing only the adapter scripts while leaving code-server installation explicit and user-controlled | Shell |
Git worktrees give each agent an isolated copy of the repository on a separate branch — no merge conflicts, no stepping on each other's changes. The best plugins create a worktree, open a cmux workspace for it, launch an agent inside, and clean up when the branch merges. This is the foundation for safe parallel development.
Recommended: craigsc/cmux (477 stars, tmux-based gold standard for worktree UX), kdcokenny/opencode-worktree (392 stars, most popular OpenCode option), aschreifels/cwt for Claude Code with ticket integration.
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Claude Code | |||
| craigsc/cmux | Claude Code | Wrap the full git worktree lifecycle — create, switch, merge, and teardown — into single shell commands with tab completion and shared git history; sets the UX bar every other plugin is measured against | Shell · ★525 |
| aschreifels/cwt | Claude Code | Generate worktrees pre-wired to tickets pulled live from Linear, GitHub, or Jira, then walk through setup via an interactive TUI wizard with draft-mode support for work-in-progress branches | Go |
| bhandeland/fleet | Claude Code | Orchestrate multiple parallel Claude Code worktrees from a single sidebar that shows live session status, lets you spawn named agents per branch, and merges everything back in one command | Shell |
| Kaldy14/clui | Claude Code | Wrap Claude Code in an Electron GUI where every conversation thread gets its own git worktree, and idle threads are LRU-hibernated to keep resource usage bounded | TypeScript |
| hopchouinard/cmux-plugin | Claude Code | Add worktree-scoped workspaces to cmux with automatic tab renaming, progress bars, and browser splits — lighter than fleet but covers the core create/switch/close loop | Shell |
| dagster-io/erk | Claude Code | Execute implementation plans by checking out isolated worktrees via cmux checkout/cmux teleport, running agent steps inside, and submitting a PR automatically on completion |
Python · ★81 |
| tasuku43/kra | Claude Code | Map every open ticket one-to-one to a cmux workspace on disk, auto-creating the worktree when a task opens and removing it when the task closes — ticket state drives filesystem state | Go |
| baixianger/claude-orchestration-in-cmux | Claude Code | Coordinate multi-agent parallel work by delegating subtasks to dedicated worktree panes and driving merge cycles through pane-level Claude Code invocations | Markdown |
| Stealinglight/cmux-claude-code-skill | Claude Code | Teach Claude Code itself to manage worktree sessions via skills, bundling browser-open, sidebar-attach, and system-notification hooks alongside the worktree create/destroy primitives | Shell |
| wwaIII/proj | Claude Code | Launch named cmux workspaces through a Rust TUI project picker that marks sessions running Claude Code with [CC] activity badges for at-a-glance fleet visibility |
Rust |
| mangledmonkey/devmux | Claude Code | Create per-agent worktrees inside cmux workspaces using a master-worker pattern with Agent Teams (lead+tester+reviewer+security) and deterministic port allocation per branch | Shell |
| albertlieyingadrian/cmux-multiplexer | Claude Code | Spawn child Claude Code workspaces from an orchestrator session, brief each one with a task, and isolate work in git worktrees so parallel research and implementation can proceed without focus stealing | Python |
| chsm04/cmux-tower | Claude Code | Define TOML workspace presets with role prompts, split layouts, and single/team/manual modes, then launch repeatable Claude Code workspaces from an interactive control tower instead of ad hoc shell history | Shell |
| mateusduraes/ramo | Claude Code | Run ramo new <branch> to create a worktree, execute setup commands, copy env files, and open a cmux workspace — declarative ramo.json config replaces manual multi-step worktree bootstrapping |
Go |
| theodaguier/wt | Claude Code | Create worktrees from GitHub and Linear issues: wt gh <issue> fetches the title, creates a branch, and opens a cmux tab — fzf picker for selecting from open issues |
Shell |
| morrisclay/ws | Claude Code | Open or focus cmux workspaces with ws <name>, scaffold new ones with CLAUDE.md and permissions via ws init, and integrate Flox envs plus 1Password CLI secrets per workspace |
Shell |
| H-Noguchi-josys/cmux-split-plugin | Claude Code | Fork the current conversation into a new cmux pane via /split skill using cmux new-split right + claude -c — minimal single-command conversation branching for parallel exploration |
Shell |
| Yeachan-Heo/oh-my-claudecode | Claude Code | Manage tmux worker panes as part of a full autopilot framework with team pipelines and a tri-model advisor — worktree-like isolation via dedicated tmux panes rather than git worktrees | TypeScript · ★32659 |
| TimoKruth/cmux-t3code | Multi | Embed per-workspace t3code AI coding GUI via sidecar Node.js servers, creating an isolated development environment per cmux workspace with unique port assignments | — |
| Pi | |||
| bjacobso/pimux | Pi | Give each parallel Pi agent its own isolated worktree and dedicated workspace pane, with a sidebar showing live diff status and a structured review workflow before merging | TypeScript |
| javiermolinar/pi-cmux | Pi | Extend Pi sessions with git worktree branching that passes handoff context between agents, plus 12+ slash commands covering pane splits and zoxide-powered directory jumps | TypeScript · ★16 |
| dmallory42/pi-cmux | Pi | Open Pi sessions from project config, create browser and terminal panes, and expose status/progress commands from the same package, turning workspace setup into a reusable Pi install | TypeScript |
| OpenCode | |||
| kdcokenny/opencode-worktree | OpenCode | Spawn a dedicated terminal with OpenCode running inside each new git worktree, sync files via post-checkout hooks, and auto-commit staged changes on worktree deletion | TypeScript · ★504 |
| kdcokenny/opencode-workspace | OpenCode | Bundle worktree isolation as one of 16 composable OpenCode workspace components, tying it into a broader multi-agent orchestration layer rather than treating it as a standalone script | TypeScript · ★402 |
| Multi / Other | |||
| eunjae-lee/cmux-worktree | — | Drive worktree creation from a declarative YAML workspace definition, supporting custom pre/post workflows, configurable split layouts, and per-pane isolated browser storage | TypeScript |
| rjwittams/flotilla | Multi | Correlate branches, open PRs, and issues across multiple repos simultaneously, with agent hook integration that triggers worktree setup and teardown from CI/PR events | Rust |
| basedcorp99/claude-worktree-zsh | Multi | Provide Zsh helpers launching 5 agents (Claude/Codex/Droid/OpenCode/Pi) in worktrees with cwl dashboard and cwm merge-back — the widest agent coverage of any worktree shell helper |
Shell |
| ehardesty/fish_git_worktree | — | Supply Fish shell worktree functions (wt-create/list/remove) with cmux workspace integration — the only Fish-specific worktree helper in the list |
Fish |
| LattyCat/cmux-workspace | Multi | Create a Japanese 4-pane layout: yazi + glow/watchexec Markdown preview + lazygit + AI terminal with symlinks to the cmux command palette — opinionated development cockpit for Japanese-language workflows | Shell |
| dongsik93/crosstalk | Multi | Run co-work assignments across Claude, Codex, and Antigravity panes, optionally pairing those panes with git worktrees so each agent can deliver a separate slice before verdict collection | Shell |
| n-filatov/cmux-workspace | Multi | Create cmux workspaces with fresh git worktrees and per-repo setup commands inferred into .cmux-workspace.json, replacing repeated branch/bootstrap steps with a committed project launcher |
TypeScript |
Agents can run for hours. When cmux restarts, crashes, or you close the lid, you need to pick up exactly where you left off. Session restore plugins snapshot running sessions and recreate them. Monitoring plugins give you a bird's-eye view of what every agent is doing across all workspaces.
Recommended: STRML/cmux-restore for Claude Code session mapping, drolosoft/cmux-resurrect for full workspace restore with Markdown blueprints.
| Repo | Agent | Description | Lang |
|---|---|---|---|
| Claude Code | |||
| HazAT/pi-interactive-subagents | Claude Code | Render a live TUI widget that tracks elapsed time and per-sub-agent progress while Claude Code orchestrates work across multiplexer panes — distinct from dashboard tools in that it surfaces timing and completion percentage, not session state | TypeScript · ★429 |
| AtAFork/ghostty-claude-code-session-restore | Claude Code | Snapshot Claude Code session IDs every 2 seconds via launchd, resolve each ID to its cmux surface, and replay the full session layout into the correct panes on relaunch — optimized for Ghostty terminal | Python · ★23 |
| hummer98/cmux-team | Claude Code | Monitor a conductor-and-workers Claude Code swarm in real time via a TUI dashboard wired to a task queue daemon — surfaces per-worker status and queue depth, not just top-level session state | TypeScript · ★10 |
| STRML/cmux-restore | Claude Code | Map each Claude Code session ID to its surface UUID via a SessionStart hook, then resume exact sessions after cmux restarts — hook-driven approach avoids polling and survives rapid restarts |
Shell |
| claude-studio/claude-studio | Claude Code | Parse JSONL transcripts to visualize cumulative cost, token burn rate, and session statistics on a dashboard with live agent state — cost-focused counterpart to status-bar scrapers | TypeScript |
| alaasdk/cmux-ctl | Claude Code | Display a real-time Textual TUI dashboard of all workspaces with agent state tracking and notification badges — pulls state from the cmux socket rather than terminal scraping | Python |
| taichiiwamoto-s/cmux-context | Claude Code | Scrape Claude status bars from every workspace and render a context-fill dashboard with model and rate limit info — complements socket-based monitors by exposing token headroom | Shell |
| bocktae80/cmux-pilot | Claude Code | Resume all workspace sessions after a system restart by maintaining a persistent workspace-to-session mapping — single-command bulk replay distinct from per-session hook approaches | Shell |
| wrock/wezterm-agent-cards | Claude Code | Display real-time color-coded status cards for Claude Code sessions in a WezTerm sidebar — WezTerm-native alternative to tmux sidebar monitors | Python |
| theforager/cmux | Claude Code | Provide an interactive tmux session selector with real-time status indicators tuned for low-bandwidth mobile SSH connections — prioritizes minimal rendering over rich dashboards | Shell |
| Islanders-Treasure0969/claude-pilot | Claude Code | Monitor multi-step agent workflows via a browser-based dev cockpit with substep tracking and declarative workflow.yml gates — distinct from TUI dashboards by rendering status in a web interface | JavaScript |
| KyubumShin/cmux-skills | Claude Code | Detect 8 session states via /cmux-control for remote monitoring and context import via /cmux-get — granular state machine monitoring at the skill level rather than the daemon level |
JavaScript |
| take0x/cmux-skills | Claude Code | Read other terminals via /pane and look up live cmux documentation — provides session introspection by scraping pane contents rather than socket polling |
Shell |
| niaeee/cmux_skill | Claude Code | Watch surfaces for IDLE/ERROR/STALL states across 124 domain specialists via 18 hooks and 28 scripts — the most granular Korean-language monitoring skill by specialist count | — |
| JacianLiu/cmux-claude-session | Claude Code | Capture and restore sessions using stable layout coordinates instead of volatile surface UUIDs with a layout-change hook for live remapping — solves the UUID-instability problem that breaks other restore tools | Shell |
| Yeachan-Heo/oh-my-claudecode | Claude Code | Monitor a tri-model advisor (Claude+Codex+Gemini) and team pipeline from tmux worker panes — surfaces cross-model orchestration state that single-agent monitors cannot capture | TypeScript · ★32659 |
| Multi / Other | |||
| rjwittams/flotilla | Multi | Correlate agents, branches, and PRs across multiple repos into unified work items via a TUI dashboard — cross-repo aggregation makes it distinct from single-workspace monitoring tools | Rust |
| owizdom/context-brdige-for-cmux | Multi | Poll panes from any agent, extract structured context, persist snapshots to SQLite, and auto-inject compressed handoff briefs into new sessions — persistence layer differentiates it from in-memory restore tools | Go |
| drolosoft/cmux-resurrect | — | Save and restore full workspaces including splits, CWDs, running commands, and Markdown workspace blueprints with dry-run preview — blueprint export makes rebuilding layouts reproducible without relying on session IDs | Go · ★31 |
| meengi07/cmux-agent-observer-skill | Multi | Track worker sub-agent progress from the cmux sidebar using structured handoff notes written to a dedicated directory — file-based coordination approach contrasts with socket or daemon-driven monitors | Shell |
| ensarkovankaya/cmux-mirror | — | Mirror a remote cmux layout to a local instance over SSH with incremental sync support — observability tool focused on remote-to-local layout replication rather than agent state | Python |
| gonzaloserrano/streamdeck-cmux | — | Read workspace state from the cmux socket and display it on Stream Deck hardware buttons — physical-hardware output layer complementing software dashboards | TypeScript · ★14 |
| Lumiwealth/cmux-agent-recovery | Multi | Record Claude Code and Codex resume metadata on each turn, then recover one restored cmux workspace at a time after crashes or updates without bulk-starting stale sessions blindly | Python |
Sometimes you need to check on your agents from another room — or another device entirely. These projects bridge cmux to mobile apps, web browsers, and SSH sessions.
| Repo | Agent | Description | Lang |
|---|---|---|---|
| hummer98/cmux-remote | — | Self-host a PWA bridge that streams live workspace state to any browser over WebSocket, rendering panes with xterm.js and supporting surface switching without an SSH tunnel | TypeScript · ★6 |
| ensarkovankaya/cmux-mirror | — | Mirror a remote cmux workspace's full pane and window structure to a local instance over SSH, keeping layouts in sync without manual replication | Python |
| itsmaleen/cmux-companion | — | Push cmux notifications to an iPhone app and cycle workspaces with the volume buttons, voice commands, or landscape-optimised tap targets | Go / Swift · ★5 |
| rappdw/zen-term | Claude Code | Connect a local MacBook to a remote DGX Spark over Mosh, maintaining session continuity across flaky links with OSC 777 notification rings for agent events | Shell |
| theforager/cmux | Claude Code | Present a compact, mobile-friendly tmux session selector with narrow columns tuned for Terminus on iOS, so agents can be checked and switched from a phone | Shell |
| richardhowes/cmux-mobile | — | Provide an iOS companion app (React Native/Expo) over Tailscale with full workspace listing, ANSI terminal rendering, keyboard shortcuts, and APNs push notifications — the most feature-complete mobile client | TypeScript |
| guanxm2617/feishu-openclaw-cmux | Claude Code | Bridge cmux bidirectionally to Feishu/Lark: poll notifications every 4 seconds, forward as rich Feishu cards, and accept commands back from Feishu messages — enterprise-chat remote access channel | Shell |
| elitecoder/cmux-bridge | — | Connect cmux to Slack with read/send/key/watch commands in channels, posting watched surfaces to threads with LaunchAgent auto-start — the only Slack integration for cmux remote control |
TypeScript |
| erikhazzard/cmux-remote | — | Self-host a remote mirror via local bridge + Cloudflare tunnel with a phone web app over WebSocket for terminal preview and workspace switching — zero-config remote access via tunnel | TypeScript |
| NewTurn2017/cmux-remote | — | Control cmux from an iPhone over Tailscale with a SwiftUI client and Swift relay daemon, keeping terminal mirroring, key input, and workspace operations inside the user's private tailnet | Swift |
| pallidev/cmux-relay | — | Stream cmux terminal sessions to any device with a TypeScript relay agent and optional ACP chat integration, emphasizing phone-friendly monitoring for Claude Code, Codex, and Gemini panes | TypeScript |
The right layout turns cmux from a terminal into a development cockpit. Three-pane setups with a file browser, agent, and git sidebar are popular. Themes set the mood; config tweaks (scrollback, opacity, key bindings) make everything feel right.
| Repo | Agent | Description | Lang |
|---|---|---|---|
| jacobtellep/cmux-setup | Claude Code | Replicate Conductor's IDE-style 3-pane layout — Claude agent, lazygit, and dev server — in a single bootstrap command with a dark-teal colour scheme | Shell |
| budah1987/cmux-script | Claude Code | Launch an interactive project picker that opens yazi, lazygit, and Claude Code in a 3-pane layout and auto-starts the appropriate dev server for the selected project | Shell |
| budah1987/homebrew-tools | Claude Code | Distribute the cmux workspace launcher above as a Homebrew formula, resolving yazi, lazygit, and dev-tool dependencies so any Mac can install it in one command | Ruby |
| Mirksen/cmux-toolkit | Claude Code | Open files edited by Claude in a dedicated Vim subpane and toggle a broot file-browser sidebar per session, keeping the agent view uncluttered | Shell |
| jhta/cmux-skill | Claude Code | Teach Claude Code Neovim-centric editing patterns: open files at the right line, render delta diffs, and run tests in adjacent panes without leaving the agent window | Shell |
| KyleJamesWalker/cc-cmux-plugin | Claude Code | Inject a full cmux command reference into every Claude session context and auto-grant required CLI permissions, with a live sidebar showing session status | — |
| blueraai/bluera-base | Claude Code | Establish shared multi-language conventions enforced by PostToolUse hooks that run validation and quality gates automatically after every Claude tool call |
Shell |
| wwaIII/proj | Claude Code | Browse and launch named cmux workspaces from a fast TUI project picker, showing per-workspace activity badges so Claude sessions are easy to locate and resume | Rust |
| rappdw/zen-term | Claude Code | Configure three distinct Zellij layouts for different workflow modes, with dynamic agent status indicators and reproducible environment bootstrapping via Nix | Shell |
| javiermolinar/pi-cmux | Pi | Add 12+ slash commands to Pi for vertical/horizontal splits, zoxide directory jumps, and dedicated PR review panes without leaving the Pi conversation | TypeScript · ★16 |
| dmallory42/pi-cmux | Pi | Define Pi workspace presets with named browser panes, terminal panes, notification policy, and project-specific commands, giving repeated cmux layouts a committed JSON configuration | TypeScript |
| wolffiex/cmux | — | Manage tmux window arrangements through a popup UI featuring a visual carousel, 10 named preset layouts, and AI-generated summaries of each window's current activity | TypeScript · ★6 |
| eunjae-lee/cmux-worktree | — | Declare workspace layouts in YAML with split-pane definitions, suspended background tabs, and isolated browser storage per git worktree for clean parallel branches | TypeScript |
| drolosoft/cmux-resurrect | — | Save and restore full workspace layouts using Markdown blueprint files that are Obsidian-compatible and git-versionable, surviving reboots without a tmux plugin manager | Go · ★31 |
| stevenocchipinti/raycast-cmux | — | Search, focus, and manage cmux workspaces and panes directly from Raycast with keyboard-driven commands, eliminating the need to touch the mouse or switch apps | TypeScript |
| karlorz/dev-docs-cmux | — | Fetch and keep current LLM-optimised documentation for cmux dependencies via a make-driven workflow, ensuring agents always have accurate API references in context | Shell |
| jcyamacho/zdotfiles | — | Wire up a Zsh environment with Antidote plugin management, Starship prompt, and opinionated install helpers for cmux, fzf, zoxide, and git-worktree workflows | Zsh |
| chrisliu298/ghostty-config | — | Configure Ghostty with a GitHub Dark theme, Berkeley Mono 18pt, 128 MiB scrollback buffer, and cmux-ready key bindings tuned for long agent sessions | — |
| danneu/danterm | — | Build a macOS terminal on libghostty with vertical tab strips, split panes, collapsible tab groups, and JSON-serialised layout restore across restarts | Swift |
| davis7dotsh/my-term | — | Prototype a native macOS terminal emulator with an Arc-style persistent sidebar and long-lived SwiftTerm sessions designed to host cmux workspaces indefinitely | Swift |
| chsm04/cmux-tower | Claude Code | Launch TOML-defined workspace presets with role prompts, colors, and split layouts through a gum-powered picker, making repeatable Claude Code team layouts explicit and versionable | Shell |
| gomipapa/cmux-sidecar | Multi | Install Claude Code and Codex adapters that open code-server as a cmux sidecar pane, giving agents a neighboring editor surface without bundling or silently installing editor dependencies | Shell |
| n-filatov/cmux-workspace | Multi | Store per-repo setup commands in .cmux-workspace.json and spawn cmux workspaces from that config, so project bootstrap, worktree creation, and workspace launch remain one repeatable command |
TypeScript |
| Minoo7/cmux-hooks | Multi | Configure SSH, Hermes, and omp/Pi hook adapters from one repository, centralizing notification formatting and sidebar badge behavior for teams that run agents across local and remote hosts | Shell |
| Seungwoo321/cmux-setup | Claude Code | Register projects and group them into presets, then launch all as cmux workspaces with cmux-setup run <preset> — the only Korean-language project registry and preset launcher for cmux |
TypeScript |
| Marmalade118/gsd-wmux | Pi | Configure GSD/Pi with dual multiplexer support (cmux + WezTerm) via OSC 1337 user variables and Windows toast notifications — extends layout config to non-macOS environments | TypeScript |
| LattyCat/cmux-workspace | Multi | Arrange a Japanese 4-pane layout: yazi + glow/watchexec Markdown preview + lazygit + AI terminal, symlinked into cmux command palette — opinionated layout preset for Japanese workflows | Shell |
| morrisclay/ws | Claude Code | Open or focus workspaces with ws <name>, scaffold with CLAUDE.md and permissions via ws init, and integrate Flox envs plus 1Password CLI secrets — combines workspace management with secrets injection |
Shell |
| richardhowes/cmux-jump | — | Resolve partial directory names via zoxide frecency, check cmux workspaces with 4-tier fuzzy matching, and switch or create with j <partial> — the only zoxide-integrated workspace switcher with 45 tests |
Shell |
| earchibald/cmux-layout | — | Apply declarative layout DSL to live cmux via socket JSON-RPC with a describe command that reads back live topology as a reusable descriptor — bidirectional layout definition and introspection |
Swift |
| madlouse/homebrew-ghostty | — | Install a full AI stack (cmux + Ghostty + Zed + Starship + JetBrainsMono) via a single Homebrew formula with idempotent re-runs and dry-run mode — one-command developer environment bootstrap | Ruby |
| miraoto/cmux-cheatsheet | — | Provide c-help CLI: offline searchable cheatsheet for all cmux keyboard shortcuts, CLI commands, sidebar APIs, browser automation, and env vars in English and Japanese |
Shell |
Cross-reference tables organized by the agent you use. Tags tell you which features each repo covers so you can pick exactly what you need.
Hooks & Sidebar Plugins
| Repo | Tags | Description | Lang |
|---|---|---|---|
| yigitkonur/cmux-claude-pro | sidebar progress logs notify monitor |
Wire sixteen lifecycle hooks into cmux for real-time status pills, adaptive progress bars, formatted log entries, git metadata, and subagent tracking | TypeScript · ★7 |
| tslateman/cmux-claude-code | sidebar progress notify |
Update sidebar with live status through five hooks: thinking state, emoji tool names, logarithmic progress bar, and desktop notifications | Shell |
| hopchouinard/cmux-plugin | sidebar notify progress browser worktree |
Auto-rename tabs to repo names, notify on completion, display progress bars, open browser splits, and create worktree workspaces | Shell |
| KyleJamesWalker/cc-cmux-plugin | sidebar notify config |
Inject cmux command reference, set active/idle sidebar status, route notifications, and auto-grant permissions | — |
| Mirksen/cmux-toolkit | layout sidebar |
Create an IDE-like workspace with auto-opening Vim subpane and toggleable broot file browser | Shell |
| bocktae80/cmux-pilot | sidebar orchestrate config |
Manage workspace-to-session mappings with bulk resume after restart, documented in Korean | Shell |
| taichiiwamoto-s/cmux-context | sidebar progress monitor |
Visualize context window usage across all workspaces as color-coded progress bars | Shell |
| eduwass/cru | orchestrate sidebar layout |
Arrange agent team workers into grid layouts with lifecycle phases, SF Symbols, and progress-watcher | TypeScript |
| azu/cmux-hub | browser sidebar monitor |
Provide a browser-based diff viewer with syntax highlighting, review comments, and GitHub CI status | TypeScript · ★23 |
| jaequery/cmux-diff | browser sidebar |
Show syntax-highlighted diffs in a browser split with AI-generated commit messages | TypeScript |
| niaeee/cmux_skill | sidebar orchestrate monitor |
Orchestrate 124 domain specialists via 18 hooks and surface watcher for IDLE/ERROR/STALL detection, in Korean | — |
| guanxm2617/feishu-openclaw-cmux | sidebar notify remote |
Bridge cmux sidebar state bidirectionally to Feishu/Lark with rich cards and command routing | Shell |
Skills (reference docs that teach Claude Code how to use cmux)
| Repo | Tags | Description | Lang |
|---|---|---|---|
| darkspock/cmux-skill | browser skill |
Cover the full cmux browser surface: DOM, JS eval, cookies, tabs, dialogs, and frames |
Markdown · ★7 |
| hashangit/cmux-skill | browser notify sidebar skill |
Provide element-ref browser control, notification decision matrix, and auto-wired hooks | Shell |
| hoonkim/cmux-skills-plugin | browser skill |
Enable browser automation and pane control via cmux tree/read-screen/send, in Korean |
Markdown |
| Stealinglight/cmux-claude-code-skill | browser layout sidebar notify worktree |
Provide deep CLI, browser, and shortcuts references with Python socket API examples | Shell |
| mikecfisher/cmux-skill | layout browser skill |
Cover the full CLI taxonomy including capture-pane alias and CMUX_SOCKET_PASSWORD |
Markdown |
| mangledmonkey/cmux-skills | layout browser skill |
Teach pane topology, browser forms, markdown panels, and debug snapshots via four auto-syncing skills | Shell |
| jhta/cmux-skill | layout skill notify |
Teach Neovim + git diff patterns: open files, delta diffs, run tests in adjacent panes | Shell |
| goddaehee/cmux-claude-skill | browser sidebar notify skill |
Cover the full CLI reference, 40+ browser subcommands, and tmux migration mapping, in Korean | Markdown |
| halindrome/cmux-tmux-mapping-for-cc | layout orchestrate |
Detect tmux vs cmux and route panel operations through the correct backend | Shell |
| hummer98/using-cmux | layout notify sidebar progress skill |
Teach sub-agent lifecycle: split, send, read-screen, status, notifications, and recovery | Shell · ★33 |
| albertlieyingadrian/cmux-multiplexer | orchestrate worktree skill |
Teach one Claude Code session to spawn and monitor child cmux workspaces with worktree isolation | Python |
| chsm04/cmux-tower | layout worktree config |
Launch TOML workspace presets with role prompts, split layouts, and single/team/manual modes | Shell |
| umitaltintas/cmux-agent-toolkit | orchestrate browser sidebar skill |
Teach fan-out execution, browser automation, sidebar updates, and wait-for signal synchronization | Markdown |
| baixianger/claude-orchestration-in-cmux | orchestrate worktree skill |
Coordinate parallel work via pane delegation, worktree creation, and merge cycle management | Markdown |
| ygrec-app/supreme-leader-skill | orchestrate monitor skill |
Plan subtasks, spawn 2-8 workers, monitor via polling, review deliverables, and dispatch fixes | Markdown |
| ygrec-app/offload-task-skill | orchestrate skill |
Offload a task to a split pane with an autonomous worker to preserve main session context | Markdown |
| mikasalikh/cmux-wf | orchestrate skill |
Bundle a PM orchestrator script with SKILL.md that reads PRDs and distributes work via cmux socket API | Shell · ★6 |
| sdgranger/will-public-claude | browser orchestrate skill |
Ship a 5-skill marketplace package: cmux detection, cmux-browser, cmux-parallel, cmux-run, and skillify | Shell |
| ogallotti/cmux-tmux-shim | orchestrate skill |
Translate tmux commands to cmux equivalents for --teammate-mode tmux Agent Teams inside cmux |
Shell |
| KyubumShin/cmux-skills | browser monitor skill |
Provide /cmux-control (8-state detection), /cmux-get (context import), and /cmux-md-preview (Markdown checklist) |
JavaScript |
| take0x/cmux-skills | monitor skill |
Offer self-referential cmux docs lookup (live cmux -h + scraped docs) and /pane reader for other terminals |
Shell |
| H-Noguchi-josys/cmux-split-plugin | orchestrate skill |
Fork current conversation into a new cmux pane via /split using cmux new-split right + claude -c |
Shell |
| EverybodyBusiness/cmux-browser-first | browser skill |
Force cmux browser tools to be prioritized via /browse, /browse-check, /browse-compare, in Korean |
— |
| alankyshum/semantic-diff | browser skill |
Display AI-grouped semantic diffs in a TUI with SIGUSR1 auto-refresh and Mermaid rendering in cmux | Rust |
| RyoHirota68/difit-cmux | browser skill |
Auto-reload difit web diff viewer in cmux browser pane on file changes with per-workspace port isolation | Shell |
Orchestration & Worktrees
| Repo | Tags | Description | Lang |
|---|---|---|---|
| dagster-io/erk | orchestrate worktree |
Create plans from AI, execute in isolated worktrees, and ship via automated PR submission | Python · ★81 |
| hummer98/cmux-team | orchestrate layout monitor progress |
Run a task queue daemon with conductor and worker sub-agents in split panes | TypeScript · ★10 |
| Th3Sp3ct3R/cmux-claude-agents | orchestrate layout notify |
Intercept Agent tool calls via PreToolUse and redirect to visible cmux panes |
Shell |
| craigsc/cmux | worktree orchestrate |
Wrap git worktree lifecycle into cmux new <branch> with tab completion and merge/teardown |
Shell · ★525 |
| aschreifels/cwt | worktree layout notify orchestrate |
Create worktrees with full cmux dev environments, ticket integration, and a TUI wizard | Go |
| bhandeland/fleet | worktree sidebar orchestrate layout |
Manage worktree lifecycles with agent team spawning and one-command merge-back | Shell |
| tasuku43/kra | worktree orchestrate |
Map tickets to cmux workspaces, auto-creating or removing sessions as tasks change | Go |
| Kaldy14/clui | layout worktree |
Wrap Claude Code in Electron with per-thread worktrees, resume support, and LRU hibernation | TypeScript |
| Yeachan-Heo/oh-my-claudecode | orchestrate worktree monitor |
Enable full autopilot with team pipelines, tri-model advisor (Claude+Codex+Gemini), and tmux worker panes | TypeScript · ★32659 |
| Islanders-Treasure0969/claude-pilot | orchestrate browser monitor |
Provide a browser-based dev cockpit with workflow.yml gates, substep tracking, and Autopilot via cmux send |
JavaScript |
| alevental/cccp | orchestrate layout |
Execute YAML-based deterministic pipelines with Plan-Generate-Evaluate loops and cmux split-pane dashboard | TypeScript |
| Ridgeio/swarm | orchestrate monitor |
Coordinate agents across terminals via cmux send with /join-swarm and SQLite persistence |
TypeScript |
| mangledmonkey/devmux | orchestrate worktree layout |
Implement master-worker pattern with Agent Teams and deterministic port allocation per worktree | Shell |
| mateusduraes/ramo | worktree config |
Create worktrees, run setup commands, copy env files, and open cmux workspaces via ramo.json config |
Go |
| theodaguier/wt | worktree layout |
Create worktrees from GitHub/Linear issues with fzf picker and auto-open cmux tabs | Shell |
| morrisclay/ws | worktree config layout |
Open/focus cmux workspaces with ws <name>, scaffold with CLAUDE.md, integrate Flox envs + 1Password secrets |
Shell |
Session Restore & Monitoring
| Repo | Tags | Description | Lang |
|---|---|---|---|
| AtAFork/ghostty-claude-code-session-restore | monitor |
Snapshot sessions every 2s via launchd and restore into correct cmux surfaces on relaunch | Python · ★23 |
| STRML/cmux-restore | monitor layout |
Map session IDs to surface UUIDs and resume exact sessions after cmux restarts | Shell |
| alaasdk/cmux-ctl | monitor notify orchestrate |
Display a real-time TUI dashboard with agent state tracking and keyboard-driven launching | Python |
| claude-studio/claude-studio | monitor logs |
Visualize cost, token, and session statistics by parsing JSONL transcripts on a dashboard | TypeScript |
| wrock/wezterm-agent-cards | sidebar monitor |
Display sessions as stacked status cards in WezTerm with real-time state tracking | Python |
| theforager/cmux | layout monitor |
Provide an interactive tmux session selector with live status, optimized for mobile SSH | Shell |
| JacianLiu/cmux-claude-session | monitor layout |
Capture and restore sessions using stable layout coordinates instead of volatile surface UUIDs | Shell |
Layout & Config
| Repo | Tags | Description | Lang |
|---|---|---|---|
| jacobtellep/cmux-setup | layout config |
Replicate Conductor's 3-pane layout with Claude + lazygit + dev server in one command | Shell |
| budah1987/cmux-script | layout sidebar |
Launch from a project picker with yazi + lazygit + Claude Code in 3 panes | Shell |
| rappdw/zen-term | notify layout monitor |
Configure Mosh + Zellij layouts connecting MacBook to DGX Spark with OSC 777 notifications | Shell |
| blueraai/bluera-base | skill config |
Provide shared conventions with multi-language PostToolUse validation hooks and quality gates | Shell |
| monzou/mo-cmux | browser |
Preview Markdown files in a cmux browser split with live-reload and fuzzy matching | Shell · ★5 |
| RyoHirota68/cmux-pencil-preview | browser |
Auto-export and hot-reload Pencil design PDF previews in the browser pane | Shell |
| wwaIII/proj | layout config |
Launch named cmux workspaces from a TUI project picker with activity badges | Rust |
| budah1987/homebrew-tools | layout config |
Install the workspace launcher via Homebrew with dependency management | Ruby |
| jeremyeder/sisi-cmux | layout orchestrate |
Auto-discover projects and build tmux workspaces with Claude Code integration and checkpoint save | TypeScript |
| Seungwoo321/cmux-setup | layout config |
Register projects into presets and launch all as cmux workspaces with cmux-setup run, in Korean |
TypeScript |
| Repo | Tags | Description | Lang |
|---|---|---|---|
| HazAT/pi-config | orchestrate sidebar notify browser skill |
Configure a multi-agent architecture with cmux-visible subagents for planning, scouting, coding, and reviewing | TypeScript · ★331 |
| w-winter/dot314 | sidebar notify orchestrate skill config |
Provide a curated extension collection with session management, model-aware compaction, and multi-repo command center | TypeScript · ★95 |
| espennilsen/pi | sidebar browser orchestrate skill config |
Maintain 22 Pi extensions including subagent delegation, changelogs, handoffs, and project context switching | TypeScript · ★102 |
| HazAT/pi-interactive-subagents | orchestrate layout progress monitor |
Spawn async sub-agents in multiplexer panes with a live TUI progress widget across cmux, tmux, and zellij | TypeScript · ★429 |
| burggraf/pi-teams | orchestrate layout notify |
Turn one Pi agent into a coordinated team with shared task board, messaging, and plan approval | TypeScript · ★91 |
| sasha-computer/pi-cmux | sidebar notify browser layout |
Provide context-aware notifications, 4 live sidebar pills, and LLM-callable browser automation tools | TypeScript · ★14 |
| joelhooks/pi-cmux | sidebar notify orchestrate |
Deliver 3s heartbeat, AI session naming, macOS notifications, and worker mode for subagent safety | TypeScript · ★10 |
| javiermolinar/pi-cmux | layout notify worktree skill |
Provide 12+ slash commands for splits, zoxide jumps, worktree branching, and PR review panes | TypeScript · ★16 |
| dmallory42/pi-cmux | layout sidebar progress browser |
Launch configured Pi workspaces with browser panes, terminal panes, and sidebar commands | TypeScript |
| stegmannb/pi-agent-cmux | notify sidebar skill |
Summarize Pi runs through cmux notifications and passive status/progress skills | TypeScript |
| bjacobso/pimux | orchestrate worktree sidebar notify monitor |
Orchestrate parallel agents with per-task worktrees, sidebar state machine, and diff review workflow | TypeScript |
| Attamusc/pi-cmux | sidebar notify progress |
Surface real-time tool status, needs-attention alerts, and dynamic progress estimation with render throttling | TypeScript |
| sanurb/pi-cmux | sidebar notify layout |
Integrate with live sidebar pills, focus-aware notifications, and a safe workspace command allowlist | TypeScript |
| simonjohansson/pi-cmux | sidebar notify logs |
Extend Pi with a configurable cmux_cli tool, sidebar status updates, and tool execution logging |
TypeScript |
| storelayer/pi-cmux-browser | browser |
Equip Pi with dual browser modes: cmux in-app for visual debugging, Playwright for headless workflows | JavaScript |
| sanurb/pi-cmux-browser | browser |
Give Pi typed browser automation tools with click, fill, screenshot, and a spawnable web-dev subagent | TypeScript |
| sanurb/pi-cmux-workflows | layout browser orchestrate |
Add slash commands for splits, handoffs, and ringi code reviews in cmux browser panes | TypeScript |
| mastertyko/pi-cmux-preview | browser |
Render assistant Markdown as styled HTML in a browser pane with screenshot capture | TypeScript |
| Marmalade118/gsd-wmux | sidebar progress notify |
Drop-in GSD/Pi replacement adding WezTerm as second multiplexer backend with OSC 1337 and Windows toast | TypeScript |
| Repo | Tags | Description | Lang |
|---|---|---|---|
| kdcokenny/ocx | sidebar notify config |
Manage portable configuration profiles with sidebar status, progress, and flash triggers on lifecycle events | TypeScript · ★669 |
| kdcokenny/opencode-worktree | worktree layout |
Create isolated git worktrees that auto-spawn terminals with OpenCode, sync files, and auto-commit on deletion | TypeScript · ★504 |
| kdcokenny/opencode-workspace | orchestrate notify worktree mcp skill |
Bundle 16 components for multi-agent orchestration, specialist agents, OS notifications, and worktree isolation | TypeScript · ★402 |
| kdcokenny/opencode-notify | notify |
Deliver native OS notifications with click-to-foreground, quiet hours, custom sounds, and optional cmux fallback | TypeScript · ★184 |
| 0xCaso/opencode-cmux | sidebar notify logs |
Bridge lifecycle events to status pills, todo-driven progress, timeline logs, and unread marks per workspace | TypeScript · ★42 |
| Attamusc/opencode-cmux | sidebar notify logs progress |
Deliver socket JSON-RPC updates with render throttling, log rate limiting, and subagent detection | TypeScript |
| Joehoel/opencode-cmux | sidebar progress notify logs |
Combine a plugin with Zsh integration polling Azure DevOps and Jira as sidebar pills | Shell |
| mspiegel31/opencode-cmux | sidebar notify browser monitor |
Display subagent sessions in TUI panes, push notifications on idle/error, and expose browser tools | TypeScript |
| tully-8888/opencode-cmux-notify-plugin | sidebar notify monitor |
Set live status, track subagent lifecycles, and notify on questions, permissions, and errors | Shell |
| doublezz10/figure-viewer | browser |
Display scientific figures in a browser pane with lightbox zoom, auto-refresh, and a slash command | JavaScript |
| Repo | Tags | Description | Lang |
|---|---|---|---|
| Attamusc/copilot-cmux | sidebar notify logs progress |
Push Copilot CLI activity into sidebar status pills, progress bars, logs, and desktop notifications | TypeScript |
| tadashi-aikawa/copilot-plugin-notify | notify |
Emit OSC 777 escape sequences from Copilot hooks for tool-use approvals and agent-stop alerts | Shell |
| block/cmux-amp | sidebar |
Display Amp agent status in the cmux sidebar using the Amp Plugin API with SF Symbol icons | TypeScript |
| ipdelete/cmux | layout browser |
Provide an Electron workspace with file browsing, Monaco editor, Git integration, and Copilot Chat | TypeScript |
These projects work across multiple agents or are agent-agnostic.
| Repo | Tags | Description | Lang |
|---|---|---|---|
| manaflow-ai/manaflow | orchestrate worktree browser monitor |
Spawn Claude Code, Codex, Gemini, and others in parallel VS Code workspaces with one-click PR creation | TypeScript · ★1033 |
| HazAT/pi-interactive-subagents | orchestrate layout progress monitor |
Spawn sub-agents across cmux, tmux, zellij, or WezTerm with a live TUI progress widget | TypeScript · ★429 |
| aannoo/hcom | orchestrate notify monitor |
Connect agents across terminals with messaging, file-collision detection, and multi-agent notifications | Rust · ★252 |
| multiagentcognition/cmux-agent-mcp | mcp orchestrate sidebar notify browser |
Expose 81 MCP tools for agent hierarchy, grid launchers, bulk dispatch, and session recovery | TypeScript |
| EtanHey/cmuxlayer | mcp orchestrate sidebar progress |
Provide 22 MCP tools via socket for splits, screen reading, agent orchestration, and sidebar control | TypeScript · ★5 |
| manaflow-ai/cmux-skills | skill browser layout config |
Provide maintained cmux skills for CLI control, browser automation, artifacts, workspace refs, and settings | Python |
| dongsik93/crosstalk | orchestrate worktree notify |
Coordinate Claude, Codex, and Antigravity panes with deterministic verdicts and co-work mode | Shell |
| 0xNekr/cmux-bus | orchestrate logs |
Coordinate adjacent agents through JSONL events, handoffs, file ownership claims, and escalation records | Shell |
| Lumiwealth/cmux-agent-recovery | monitor |
Recover Claude Code and Codex sessions one workspace at a time after cmux restarts | Python |
| NewTurn2017/cmux-remote | monitor remote |
Mirror and control cmux from an iPhone over Tailscale with a SwiftUI client and relay daemon | Swift |
| pallidev/cmux-relay | monitor remote |
Stream cmux terminal sessions to phones and other devices with a TypeScript relay agent | TypeScript |
| Minoo7/cmux-hooks | notify sidebar config |
Fan out cmux hooks across SSH hosts, Hermes, and omp/Pi with one helper path | Shell |
| n-filatov/cmux-workspace | worktree layout config |
Spawn cmux workspaces from git worktrees and committed per-repo setup commands | TypeScript |
| gomipapa/cmux-sidecar | browser layout |
Open code-server as a sidecar pane beside Claude Code or Codex sessions | Shell |
| Michael-Z-Freeman/antigravity-cmux-notify | notify |
Send cmux notifications from Google Antigravity CLI hooks with stdout-safe JSON handling | Shell |
| jasonraz/cmux-browser-mcp | mcp browser |
Expose 43 browser-only MCP tools with auto-tracked last-opened surface | JavaScript · ★8 |
| darkspock/cmux-skill | browser skill |
Teach any agent the full cmux browser surface via a self-contained skill file |
Markdown · ★7 |
| owizdom/context-brdige-for-cmux | monitor orchestrate |
Poll panes, persist context to SQLite, and auto-inject handoff briefs for cross-agent memory | Go |
| rjwittams/flotilla | worktree orchestrate monitor |
Correlate branches, PRs, and terminal agents across repos via a TUI dashboard | Rust |
| meengi07/cmux-agent-observer-skill | orchestrate layout monitor |
Launch visible worker panes for Codex/OpenCode with progress tracking and handoff notes | Shell |
| untra/operator | orchestrate layout |
Present a kanban TUI managing agents across projects with cmux as a pluggable multiplexer backend | Rust · ★17 |
| ttalkkag/cmux-agent | orchestrate monitor |
Broker messages between controller/orchestrator/worker cmux tabs with SQLite control plane and JSON artifacts | Python · ★5 |
| wangyuxinwhy/agent-skills | orchestrate skill |
Deliver framework-agnostic skills symlinked into 5 agent runtimes with cmux orchestration and Feishu CLI | — |
| basedcorp99/claude-worktree-zsh | worktree orchestrate |
Launch 5 agents (Claude/Codex/Droid/OpenCode/Pi) in worktrees with cwl dashboard and cwm merge-back |
Shell |
| TimoKruth/cmux-t3code | browser layout worktree |
Embed t3code AI coding GUI as per-workspace chat panels via sidecar Node.js servers on unique ports | — |
| LattyCat/cmux-workspace | layout config |
Create a Japanese 4-pane layout with yazi + Markdown preview + lazygit + AI terminal, symlinked to command palette | Shell |
| Repo | Description | Lang |
|---|---|---|
| mkurman/cmux-windows | Provide a native Windows terminal with ConPTY, split panes, workspace sidebar, OSC notifications, session persistence, and a named-pipe CLI API | C# · ★154 |
| TRINITXX/cmux-windows | Fork mkurman's implementation adding Claude Code hooks, Zen mode, Dracula/One Dark themes, and command log replay | C# |
| aasm3535/wmux | Build a WinUI 3 port with xterm.js, vertical sidebar, split panes, OSC notifications, WebView2 browser, and native Mica backdrop | C# |
| shogotomita/cmux-win | Build a WPF/ConPTY terminal with workspace splitting, sidebar pills, Claude Code hooks, and a 28-method named-pipe IPC server | C# |
| amirlehmam/wmux | Build an Electron + xterm.js + ConPTY terminal with CDP proxy for browser integration, auto-injected Claude Code hooks, and a named-pipe API compatible with cmux commands | TypeScript · ★85 |
| wshmkr/astral-terminal | Build a Windows + WSL terminal inspired by cmux, with split panes, workspaces, browser panel, Claude Code hook notifications, restart-safe scrollback, and planned CLI scripting | TypeScript · ★6 |
| dcieslak19973/wmux | Deliver a Tauri v2 + ConPTY terminal with OSC 9/99/777 notification parsing, sidebar metadata, session persistence, and a tmux.exe compatibility shim for migration | JavaScript |
| Kazsuto/wmux | Provide a native Rust + D3D12/wgpu terminal with 80+ JSON-RPC v2 commands over Named Pipes (HMAC-SHA256 auth), Ghostty-compatible config, and command palette | Rust |
| Repo | Description | Lang |
|---|---|---|
| asermax/seemux | Provide a GTK4 terminal with tabbed sidebar, real-time Claude Code status, tab groups, quake dropdown, agent teams, and full session persistence | Rust |
| nice-bills/lmux | Build a pure-C GTK4/VTE terminal with split browser panes, D-Bus notifications, toggleable sidebar, and vim-style navigation | C |
| anurag-arjun/cove | Fork Ghostty's GTK frontend adding a vertical workspace sidebar, keyboard navigation, planned socket API, and WebKitGTK browser | Zig |
| douglas/cmux-gtk | Provide a full GTK4/libadwaita port with the same socket API (V1 60 commands + V2 210+ methods), WebKit6 browser, and cmux ssh for remote workspaces — closest feature parity with macOS cmux |
Rust · ★10 |
| no1msd/seance | Build a GTK4 Linux terminal multiplexer that auto-detects Claude Code, Codex, and Pi sessions, tracking status, permission waits, task completions, desktop notifications, and unread state without dotfile setup | Zig · ★48 |
| bradwilson331/cmux-linux | Port cmux to Linux with Rust, GTK4, GPU-accelerated Ghostty rendering, CDP browser automation, and a 34-subcommand socket CLI | Rust · ★27 |
| cai0baa/cmux-for-linux | Deliver a cross-platform Tauri workspace with React and xterm.js, now branded ptrcode, with workspaces and resizable splits | TypeScript · ★33 |
| LucasPC-hub/lcmux | Build a GTK4/VTE4 port with NixOS flake, Arch packages, and WebKitGTK 6.0 browser — wire-compatible with macOS cmux socket protocol for plugin reuse | Rust |
Projects that solve similar problems without requiring the cmux application itself.
| Repo | Description | Lang |
|---|---|---|
| craigsc/cmux | Wrap git worktree lifecycle into cmux new <branch> for isolated agent work with tab completion and merge/teardown |
Shell · ★525 |
| maedana/crmux | Provide a tmux sidebar with live Claude Code status, permission mode, and vim-like navigation with scriptable RPC | Rust · ★21 |
| wolffiex/cmux | Manage tmux windows through a fast popup carousel with 10 preset layouts and AI-powered window summaries | TypeScript · ★6 |
| theforager/cmux | Provide an interactive session selector with live status indicators optimized for mobile SSH via Terminus on iOS | Shell |
| jeremyeder/sisi-cmux | Auto-discover projects and build tmux workspaces with Claude Code integration and checkpoint save/restore | TypeScript |
| Repo | Description | Lang |
|---|---|---|
| adibhanna/tsm | Manage persistent terminal sessions as background daemons with a native cmux backend for workspaces, splits, and sidebar sync | Go · ★157 |
| danneu/danterm | Build a macOS terminal on libghostty with vertical tabs, split panes, tab groups, bell alerts, and JSON layout restore | Swift |
| Pollux-Studio/maxc | Combine terminal multiplexing, embedded browser, task orchestration, and a programmable CLI in a Tauri workspace | Rust |
| Kaldy14/clui | Wrap Claude Code in Electron with project-scoped threads, xterm.js, per-thread worktrees, and LRU hibernation | TypeScript |
| Octane0411/open-vibe-island | Monitor Claude Code, Codex, and OpenCode from a native macOS menu-bar companion that can watch terminal, Ghostty, cmux, Kakoune, and iTerm workflows without depending on cmux APIs | Swift · ★1149 |
| vakovalskii/codbash | Provide a browser dashboard for searching, replaying, tagging, and resuming Claude Code, Codex, Pi, Cursor, OpenCode, Kiro, and Copilot sessions, with cmux as one launch target | JavaScript · ★212 |
| sverrirsig/claude-control | Build a macOS dashboard for discovering Claude Code sessions, showing git and PR status, approving prompts, and focusing terminal tabs across iTerm2, Terminal, kitty, WezTerm, cmux, and others | TypeScript · ★119 |
| ClipboardHealth/groundcrew | Dispatch Linear tickets to AI coding agents in sandboxed git worktrees with per-ticket status, resume tracking, and optional cmux workspace mapping for visible local execution | TypeScript · ★32 |
| julo15/seshctl | Track terminal-based coding sessions across Terminal.app, iTerm2, VS Code, Cursor, Warp, Ghostty, and cmux through a native menu-bar app and CLI | Swift · ★5 |
| wrock/wezterm-agent-cards | Replicate cmux's status-card UX in WezTerm via a curses-based sidebar with Claude Code hooks | Python |
| davis7dotsh/my-term | Prototype a native macOS terminal with an Arc-style persistent sidebar using SwiftTerm | Swift |
| ipdelete/cmux | Build an Electron workspace with Copilot CLI/SDK integration, Monaco editor, and PTY terminals | TypeScript |
| Diogenesoftoronto/dellij | Manage parallel agents via Zellij tabs where each workspace maps to a git worktree with a WASM status plugin, optional GPUI GUI, and Android app via Convex | Rust |
| Tom-R-Main/execuTerm | Build a native macOS app on cmux + libghostty with a task-board dashboard synced from ExecuFunction SaaS, context injection, and semantic search | Swift |
| vcabeli/wezmux | Fork WezTerm adding cmux-inspired workspace management: persistent sidebar, git/PR metadata, OSC 7777 agent status, blue ring notifications, and auto-injected Claude Code + Codex hooks | Rust |
| kght6123/madori | Provide a browser-based terminal multiplexer (Node.js + React + xterm.js) with vertical tab sidebar, WebGL rendering, and OSC notifications — Japanese-language alternative to native terminals | TypeScript |
- llv22/cmux_forward — Add working-directory restore for Bash sessions. One patch over upstream. Swift
- israeligal/cmux-file-explorer — Add a file explorer sidebar, native text editor, and CWD sync between explorer and terminal panes. Swift
cmux's plugin surface is intentionally simple: a Unix socket, a CLI, and environment variables. Every workspace gets CMUX_WORKSPACE_ID, CMUX_SURFACE_ID, and CMUX_SOCKET_PATH injected into its environment. Your plugin reads those vars, connects to the socket, and starts sending JSON-RPC messages.
The main integration points:
- Sidebar status pills — set key-value pairs that appear next to workspace tabs
- Progress bars — update a 0-100% bar in the sidebar
- Sidebar logs — write timestamped messages to a scrolling feed
- Desktop notifications — fire
cmux notifyor OSC 777 escape sequences - Browser automation — control the embedded WebKit browser via
cmux browsersubcommands - Pane management — split, send, read-screen, and manage surfaces via
cmuxCLI - Workspace lifecycle — create, rename, switch, and close workspaces programmatically
For a detailed walkthrough of the sidebar integration API, see docs/sidebar-integration-api.md.
For the full CLI and socket protocol reference, see the Documentation section or the self-contained docs:
- API Reference — full CLI and socket JSON-RPC protocol
- Browser Automation — 40+ subcommands for the embedded WebKit browser
- Notifications — CLI, OSC 777/99, and agent hook integration
- SSH — remote workspaces with browser proxying and notification relay
- AppleScript Automation Guide — 10-part deep-dive covering CLI wrappers, socket v2, and automation recipes
| Resource | Link |
|---|---|
| Website | cmux.dev |
| Source | github.com/manaflow-ai/cmux |
| Downloads | Stable DMG · Nightly DMG |
| Homebrew tap | manaflow-ai/homebrew-cmux |
| Blog | Introducing cmux · Show HN · Zen of cmux |
Comprehensive self-contained reference docs mirrored from cmux.com/docs — see the full index.
Core
| Document | Description |
|---|---|
| Getting Started | Installation, CLI setup, auto-updates, session restore, and system requirements |
| Concepts | The Window > Workspace > Pane > Surface > Panel hierarchy |
| Configuration | Ghostty config and settings.json schema reference with every supported key |
| Custom Commands | cmux.json format for command palette commands and declarative workspace layouts |
| Keyboard Shortcuts | All default shortcuts with binding keys for customization, including chord support |
API & Automation
| Document | Description |
|---|---|
| API Reference | Full CLI and Unix socket JSON-RPC protocol — workspaces, splits, input, notifications, sidebar metadata |
| Browser Automation | 40+ cmux browser subcommands — navigation, DOM interaction, inspection, JS eval, state management |
| Notifications | Desktop notifications via CLI, OSC 777/99, Claude Code hooks, and Copilot CLI hooks |
| SSH | Remote workspaces with browser proxying, drag-and-drop scp, notification relay, and auto-reconnect |
Agent Integrations
| Document | Description |
|---|---|
| Claude Code Teams | cmux claude-teams — teammate agents as native cmux splits via tmux shim translation |
| oh-my-opencode | cmux omo — OpenCode with oh-my-openagent multi-model orchestration in cmux splits |
| Repo | Description | Lang |
|---|---|---|
| manaflow-ai/manaflow | Primary monorepo containing cmux-proxy and cmux-env Rust crates alongside the orchestration platform |
TypeScript · ★1033 |
| lawrencecchen/cmux-proxy | Route HTTP/WebSocket/TCP traffic through a header-based reverse proxy with per-workspace network isolation | Rust |
| lawrencecchen/cmux-env | Coordinate shared environment variables across shells and projects through a lightweight daemon with prompt hooks | Rust |
| webkaz/cmux-intel-builds | Automate Intel Mac x86_64 builds by polling upstream releases every 6 hours and publishing unsigned DMGs | — |
| budah1987/homebrew-tools | Install the cmux workspace launcher script via Homebrew with dependency management | Ruby |
| anhoder/homebrew-repo | Distribute a cmux-nightly cask via a personal Homebrew tap |
Ruby |
| manaflow-ai/homebrew-cmux | Provide the official Homebrew tap for cmux with stable and nightly casks maintained by Manaflow | Ruby |
| manaflow-ai/chromium | Build a Chromium content shell for cmux's browser engine with prebuilt framework downloads for plugin developers | Obj-C++ |
| manaflow-ai/vscode | Fork VS Code to replace the web terminal with a cmux backend for code serve-web sessions |
— |
- Ghostty (docs · config · source) — the terminal engine under cmux
- agent-browser — Vercel's browser automation, integrated into cmux · ★31850
cmux reads ~/.config/ghostty/config automatically. Below is a production config optimized for multi-agent workflows.
Full config (click to expand)
# NOTE: macos-option-as-alt breaks Option+key chars on non-US keyboards (e.g. @ on Turkish layout)
theme = Catppuccin Mocha
background = 1e1e2e
foreground = cdd6f4
cursor-color = f5e0dc
cursor-text = 1e1e2e
cursor-style = block
cursor-style-blink = false
cursor-opacity = 0.9
selection-background = 585b70
selection-foreground = cdd6f4
font-family = JetBrainsMono Nerd Font
font-family-bold = JetBrainsMono Nerd Font
font-family-italic = JetBrainsMono Nerd Font
font-family-bold-italic = JetBrainsMono Nerd Font
font-size = 16
font-thicken = true
font-thicken-strength = 64
font-feature = calt
font-feature = liga
font-codepoint-map = U+2500-U+259F=Menlo
background-opacity = 0.95
background-blur = macos-glass-regular
window-padding-x = 16
window-padding-y = 12
window-padding-balance = true
window-padding-color = extend
window-height = 35
window-width = 120
macos-titlebar-style = transparent
window-decoration = auto
window-theme = dark
window-colorspace = display-p3
window-save-state = always
window-show-tab-bar = never
unfocused-split-opacity = 0.65
unfocused-split-fill = 181825
split-divider-color = 45475a
split-inherit-working-directory = true
tab-inherit-working-directory = true
window-inherit-working-directory = true
window-inherit-font-size = true
scrollback-limit = 50000
clipboard-read = allow
clipboard-write = allow
clipboard-trim-trailing-spaces = true
clipboard-paste-protection = true
clipboard-paste-bracketed-safe = true
copy-on-select = clipboard
shell-integration = zsh
shell-integration-features = no-cursor
term = xterm-256color
confirm-close-surface = false
macos-option-as-alt = true
macos-non-native-fullscreen = true
focus-follows-mouse = false
resize-overlay = after-first
resize-overlay-position = bottom-right
resize-overlay-duration = 500ms
cursor-click-to-move = true
scroll-to-bottom = keystroke, no-output
keybind = alt+left=esc:b
keybind = alt+right=esc:f
keybind = cmd+left=text:\x01
keybind = cmd+right=text:\x05
keybind = alt+backspace=text:\x17
keybind = cmd+k=clear_screen
keybind = cmd+d=new_split:right
keybind = cmd+shift+d=new_split:down
keybind = cmd+alt+left=goto_split:left
keybind = cmd+alt+right=goto_split:right
keybind = cmd+alt+up=goto_split:top
keybind = cmd+alt+down=goto_split:bottom
keybind = cmd+ctrl+left=resize_split:left,20
keybind = cmd+ctrl+right=resize_split:right,20
keybind = cmd+ctrl+up=resize_split:up,10
keybind = cmd+ctrl+down=resize_split:down,10
keybind = cmd+shift+e=equalize_splits
keybind = cmd+shift+z=toggle_split_zoom
keybind = cmd+equal=increase_font_size:2
keybind = cmd+minus=decrease_font_size:2
keybind = cmd+0=reset_font_size
keybind = cmd+shift+comma=reload_config
keybind = cmd+enter=toggle_fullscreen
palette = 0=#45475a
palette = 8=#585b70
palette = 1=#f38ba8
palette = 9=#f38ba8
palette = 2=#a6e3a1
palette = 10=#a6e3a1
palette = 3=#f9e2af
palette = 11=#f9e2af
palette = 4=#89b4fa
palette = 12=#89b4fa
palette = 5=#f5c2e7
palette = 13=#f5c2e7
palette = 6=#94e2d5
palette = 14=#94e2d5
palette = 7=#bac2de
palette = 15=#a6adc8| Setting | Why |
|---|---|
window-show-tab-bar = never |
cmux has its own vertical tabs |
unfocused-split-opacity = 0.65 |
see which agent pane is active |
background-opacity = 0.95 |
frosted glass without hurting readability |
scrollback-limit = 50000 |
agent output is verbose |
10-part guide from the cmux source (click to expand)
| # | Topic |
|---|---|
| 00 | Index |
| 01 | Overview |
| 02 | Setup & Permissions |
| 03 | AppleScript Wrapper Pattern |
| 04 | Command Catalog |
| 05 | Browser Command Surface |
| 06 | Socket v2 Protocol |
| 07 | v2 Method Inventory |
| 08 | CLI to v2 Mapping |
| 09 | Automation Recipes |
| 10 | Errors & Diagnostics |
| Channel | Link |
|---|---|
| Discussions | github.com/.../discussions |
| Issues | github.com/.../issues |
| Discord | invite |
| X | @manaflowai |
| YouTube | channel |
Show HN · r/ClaudeCode intro · r/ClaudeCode vertical tabs
Official Demo Video · Product Hunt · YC (Manaflow) · UBOS · Digg · Microlaunch
These repositories have been deleted or are no longer accessible.
- adhyaay-karnwal/cmux — Abandoned fork with Docker isolation and multi-CLI support. TypeScript
- ctaho19/cmux-cursor-work-style — Repository deleted. Previously contained a Cursor aesthetic theme with charcoal/blue colors and Berkeley Mono
Before opening a PR, verify your entry:
- Public repo with a README
- Uses a cmux API —
CMUX_SOCKET_PATH,cmuxCLI, socket protocol, or cmux env vars - Themes/configs must include at least one cmux-specific feature
- Description — start with a verb, 30-50 words, neutral tone, no superlatives
- Format —
[owner/repo](url) | \tag` | description | Lang · ★N` - Placement — add the repo to every feature dimension section it belongs in, plus the correct agent section
See CONTRIBUTING.md for the full style guide.
MIT — see LICENSE.