Getting started
Installation
Prerequisites
- tmux with active sessions running AI coding agents
- git 2.31 or newer (for branch and worktree detection; ccmux still works without it, just without that info)
Homebrew
brew install epilande/tap/ccmuxccmux setupFrom Source
Requires Bun.
git clone https://github.com/epilande/ccmux.gitcd ccmuxbun installbun linkccmux setupccmux setup installs agent hooks for authoritative session matching. ccmux works without it, but it’s recommended; see Session Matching with Hooks. Bare ccmux setup only configures agents whose executable is found on PATH; use ccmux setup --agent <name> to install for a specific agent even if it isn’t detected.
Shell Completions
ccmux completion <shell> prints a completion script for zsh, bash, or fish. It completes commands and flags, and asks the running daemon for live values: session ids and %pane ids wherever a command takes one, agent names, invocation ids, config keys and their values. Directory flags such as --cwd fall through to the shell’s own path completion.
# zsh (~/.zshrc, after compinit)eval "$(ccmux completion zsh)"
# bash (~/.bashrc)eval "$(ccmux completion bash)"
# fishccmux completion fish > ~/.config/fish/completions/ccmux.fishThe zsh eval has to come after compinit, since the script registers itself with compdef. A file in fpath sidesteps that and avoids running ccmux at every shell start: ccmux completion zsh > ~/.zfunc/_ccmux with fpath=(~/.zfunc $fpath) before compinit. The Homebrew formula installs completions for all three shells.
Quick Start
- Start your AI coding sessions in tmux panes as usual
- Launch the picker:
Terminal window ccmux - Navigate with j/k, press Enter to switch to a session