Link

↗Link
Ggithub.com
kunchenguid/treehouse: Manage worktrees without managing worktrees.
- Treehouse manages a reusable pool of isolated git worktrees so each agent gets a clean environment without recloning.
- It preserves worktrees after use, keeping installed dependencies and build cache intact for the next session.
- When you run `treehouse`, it opens a subshell in an available worktree and returns it to the pool when you exit.
- Treehouse detects in-use worktrees automatically, including process-based usage and short-lived reservations, to avoid conflicts.
- `treehouse get --lease` creates a durable lease for a worktree without opening a subshell, so it can serve as a persistent home.
- Leased worktrees are never handed out by later `get` commands and are not removed by `prune` until explicitly returned.
- Worktrees use detached HEAD mode and are reset to whichever of the local or remote default branch is further ahead.
- Pool state is stored on disk with atomic writes; if the state file is corrupted, treehouse can rebuild entries from existing worktrees.
- By default, `treehouse prune` only removes idle, clean worktrees whose HEAD is already merged into the default branch.
- Treehouse can terminate lingering processes before returning or destroying a worktree, and `destroy` remains dry-run unless `--yes` is passed.
Your notes
Save this item to your library to add private notes.