treehouse
A CLI that manages a pool of reusable, isolated git worktrees per repository, so each coding-agent session gets its own environment instantly, with dependencies and build cache preserved between uses.
treehouse manages a pool of git worktrees for a repository, giving each task or agent session a clean, isolated worktree instantly instead of a fresh clone or a shared checkout. Worktrees are preserved in the pool when a session finishes, with installed dependencies and build cache intact for reuse, and in-use worktrees are automatically detected so agents never step on each other.
Worktrees default to detached HEAD, resetting to whichever of the local or remote default branch is further ahead, or can check out a new named branch. The pool's root defaults to a hidden home directory but can be kept inside the project instead, and the base branch used to cut new worktrees is configurable per repository or per invocation.
It is written in Go and installs via a shell script, Nix, go install, or from source.