@axelgar/opentree 0.1.24 → 0.2.0
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 +20 -8
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -25,7 +25,7 @@ opentree is a cross-platform CLI tool that manages multiple AI coding agent sess
|
|
|
25
25
|
## Requirements
|
|
26
26
|
|
|
27
27
|
- **Git** (2.5+) - for worktree support
|
|
28
|
-
- **tmux** (
|
|
28
|
+
- **tmux** (3.0+) - for session orchestration
|
|
29
29
|
- **OpenCode** (optional) - default coding agent ([install](https://github.com/anomalyco/opencode))
|
|
30
30
|
- **GitHub CLI** (`gh`) (optional) - for PR creation and issue fetching ([install](https://cli.github.com/))
|
|
31
31
|
|
|
@@ -139,7 +139,7 @@ opentree issue 42 # Workspace from issue #42
|
|
|
139
139
|
opentree issue 42 --base dev # Branch off 'dev'
|
|
140
140
|
```
|
|
141
141
|
|
|
142
|
-
Fetches the issue from GitHub
|
|
142
|
+
Fetches the issue from GitHub and auto-generates a branch name (e.g. `issue-42-add-dark-mode`). Requires the `gh` CLI.
|
|
143
143
|
|
|
144
144
|
#### List Workspaces
|
|
145
145
|
|
|
@@ -254,6 +254,13 @@ hour ago doesn't look the same as one that just landed:
|
|
|
254
254
|
|
|
255
255
|
The status bar tallies the ones that want you: `N waiting` and, if any, `N stalled`.
|
|
256
256
|
|
|
257
|
+
Pane activity also rescues a stuck badge in both directions: a long-running
|
|
258
|
+
`in_progress` with a quiet status file but a still-active pane stays
|
|
259
|
+
`working…` instead of reading `stalled`, and a `needs_input` with pane output
|
|
260
|
+
*after* the status write (e.g. you approved a permission prompt, which isn't
|
|
261
|
+
a new top-level message) reads `working…` again instead of staying wedged on
|
|
262
|
+
`waiting`.
|
|
263
|
+
|
|
257
264
|
**One-step setup.** Let opentree install the hooks for you:
|
|
258
265
|
|
|
259
266
|
```bash
|
|
@@ -268,9 +275,12 @@ launches, so the hooks write to the right worktree and stay inert (a no-op) in
|
|
|
268
275
|
any session opentree didn't start. That means you install once, globally, and it
|
|
269
276
|
just works across all your worktrees.
|
|
270
277
|
|
|
271
|
-
`opentree agents setup <agent>` maps a new prompt
|
|
272
|
-
permission prompt / notification / turn-end →
|
|
273
|
-
|
|
278
|
+
`opentree agents setup <agent>` maps a new prompt and a completed tool call →
|
|
279
|
+
`in_progress`, and a permission prompt / notification / turn-end →
|
|
280
|
+
`needs_input`. The tool-completion hook is what flips the badge back to
|
|
281
|
+
`working…` after you approve a permission prompt mid-turn, since that isn't a
|
|
282
|
+
new prompt itself. The bundled hooks report `status` only; the optional
|
|
283
|
+
`message` is for hand-written or custom hooks.
|
|
274
284
|
|
|
275
285
|
**GitHub Copilot** and **Pi** can't be fully automated (Copilot has no
|
|
276
286
|
"waiting for input" event; Pi's notify config holds a single script) — running
|
|
@@ -299,9 +309,7 @@ e.g. a Claude Code hook in `~/.claude/settings.json`:
|
|
|
299
309
|
|
|
300
310
|
3. **State Persistence**: Workspace metadata (branch, created time, agent, issue number) stored in `.opentree/state.json`.
|
|
301
311
|
|
|
302
|
-
4. **Agent Integration**: When creating a workspace, opentree launches your configured agent
|
|
303
|
-
|
|
304
|
-
5. **Issue Context**: When using `opentree issue`, a `TASK.md` file is written to the worktree containing the issue details, giving the AI agent immediate context.
|
|
312
|
+
4. **Agent Integration**: When creating a workspace, opentree launches your configured agent inside the tmux window, ready to code. With no agent configured, it uses the first supported agent found on your PATH.
|
|
305
313
|
|
|
306
314
|
## Workflow Example
|
|
307
315
|
|
|
@@ -346,6 +354,10 @@ Install tmux:
|
|
|
346
354
|
- **Ubuntu/Debian**: `sudo apt install tmux`
|
|
347
355
|
- **Arch**: `sudo pacman -S tmux`
|
|
348
356
|
|
|
357
|
+
### "opentree requires tmux >= 3.0"
|
|
358
|
+
|
|
359
|
+
opentree sets the agent's environment via `tmux new-window -e`, which needs tmux 3.0 or newer. Upgrade tmux with your package manager (e.g. `brew upgrade tmux`).
|
|
360
|
+
|
|
349
361
|
### "Error: opencode not found"
|
|
350
362
|
|
|
351
363
|
Install OpenCode from [github.com/anomalyco/opencode](https://github.com/anomalyco/opencode), or configure a different agent in `opentree.toml`.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@axelgar/opentree",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Git worktree manager CLI for orchestrating parallel AI coding sessions",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
"bin/opentree"
|
|
16
16
|
],
|
|
17
17
|
"optionalDependencies": {
|
|
18
|
-
"@axelgar/opentree-linux-x64": "0.
|
|
19
|
-
"@axelgar/opentree-linux-arm64": "0.
|
|
20
|
-
"@axelgar/opentree-darwin-x64": "0.
|
|
21
|
-
"@axelgar/opentree-darwin-arm64": "0.
|
|
18
|
+
"@axelgar/opentree-linux-x64": "0.2.0",
|
|
19
|
+
"@axelgar/opentree-linux-arm64": "0.2.0",
|
|
20
|
+
"@axelgar/opentree-darwin-x64": "0.2.0",
|
|
21
|
+
"@axelgar/opentree-darwin-arm64": "0.2.0"
|
|
22
22
|
},
|
|
23
23
|
"engines": {
|
|
24
24
|
"node": ">=18"
|