cmux
cmux - Terminal Multiplexer
Overview
cmux is a native macOS terminal application (Swift/AppKit) that provides terminal multiplexing with workspaces, panes, and splits. It uses Ghostty's rendering engine (libghostty) for GPU-accelerated terminal output. The CLI communicates with the running app via a Unix domain socket at /tmp/cmux.sock.
Think of cmux as "tmux reimagined as a native macOS app" -- it has workspaces (like tmux windows), panes (like tmux panes), and surfaces (individual terminal or browser instances within panes), all controllable via a rich CLI.
When to Load the Reference
This skill covers the mental model, common commands, gotchas, and erk integration. Load references/cmux-reference.md when you need:
- Browser automation syntax (40+ subcommands: navigation, forms, cookies, storage, console, waiting, dialogs, downloads, state)
- Window management (
list-windows,new-window,focus-window,close-window,move-workspace-to-window) - Surface management (
move-surface,reorder-surface,drag-surface-to-split,surface-health) - Panel/Tab commands (
list-panels,focus-panel,tab-action,rename-tab) - Sidebar metadata (
clear-status,list-status,clear-progress,clear-log,list-log,sidebar-state) - Full tmux compat (20+ commands:
pipe-pane,wait-for,copy-mode,set-hook,bind-key,popup, etc.) - Utility/diagnostic (
ping,capabilities,claude-hook,set-app-focus)
More from dagster-io/erk
dignified-code-simplifier
Simplifies and refines Python code for clarity, consistency, and maintainability while preserving all functionality. Applies dignified-python standards. Focuses on recently modified code unless instructed otherwise.
96dignified-python
Production Python coding standards with automatic version detection (3.10-3.13). Use when writing,
77cli-skill-creator
This skill should be used when creating a skill for a CLI tool. Use when users ask to document a command-line tool, create CLI guidance, or build a skill for terminal commands. Essential for systematically introspecting CLI tools through help text, man pages, GitHub repos, and online research, then organizing findings into effective skill documentation.
72command-creator
This skill should be used when creating a Claude Code slash command. Use when users ask to "create a command", "make a slash command", "add a command", or want to document a workflow as a reusable command. Essential for creating optimized, agent-executable slash commands with proper structure and best practices.
72learned-docs
This skill should be used when writing, modifying, or reorganizing
71session-inspector
>
71