@vintcessun: 让多个 coding agent 并行不难,难的是别让目录、分支、依赖缓存和收尾变成人肉调度。 https://github.com/max-sixty/worktrunk… Worktrunk 用 Rust 把 Git worktree…
摘要
Worktrunk 是一个用 Rust 构建的 Git worktree 管理 CLI 工具,旨在简化并行运行多个 coding agent 的调度问题,提供 hooks 和缓存共享等功能。
查看缓存全文
缓存时间: 2026/09/13 07:04
让多个 coding agent 并行不难,难的是别让目录、分支、依赖缓存和收尾变成人肉调度。
https://github.com/max-sixty/worktrunk…
Worktrunk 用 Rust 把 Git worktree 封成按分支操作的 CLI,覆盖创建、切换、状态汇总、合并与清理,还接入 Claude Code、Codex 等 Agent 的活动标记。Hooks 和 reflink 共享构建缓存,省时间也省磁盘;JSON 输出适合再接自动化。它没发明新隔离层,但把原本零碎的 Infra 胶水做成了一套可靠工作流。
max-sixty/worktrunk
Source: https://github.com/max-sixty/worktrunk
Worktrunk
September 2026: Worktrunk was released at the start of the year, and has quickly become the most popular git worktree manager. It’s built with love (there’s no slop!). Please let me know any frictions at all; I’m intensely focused on continuing to make Worktrunk excellent, and the biggest help is folks posting problems they perceive.
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.
A quick demo:

📚 Full documentation at worktrunk.dev 📚
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 gives 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. Commands that take a branch also accept the path of the worktree it is checked out in.
Start with the core commands
Core commands:
| Task | Worktrunk | Plain git |
|---|---|---|
| Switch worktrees | wt switch feat |
cd ../repo.feat |
| Create + start Claude | wt switch -c -x claude feat |
|
| Clean up | wt remove |
|
| List with status | wt list |
git worktree list (paths only) |
Expand into the more advanced commands as needed
Workflow automation:
- Hooks — run commands on create, pre-merge, post-merge, etc
- LLM commit messages — generate commit messages from diffs
- Merge workflow — squash, rebase, merge, clean up in one command
- Interactive picker — browse worktrees with live diff and log previews
- Share build caches — ten worktrees get
target/,node_modules/, etc without building or copying them (on APFS, btrfs, and XFS) wt list --full— CI status and AI-generated summaries per branch- PR checkout —
wt switch pr:123to jump straight to a PR’s branch - Dev server per worktree —
hash_porttemplate filter gives each worktree a unique port - Aliases & per-branch variables — custom
wt <name>commands and branch-scoped state for hook templates - …and lots more
Multiple parallel agents, same simple commands:

