oh-my-worktree 0.10.3 → 0.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +36 -7
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -26,14 +26,18 @@ Open `owt`, pick a worktree, create another one, delete the stale ones, fetch, p
|
|
|
26
26
|
|
|
27
27
|
## Install
|
|
28
28
|
|
|
29
|
+
Current release with Cargo (`v0.13.0`):
|
|
30
|
+
|
|
29
31
|
```bash
|
|
30
|
-
|
|
32
|
+
cargo install --git https://github.com/dding-g/oh-my-worktree --tag v0.13.0 --force
|
|
31
33
|
```
|
|
32
34
|
|
|
33
|
-
|
|
35
|
+
Prebuilt binaries are attached to the latest [GitHub Release](https://github.com/dding-g/oh-my-worktree/releases/latest).
|
|
36
|
+
|
|
37
|
+
This npm wrapper is also supported when the npm registry package is current:
|
|
34
38
|
|
|
35
39
|
```bash
|
|
36
|
-
|
|
40
|
+
npm install -g oh-my-worktree
|
|
37
41
|
```
|
|
38
42
|
|
|
39
43
|
From source:
|
|
@@ -122,6 +126,25 @@ Then use the TUI:
|
|
|
122
126
|
|
|
123
127
|
The `PR` column is GitHub-only and best-effort. No PR, non-GitHub remotes, missing auth, network failures, and unknown states all show `-` so the worktree list stays fast and reliable.
|
|
124
128
|
|
|
129
|
+
## Plain CLI for agents
|
|
130
|
+
|
|
131
|
+
Use noun command groups when you need stable, non-TUI output:
|
|
132
|
+
|
|
133
|
+
```bash
|
|
134
|
+
owt worktree list
|
|
135
|
+
owt worktree create feature/login --base main
|
|
136
|
+
owt worktree delete feature/login --branch --force
|
|
137
|
+
owt worktree prune
|
|
138
|
+
owt worktree prune --dry-run
|
|
139
|
+
owt pr status --branch feature/login
|
|
140
|
+
owt commit tree -n 12
|
|
141
|
+
owt search login
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Agent bootstrap assets are versioned in the repository under `.agents/`: use `.agents/prompts/install-owt.md`, `.agents/skills/owt-install/SKILL.md`, and `.agents/skills/owt-worktree/SKILL.md` so worktree handling goes through `owt`.
|
|
145
|
+
|
|
146
|
+
`worktree prune` logs every worktree decision as tab-separated output. Normal mode removes non-current clean worktrees whose branch is already merged into `HEAD`, except the `HEAD` branch worktree itself; `--dry-run` previews stale metadata pruning, prompts through removable candidates, and records selected candidates without deleting them.
|
|
147
|
+
|
|
125
148
|
## Shell integration
|
|
126
149
|
|
|
127
150
|
Install the shell helper:
|
|
@@ -130,7 +153,7 @@ Install the shell helper:
|
|
|
130
153
|
owt setup
|
|
131
154
|
```
|
|
132
155
|
|
|
133
|
-
Reload your shell. After that, pressing `Enter` in the TUI exits `owt` and moves the current shell into the selected worktree. Without shell integration, `owt` still prints the
|
|
156
|
+
Reload your shell. After that, pressing `Enter` in the TUI exits `owt` and moves the current shell into the selected worktree. When you create a worktree from the TUI, `owt` exits the TUI first, creates the worktree, runs copy/post-add/tmux steps in the normal terminal, then hands off to the new worktree path. Without shell integration, `owt` still prints the target path for wrapper scripts and manual use.
|
|
134
157
|
|
|
135
158
|
## Configuration
|
|
136
159
|
|
|
@@ -147,6 +170,8 @@ editor = "code"
|
|
|
147
170
|
terminal = "Ghostty"
|
|
148
171
|
worktree_root = "~/.owt/worktree"
|
|
149
172
|
copy_files = [".env", ".envrc"]
|
|
173
|
+
post_add_script = ".owt/post-add.sh"
|
|
174
|
+
tmux_worktree_mode = false
|
|
150
175
|
run_post_add_script_in_tmux = false
|
|
151
176
|
```
|
|
152
177
|
|
|
@@ -157,8 +182,12 @@ Useful options:
|
|
|
157
182
|
| `editor` | Command used by `o` |
|
|
158
183
|
| `terminal` | Terminal app used by `t` |
|
|
159
184
|
| `worktree_root` | Root for new worktrees in regular repositories |
|
|
160
|
-
| `copy_files` | Files copied into new worktrees |
|
|
161
|
-
| `
|
|
185
|
+
| `copy_files` | Files copied into new worktrees. Only files are copied; copy problems are shown as warnings after creation. |
|
|
186
|
+
| `post_add_script` | Script path for post-add setup. Relative paths use the current effective project root. |
|
|
187
|
+
| `tmux_worktree_mode` | Open a tmux pane in each new worktree and focus an existing matching pane on `Enter`. |
|
|
188
|
+
| `run_post_add_script_in_tmux` | Run the post-add script in detached tmux after creating a worktree. Only global config can enable this. |
|
|
189
|
+
|
|
190
|
+
Project config in `.owt/config.toml` can override safe values, including `post_add_script`, but it cannot enable automatic post-add execution. A regular linked worktree only reads its own project config; it does not inherit an ancestor `.owt/config.toml`.
|
|
162
191
|
|
|
163
192
|
## Commands
|
|
164
193
|
|
|
@@ -175,7 +204,7 @@ Useful options:
|
|
|
175
204
|
- Git 2.5+
|
|
176
205
|
- A regular Git repository or a `.bare` worktree layout
|
|
177
206
|
- Optional: GitHub CLI `gh` for PR status
|
|
178
|
-
- Optional: tmux for post-add setup scripts
|
|
207
|
+
- Optional: tmux for worktree pane mode and post-add setup scripts
|
|
179
208
|
|
|
180
209
|
## License
|
|
181
210
|
|