@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.
Files changed (2) hide show
  1. package/README.md +20 -8
  2. 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** (2.0+) - for session orchestration
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, auto-generates a branch name (e.g. `issue-42-add-dark-mode`), and writes a `TASK.md` file with the issue title, labels, and description into the worktree so the AI agent can start working immediately. Requires the `gh` CLI.
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 `in_progress` and a
272
- permission prompt / notification / turn-end → `needs_input`. The bundled hooks
273
- report `status` only; the optional `message` is for hand-written or custom hooks.
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 (default: OpenCode) inside the tmux window, ready to code.
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.1.24",
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.1.24",
19
- "@axelgar/opentree-linux-arm64": "0.1.24",
20
- "@axelgar/opentree-darwin-x64": "0.1.24",
21
- "@axelgar/opentree-darwin-arm64": "0.1.24"
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"