Skip to main content

ccmux

ccmux demo

A streamlined terminal-UI for juggling concurrent Claude Code sessions.

Features

  • Visual sidebar — see all sessions at a glance; red highlights tell you instantly when Claude needs your attention
  • CLI session management — create, list, activate, remove sessions from the terminal
  • Git worktree isolation — spin up duplicate sessions on isolated branches; use ccmux.toml files to add additional steps when spinning up worktrees, such as setting up untracked build dependencies

Prerequisites

Before installing ccmux, make sure you have:

  1. tmux — terminal multiplexer

    # Ubuntu/Debian
    sudo apt install tmux
    # macOS
    brew install tmux
    
  2. Claude Code — Anthropic's CLI for Claude

    npm install -g @anthropic-ai/claude-code
    

    See Claude Code documentation for details.

Installation

# Recommended
pipx install ccmux

# Or, if you don't use pipx
pip install ccmux

Quick Start

ccmux             # auto-creates a session for the current directory or attaches to an existing one
ccmux new         # create a new session from the current directory's repo

Commands

Command Description
(default) Auto-attach to existing session or create one
new [NAME] Create a new session (add -w for worktree)
list List all sessions with status and branch info
attach Attach to the ccmux tmux session
activate [NAME] Reopen Claude Code in a session's tmux window, continuing its most recent conversation
deactivate [NAME] Close tmux window (keeps session)
remove [NAME] Permanently delete a session
rename OLD NEW Rename a session
kill Kill entire ccmux session
which Print current session name (useful for scripting)
detach Detach from tmux

Worktree Configuration

Drop a ccmux.toml in your repo root to run commands after worktree creation:

[worktree]
post_create = [
    "ln -s $CCMUX_REPO_ROOT/node_modules $CCMUX_INSTANCE_PATH/node_modules",
    "cp $CCMUX_REPO_ROOT/.env $CCMUX_INSTANCE_PATH/.env",
]

Commands run inside the new worktree with these environment variables:

Variable Description
CCMUX_REPO_ROOT Absolute path to the main repository
CCMUX_INSTANCE_PATH Absolute path to the new worktree
CCMUX_INSTANCE_NAME Name of the new instance
CCMUX_SESSION ccmux tmux session name

Contributing

git clone git@github.com:TheHumbleTransistor/ccmux.git
cd ccmux
pip install -e ".[dev]"
pytest tests/ -v

PRs welcome — open an issue first for large changes.

License

MIT — see LICENSE

Metadata

Release files for ccmux 0.9.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ccmux 0.9.0
File Size Uploaded Provenance
ccmux-0.9.0.tar.gz 175.2 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ccmux 0.9.0
File Interpreter ABI Platform
ccmux-0.9.0-py3-none-any.whl Python 3 none any Details

Total release size: 234.4 kB

Release files / ccmux-0.9.0.tar.gz

Download URL ccmux-0.9.0.tar.gz
Size 175.2 kB
Tags Source
SHA-256 checksum
How to use checksums
7ec7f451f246ab6ef309c7b2d748475ab980d609426d1303232a7780481168a2
BLAKE2b-256 checksum
How to use checksums
b94e450b5ce3f4a8672365ff906a62df5bd3ee9462f086c772e91e864f5eaf21
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release files / ccmux-0.9.0-py3-none-any.whl

Download URL ccmux-0.9.0-py3-none-any.whl
Size 59.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a32b0a23950604b87eceeff9eff74470e12bb882cc45868cc4e703c9cbe33caf
BLAKE2b-256 checksum
How to use checksums
5f34ac1753baa85237b9d172ae542b0aacafd9b5e6e909ff5752aecb475b79ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Security for ccmux 0.9.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for ccmux-0.9.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page