worktrunk 0.2.1

A Git worktree manager for trunk-based development
Documentation

Docs Crates.io License: MIT CI Codecov

December 2025: I've been using Worktrunk as my daily driver, and am releasing it as Open Source this week; I think folks will find it really helpful. It's built with love (there's no slop!). If social proof is helpful: I also created PRQL (10k stars) and am a maintainer of Xarray (4k stars), Insta, & Numbagg.

Worktrunk is a CLI for git worktree management, designed for parallel AI agent workflows. Git worktrees give each agent an isolated branch and directory; Worktrunk adds branch-based navigation, unified status, and lifecycle hooks. Creating a new agent workspace is as immediate as git switch.

Here's a quick demo:

Worktrunk Demo

πŸ“š Full documentation at worktrunk.dev πŸ“š

Git worktrees are a great primitive

For context, AI agents like Claude Code and Codex can increasingly handle longer tasks without supervision, and it's very practical to run several in parallel. Git worktrees provide each agent with its own working directory, avoiding agents stepping on each other's changes.

But the git worktree UX is clunky. Even something as simple as "start a new worktree" is verbose: git worktree add -b feature ../repo.feature, then cd ../repo.feature.

Worktrunk makes git worktrees easy

Worktrunk makes git worktrees easy to use β€” branch-based navigation, unified status, and workflow automation.

Core commands:

Task Worktrunk Plain git
Switch worktrees wt switch feature cd ../repo.feature
Create + start Claude wt switch -c -x claude feature git worktree add -b feature ../repo.feature && cd ../repo.feature && claude
Clean up wt remove cd ../repo && git worktree remove ../repo.feature && git branch -d feature
List with status wt list git worktree list (paths only)

Workflow automation:

Core commands in practice

Create a worktree for a new task:

$ wt switch --create fix-auth
βœ… Created new worktree for fix-auth from main at ../repo.fix-auth

Switch to an existing worktree:

$ wt switch feature-api
βœ… Switched to worktree for feature-api at ../repo.feature-api

See all worktrees at a glance:

$ wt list
  Branch       Status        HEADΒ±    main↕  Path                Remoteβ‡…  Commit    Age   Message
@ feature-api  +   ↕⇑     +54   -5   ↑4  ↓1  ./repo.feature-api   ⇑3      ec97decc  30m   Add API tests
^ main             ^β‡…                        ./repo               ⇑1  ⇣1  6088adb3  4d    Merge fix-auth:…
+ fix-auth         ↕|                ↑2  ↓1  ./repo.fix-auth        |     127407de  5h    Add secure token…

βšͺ Showing 3 worktrees, 1 with changes, 2 ahead

Clean up when done:

$ wt remove
πŸ”„ Removing feature-api worktree & branch in background (already in main)

Install

Homebrew (macOS & Linux):

$ brew install max-sixty/worktrunk/wt
$ wt config shell install  # allows commands to change directories

Cargo:

$ cargo install worktrunk
$ wt config shell install

Next steps

Further reading

Contributing

πŸ“š Full documentation at worktrunk.dev πŸ“š