Install
Homebrew (macOS & Linux):
brew install worktrunk && wt config shell install
Shell integration allows commands to change directories.
Cargo:
cargo install worktrunk && wt config shell install
Windows & other
Windows. wt defaults to Windows Terminal’s command, so Winget additionally installs Worktrunk as git-wt to avoid the conflict:
winget install max-sixty.worktrunk
git-wt config shell install
Alternatively, disable Windows Terminal’s alias (Settings → Apps → Advanced app settings → App execution aliases → “Terminal”/“Terminal Preview”) to use wt directly.
Free code signing provided by SignPath.io, certificate by SignPath Foundation — policy.
Arch Linux:
sudo pacman -S worktrunk && wt config shell install
Conda / Pixi (community-maintained feedstock):
conda install -c conda-forge worktrunk && wt config shell install
Or with Pixi: pixi global install worktrunk && wt config shell install.
Quick start
Create a worktree for a new feature:
$ wt switch --create feature-auth
✓ Created branch feature-auth from main and worktree @ ~/repo.feature-auth
This creates a new branch and worktree, then switches to it. Do your work, then check all worktrees with wt list:
$ wt list
Branch Status HEAD± main↕ main…± Remote⇅ Commit Age Message
@ feature-auth + ↑ +27 -8 ↑1 +31 4bc72dc 2h Add authenticati…
^ main ^⇡ ⇡1 0e631ad 1d Initial commit
○ Showing 2 worktrees, 1 with changes, 1 ahead, hidden: Path
The @ marks the current worktree. + means staged changes, ↑1 means 1 commit ahead of main, ⇡ means unpushed commits.
When done, either:
PR workflow — commit, push, open a PR, merge via GitHub/GitLab, then clean up:
wt step commit # commit staged changes
gh pr create # or glab mr create
wt remove # after PR is merged
Local merge — squash, rebase onto main, fast-forward merge, clean up:
$ wt merge main
◎ Generating commit message and committing changes... (2 files, +53, no squashing needed)
Add authentication module
✓ Committed changes @ a1b2c3d
◎ Merging 1 commit to main @ a1b2c3d (no rebase needed)
* a1b2c3d Add authentication module
auth.rs | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
lib.rs | 2 ++
2 files changed, 53 insertions(+)
✓ Merged to main (1 commit, 2 files, +53)
◎ Removing feature-auth worktree & branch in background (same commit as main, _)
○ Switched to worktree for main @ ~/repo
For parallel agents, create multiple worktrees and launch an agent in each:
wt switch -x claude -c feature-a -- 'Add user authentication'
wt switch -x claude -c feature-b -- 'Fix the pagination bug'
wt switch -x claude -c feature-c -- 'Write tests for the API'
The -x flag runs a command after switching; arguments after -- are passed to it. Configure post-start hooks to automate setup (install deps, start dev servers).
Next steps
- Learn the core commands:
wt switch,wt list,wt merge,wt remove - Set up hooks for automated setup
- Explore LLM commit messages, interactive picker, Claude Code integration, CI status & PR links
- Browse tips & patterns for recipes: aliases, dev servers, databases, agent handoffs, and more
- Extending Worktrunk — customize workflows with hooks & aliases
- Run
wt --helporwt <command> --helpfor quick CLI reference
Further reading
- Claude Code: Best practices for agentic coding — Anthropic’s official guide, including the worktree pattern
- Shipping faster with Claude Code and Git Worktrees — incident.io’s workflow for parallel agents
- Git worktree pattern discussion — Community discussion in the Claude Code repo
- @DevOpsToolbox’s video on Worktrunk
- git-worktree documentation — Official git reference
Contributing
- ⭐ Star the repo
- Tell a friend about Worktrunk
- Open an issue — feedback, feature requests, even a small friction or imperfect user message, or a worktree pain not yet solved
- Share: X · Reddit · LinkedIn
Running the tests
cargo test
The shell integration tests need bash, zsh, fish, nushell, and pwsh, plus jq:
cargo test --test integration --features shell-integration-tests
📚 Full documentation at worktrunk.dev 📚
Star history
相似文章
@mogician301: https://x.com/mogician301/status/2071841989751112147
文章介绍了 git worktree 在 AI 时代进行多任务并行开发的优势,以及作者开发的 cc-launch 工具如何通过自动初始化、统一管理等解决 worktree 的使用痛点,提升开发效率。
max-sixty/worktrunk
Worktrunk 是一款用于 Git 工作树管理的命令行工具,专为并行运行 AI 代理而设计,具备自动化和简化处理多并行变更的功能。
@QingQ77: 为编码 Agent 提供基于 tree-sitter 的结构化、字节精确、低 token 消耗的代码库访问能力 https://github.com/Entelligentsia/grove… 用 Rust 写了一个双面工具:既当 CLI…
Grove is a Rust-powered tool that uses tree-sitter to provide coding agents with structured, byte-precise, token-efficient access to codebases, supporting 27 languages via CLI and MCP server.
@realchendahuang: Once AI multiplies coding throughput by several times, how should we manage local development environments, concurrent …
本文系统介绍了Git Worktree的原理、用法及其在AI编码时代帮助开发者管理并发任务和本地开发环境的应用。
@yibie: 《Clean Code》作者把软件工程纪律拆成了 agent 流水线——每个质量门一个独立角色,串起来就是一条完整的开发流程。 SwarmForge(Uncle Bob 的新项目):整套协调机制就是文件系统,agent 之间靠 git 提…
Robert C. Martin(《Clean Code》作者)发布了 SwarmForge:一个基于 tmux、git worktree 和 prompt 文件的极简多 agent 编排框架,把所有协调机制降为文件系统操作,并支持 two-pack/four-pack/six-pack 三条质量门流水线。