@sma1lboy/kobe 0.9.17 → 0.9.19
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/dist/cli/index.js +306 -306
- package/dist/cli/kobe-run.js +303 -303
- package/dist/cli/rove-run.js +303 -303
- package/dist/skills/rove/SKILL.md +22 -13
- package/dist/skills/rove/references/api-flags.md +3 -3
- package/package.json +1 -1
|
@@ -286,7 +286,13 @@ command, or content tab alone does not count.
|
|
|
286
286
|
Omitting BOTH `--task-id` and `--tab` inside a task that has a dispatcher
|
|
287
287
|
targets that dispatcher's tab (see the reply rule above); otherwise the
|
|
288
288
|
target is the active task. Omitting only `--tab` targets a live engine tab
|
|
289
|
-
(`tab-1` first, then any surviving engine tab).
|
|
289
|
+
(`tab-1` first, then any surviving engine tab). **Trap: omitting only
|
|
290
|
+
`--task-id` while giving `--tab tab-N` inside a dispatched task delivers to
|
|
291
|
+
`tab-N` of the DISPATCHER's task** — the dispatcher's id fills in for
|
|
292
|
+
`--task-id`, but an explicit `--tab` is kept, so your `send --tab tab-3`
|
|
293
|
+
lands in the middle of another session's tab-3, not yours. Target your own
|
|
294
|
+
task's tab with `--task-id "$ROVE_TASK_ID" --tab tab-N`. Only when the task
|
|
295
|
+
has NO live session at all does `send`
|
|
290
296
|
auto-start the canonical engine in the task's worktree (`started: true` in
|
|
291
297
|
the result marks that fresh session). If live tabs exist but none resolves
|
|
292
298
|
as an engine, it refuses with `NO_ENGINE_TAB` — address one with `--tab
|
|
@@ -330,18 +336,19 @@ logs, dashboards), don't scatter panes for work `add` should own.
|
|
|
330
336
|
| `set-branch --task-id ID --branch B` | Rename its branch |
|
|
331
337
|
| `set-command --task-id ID --command CMD` | Change the engine launch command for the next launch |
|
|
332
338
|
| `set-status --task-id ID --status S` | Set lifecycle status |
|
|
333
|
-
| `archive --task-id ID [--archived=false]` | Archive/unarchive; stops live sessions |
|
|
334
339
|
| `pin --task-id ID [--pinned=false]` | Pin/unpin |
|
|
335
340
|
| `set-active --task-id ID` / `--none` | Change shared active task |
|
|
336
341
|
| `ensure-worktree --task-id ID` | Materialize without starting an engine |
|
|
337
|
-
| `land --task-id ID [--strategy merge\|squash] [--delete-branch] [--
|
|
342
|
+
| `land --task-id ID [--strategy merge\|squash] [--delete-branch] [--remove-worktree=false]` | Merge the task's branch into the base repo's current branch; the Worktree is removed by default (`--remove-worktree=false` keeps it). The branch always stays; dirty/self/base removals are refused, outcome in the result's `worktree` field |
|
|
338
343
|
| `delete --task-id ID [--force] [--delete-branch]` | Remove task + Worktree; the git branch stays unless `--delete-branch` (and `--force` never implies it) |
|
|
339
344
|
| `discover-adoptable --repo PATH` | Find untracked Worktrees |
|
|
340
345
|
| `adopt --repo PATH --worktree PATH` | Import a Worktree |
|
|
341
346
|
|
|
342
347
|
Once a task's work is merged, `delete` is the normal cleanup — the branch is
|
|
343
|
-
git's durable record and survives.
|
|
344
|
-
|
|
348
|
+
git's durable record and survives. There is no "hide the row without
|
|
349
|
+
deleting" verb anymore (`archive` was removed); a merged task you want out of
|
|
350
|
+
the way is a `delete`, and its branch is still there if you need the history
|
|
351
|
+
back. `--delete-branch` (or a dirty-worktree `--force`) still needs
|
|
345
352
|
explicit user authorization.
|
|
346
353
|
|
|
347
354
|
## Issue tracker
|
|
@@ -462,15 +469,17 @@ After comparing attempts, finish the round instead of leaving tasks behind:
|
|
|
462
469
|
```bash
|
|
463
470
|
# Land the winner: merge its branch into the base repo's CURRENT branch.
|
|
464
471
|
# Verify the base checkout is on the intended branch first.
|
|
465
|
-
rove api land --task-id <winner>
|
|
472
|
+
rove api land --task-id <winner>
|
|
466
473
|
|
|
467
|
-
#
|
|
468
|
-
|
|
469
|
-
|
|
474
|
+
# Delete the losers: task + worktree go away, the git branch survives
|
|
475
|
+
# (recoverable). NOT --delete-branch — that destroys history and needs
|
|
476
|
+
# explicit user authorization.
|
|
477
|
+
rove api delete --task-id <loser1>
|
|
478
|
+
rove api delete --task-id <loser2>
|
|
470
479
|
```
|
|
471
480
|
|
|
472
481
|
`land` refuses a dirty base checkout; on merge conflict it aborts cleanly and
|
|
473
|
-
returns the conflicted files for manual resolution. `delete` removes a
|
|
474
|
-
Worktree but keeps its branch (recoverable);
|
|
475
|
-
|
|
476
|
-
authorization.
|
|
482
|
+
returns the conflicted files for manual resolution. `delete` removes a
|
|
483
|
+
loser's Worktree but keeps its branch (recoverable); `--delete-branch`
|
|
484
|
+
destroys the history and is never part of closing a round without explicit
|
|
485
|
+
user authorization.
|
|
@@ -41,6 +41,7 @@ Four flag names that have actually been guessed wrong here, and what they are:
|
|
|
41
41
|
|
|
42
42
|
| Gone | Now |
|
|
43
43
|
|---|---|
|
|
44
|
+
| `archive` | `delete` (task + worktree go; the git branch survives unless `--delete-branch`) |
|
|
44
45
|
| `fan-out` | `add --count N` / `add --agents claude:2,codex:1` |
|
|
45
46
|
| `task-list` | `list` |
|
|
46
47
|
| `send-tab` | `send --tab tab-N` |
|
|
@@ -52,7 +53,7 @@ Seeing one of these in guidance means that guidance predates the rename —
|
|
|
52
53
|
## read
|
|
53
54
|
|
|
54
55
|
```text
|
|
55
|
-
list (none) every task
|
|
56
|
+
list (none) every task
|
|
56
57
|
get-task --task-id(REQ) one task + .tabs[] — the read before `send --tab`
|
|
57
58
|
collect --task-ids <csv> --repo comparison snapshot across tasks
|
|
58
59
|
inspect --task-id daemon activity + pty walk + tab snapshots
|
|
@@ -113,9 +114,8 @@ rename --task-id(REQ) --title(REQ)
|
|
|
113
114
|
set-branch --task-id(REQ) --branch(REQ)
|
|
114
115
|
set-command --task-id(REQ) --command(REQ) next launch only
|
|
115
116
|
set-status --task-id(REQ) --status(REQ)[backlog|in_progress|in_review|done|canceled|error]
|
|
116
|
-
archive --task-id(REQ) --archived(true)
|
|
117
117
|
pin --task-id(REQ) --pinned(true)
|
|
118
|
-
land --task-id(REQ) --strategy[merge|squash] --delete-branch --
|
|
118
|
+
land --task-id(REQ) --strategy[merge|squash] --delete-branch --remove-worktree(true)
|
|
119
119
|
delete --task-id(REQ) --force --delete-branch
|
|
120
120
|
```
|
|
121
121
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "@sma1lboy/kobe",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.19",
|
|
5
5
|
"description": "Rove — the agent multiplexer for your terminal. Run coding agents on parallel tasks with isolated worktrees and persistent sessions.",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"terminal",
|