worktrunk

by max-sixty

Pending

Worktrunk is a CLI for Git worktree management, designed for parallel AI agent workflows

1,716stars
61forks
Rust
Added 12/31/2025
AI Agentsagentsclaude-codecodexdeveloper-toolsgitworktrees
Installation
# Add to your Claude Code skills
git clone https://github.com/max-sixty/worktrunk
README.md
<!-- markdownlint-disable MD033 --> <h1><img src="docs/static/logo.png" alt="Worktrunk logo" width="50" align="absmiddle">&nbsp;&nbsp;Worktrunk</h1>

Docs Crates.io License: MIT CI Codecov Stars

February 2026: Worktrunk was released over the holidays, and lots of folks seem to be using it. 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. Please let me know any frictions at all; I'm intensely focused on making Worktrunk excellent, and the biggest gap is understanding how others experience using it.

Worktrunk is a CLI for git worktree management, designed for running AI agents in parallel.

Worktrunk's three core commands make worktrees as easy as branches. Plus, Worktrunk has a bunch of quality-of-life features to simplify working with many parallel changes, including hooks to automate local workflows.

Scaling agents becomes trivial. A quick demo:

Worktrunk Demo

📚 Full documentation at worktrunk.dev 📚

<!-- ⚠️ AUTO-GENERATED from docs/content/worktrunk.md#context-git-worktrees..worktrunk-makes-git-worktrees-as-easy-as-branches — edit source to update -->

Context: git worktrees

AI agents like Claude Code and Codex can handle longer tasks without supervision, such that it's possible to manage 5-10+ in parallel. Git's native worktree feature give each agent its own working directory, so they don't step on each other's changes.

But the git worktree UX is clunky. Even a task as small as starting a new worktree requires typing the branch name three times: git worktree add -b feat ../repo.feat, then cd ../repo.feat.

Worktrunk makes git worktrees as easy as branches

Worktrees are addressed by branch name; paths are computed from a configurable template.

Start...