worktrunk: worktrees in ~/Work/<repo>-<branch>; lazygit worktree keys use wt

This commit is contained in:
root committed 2026-11-04 11:15:51 -05:00
1 parent 9420089c68
commit 59c1360305
5 files changed
+451 -2

No files matched your search

+1 -1
View File
@@ -50,7 +50,7 @@ These packages are declared in `.chezmoidata/packages.yaml` but have no config f
| `wget` | HTTP downloads | Not referenced by any config. |
| `zsh-syntax-highlighting` | zsh highlighting | Sourced by the zsh setup. See [Shell](../shell/README.md). |
| `ttf-victor-mono-nerd` / `font-victor-mono-nerd-font` | Nerd Font | Terminal font. See [Terminal](../terminal/README.md). |
| `suvadu`, `mandible`, `worktrunk` | Declared under `packages.shared.cargo` | Installed by [`15-tools`](../chezmoi/scripts.md#15-tools), which installs rustup first when `cargo` is missing. `mandible` backs the tmux-palette "mandible" item via `~/.local/bin/mandible-pick`. `worktrunk` is the `wt` git-worktree CLI for parallel agent workflows. |
| `suvadu`, `mandible`, `worktrunk` | Declared under `packages.shared.cargo` | Installed by [`15-tools`](../chezmoi/scripts.md#15-tools), which installs rustup first when `cargo` is missing. `mandible` backs the tmux-palette "mandible" item via `~/.local/bin/mandible-pick`. `worktrunk` is the `wt` git-worktree CLI for parallel agent workflows; `dot_config/worktrunk/private_config.toml` sets `worktree-path = "~/Work/{{ repo }}-{{ branch \| sanitize }}"`, so worktrees of ghq clones in `~/Code` land in `~/Work/<repo>-<branch>`. [lazygit](lazygit.md)'s worktree keys call it. |
Tools with their own pages in other sections: [fish](../shell/fish.md), [starship](../shell/starship.md), and [atuin](../shell/atuin.md) under Shell; [kitty](../terminal/kitty.md) and [tmux](../terminal/tmux.md) under Terminal.
+4
View File
@@ -132,6 +132,10 @@ Colors come from the CherryBlossom palette, shared with Ghostty, tmux, and omp:
| <kbd>o</kbd> | localBranches | `gh pr create --fill -w` ("start ai pull request") | |
| <kbd>C</kbd> | localBranches | `gh repo sync && gh clean-branches --force` | log |
| <kbd>O</kbd> | commits | `hub browse -- "commit/{{.SelectedLocalCommit.Hash}}"` | |
| <kbd>n</kbd> | worktrees | Prompts for a branch name, then `wt switch --create <branch> --no-cd` ("New branch + worktree in ~/Work") | terminal |
| <kbd>w</kbd> | localBranches | `wt switch <selected branch> --no-cd` ("Worktree for branch in ~/Work") | terminal |
Worktrees go to `~/Work/<repo>-<branch>`, from worktrunk's `worktree-path` (`dot_config/worktrunk/private_config.toml`). Clones stay under ghq's `~/Code`. lazygit's own worktree flow always names the directory after the branch alone, so the two worktree keys above replace the built-in ones and hand off to `wt`. `worktree.defaultPath: ~/Work` makes the built-in menus that remain, such as detached worktrees from commits and tags, offer `~/Work` as the parent directory. `ghostty-tmux` puts `~/.cargo/bin` on the tmux server's PATH so `wt` resolves in the `prefix g` popup.
`gh commit`, `gh clean-branches`, and `gh dash` are managed gh extensions (see [GitHub CLI](github-cli.md)). `gitv`, `gwm`, `wrkflw`, `github`, `livediff`, and `hub` are not installed by this repo.