Skip to content
Search

Workmux

lastmod 2025-12-15created 2025-12-152 edits

A parallel development workflow tool combining tmux and git worktree

About

  • A workflow tool that manages git worktrees and tmux windows together, automatically setting up isolated development environments
  • Lets you run multiple AI agents in parallel or develop multiple branches at the same time without conflicts
  • Natively integrated with tmux: uses tmux itself as the interface, with no separate TUI or GUI, so existing shortcuts, themes, and workflows stay as they are
  • Follows the principle "one worktree = one tmux window", providing an independent environment per branch
  • Designed around command-driven automation: the whole workflow is handled with a few commands such as add, merge, and open, without complex steps
    • add: create a new worktree and tmux window
    • merge: merge and clean up a branch
    • remove: remove a worktree without merging
    • list: show all worktrees
    • open: resume an existing worktree
    • path: print the worktree path
    • claude prune: clean up Claude settings related to deleted worktrees
    • completions: generate shell completion scripts
  • A YAML-based config file (.workmux.yaml) defines the tmux layout, file copies and symbolic links, and post-processing commands
  • Maximizes the advantages of Git worktree
    • Conflict-free parallel development across branches
    • Higher productivity through minimal context switching
    • Independent build and dependency environments maintained per branch
  • Supports a mode for creating multiple worktrees
    • Creates parallel work environments based on multiple agents (--agent) or a variable matrix (--foreach)
    • Prompt templates allow custom task instructions for each instance
  • Automatically handles package manager and build directory concerns
    • Supports symlinks for shared directories such as node_modules and target
    • Solves slow deletion in large monorepos with a background cleanup script
  • An AI agent status feature shows Claude Code progress (working, waiting, done) in the tmux window name
  • Hierarchical global/per-project configuration keeps common settings and per-project overrides separate
  • Built as a Rust-based CLI; installable via Homebrew or Cargo on macOS and Linux

See also

Favorite site

author Zer0 sitemap