Skip to main content

A tmux-based viewer for git worktrees

Project description

worktree-mux

A tmux control panel for git worktrees.

When you run multiple AI agents or parallel feature branches, each git worktree becomes its own dev environment. worktree-mux maps 1 worktree → 1 tmux window, so you can instantly jump between contexts to run commands, inspect logs, or debug — without losing your place.

  • What it does: fast terminal access to every worktree
  • What it doesn't do: create or manage worktrees — git still does that

Think: a dashboard for parallel coding environments.

See PLAN.md for assumptions and design considerations.

Install

# Install from PyPI
uv tool install worktree-mux

# Or install from source
git clone https://github.com/tt6746690/worktree-mux.git
uv tool install worktree-mux/

# (Optional) Short alias — add to ~/.zshrc
alias wm='worktree-mux'

Usage

  1. Create worktrees with git: worktree-mux just views them
git worktree add .worktrees/feature/auth -b feature/auth
git worktree add .worktrees/fix/parser-bug -b fix/parser-bug
git worktree add .worktrees/refactor-models -b refactor-models
  1. See all worktrees and their tmux/git status with worktree-mux ls (or just worktree-mux)
Worktrees in my-repo:

  ○ feature/auth                   /path/to/feature/auth
  ○ fix/parser-bug                 /path/to/fix/parser-bug
  ○ refactor-models                /path/to/refactor-models

● = tmux window open    ○ = no tmux window
Session: my-repo (3 worktrees, 0 open)
  1. Jump into a worktree: creates a tmux window and switches to it with worktree-mux cd
worktree-mux cd auth             # (fuzzy) leaf name match
worktree-mux cd parser           # (fuzzy) substring match
worktree-mux cd feature/auth     # exact path match
worktree-mux cd                  # go to the main window (repo root)

Return to your previous session: prefix + s and toggle

  1. Live dashboard of worktrees — shows branch status, divergence, modified files with worktree-mux dash
my-repo — worktree dashboard (refreshes every 5s)
──────────────────────────────────────────────────────────────────────

Branch              tmux  Modified   vs main   Last Commit
──────────────────  ────  ────────   ───────   ─────────────────
feature/auth        ●     2 files    ↑3        12 minutes ago
fix/parser-bug      ○     clean      ↑1        2 hours ago
refactor-models     ○     3 files    ↑5 ↓2     35 minutes ago

● = tmux window open    ○ = no tmux window
  1. Cleanup: worktree-mux automatically cleans up orphaned tmux windows (from removed worktrees) on every command. No manual close needed — just delete the worktree with git worktree remove and the window goes away.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

worktree_mux-0.2.0.tar.gz (43.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

worktree_mux-0.2.0-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file worktree_mux-0.2.0.tar.gz.

File metadata

  • Download URL: worktree_mux-0.2.0.tar.gz
  • Upload date:
  • Size: 43.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for worktree_mux-0.2.0.tar.gz
Algorithm Hash digest
SHA256 42af432c19ef49b9fdd27eb41d5ea94115a81fbfb6aca6447121486c84b31b57
MD5 82686c7219b5deb37979f3e43e8bf9ca
BLAKE2b-256 4f4cd6802d9c4e0849f8ceb996307856c1e1f9eed9d32f4aeeb69c04896f1c0c

See more details on using hashes here.

File details

Details for the file worktree_mux-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: worktree_mux-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for worktree_mux-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bd773174f0e9a6d34f3150d566d63aa6eaf06ead54a17d7c4efee6041f2f00d5
MD5 b03bfad403b344d9b9ceba65f927b2f2
BLAKE2b-256 81ed8e3d0b6fc94755958ebdc3ada6a0504b62e3db26ae6f0cba32fb77570a30

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page