feat(#2067): choom takes optional session id to resume, else blank session

This commit is contained in:
damocles 2026-06-28 23:25:58 +02:00 committed by mara
commit c5847e25ea
3 changed files with 51 additions and 23 deletions

View file

@ -379,13 +379,14 @@ Generate the federation peer-config block for THIS hive — the nix a peer opera
Open an interactive Claude session inside an agent container.
Execs `machinectl shell <name>@h-<name>` running claude as the agent user from its state dir, with the same settings / MCP config / system prompt the harness uses. Each launch starts a fresh, named ("choom") session so it never collides with the harness's live session in the same project dir. Requires root + a running container.
Execs `machinectl shell <name>@h-<name>` running claude as the agent user from its state dir, with the same settings / MCP config / system prompt the harness uses. Without a session id you get a fresh blank session each launch; pass one to resume an earlier choom session (`--resume <id>`). Either way it never collides with the harness's live session — the harness pins its own session id via `--resume`, so a blank choom session is invisible to it. Requires root + a running container.
**Usage:** `hivectl choom <NAME>`
**Usage:** `hivectl choom <NAME> [SESSION]`
###### **Arguments:**
* `<NAME>` — Agent name (e.g. `damocles`, `iris`)
* `<SESSION>` — Optional session id to resume (`claude --resume <id>`). Omit for a fresh blank session

View file

@ -127,13 +127,16 @@ running claude from the agent's state dir. Requires root (same as all
`machinectl shell` operations).
```bash
hivectl choom iris # fresh Claude session named "choom" in iris's container
hivectl choom iris # fresh blank Claude session in iris's container
hivectl choom iris <session-id> # resume an earlier choom session
```
Each launch starts a fresh session named `choom` (claude mints its own
id), so it never collides with the harness's live session in the same
project dir. The operator can rejoin a prior choom session later with
`claude --resume choom`. The container must be running.
With no session id, claude starts a fresh blank session (mints its own
id). Pass a session id to resume it (`claude --resume <id>`); you can
rename it in-session. Either way choom never collides with the harness's
live session in the same project dir: the harness pins its own id via
`--resume`, so a blank choom session is invisible to it. The container
must be running.
choom reproduces the harness's own claude invocation so the operator
lands in a faithful copy of the agent's environment: