Skip to content

Releases: Sma1lboy/rove

v0.8.118

Choose a tag to compare

@github-actions github-actions released this 16 Aug 07:39

Patch Changes

  • 96279b9: Scratch temp shell tasks (issue #33 step 2): a PROPOSED ctrl+a t opens a bare shell as a scratch directory task, shown in a new Scratch section at the very top of the sidebar. Zero-ceremony lifecycle — the shell exiting removes the row. A scratch row earns a home by being renamed, or automatically: when a coding harness is confirmed live in the shell and its cwd settles inside a git repo, the row migrates into that repo's project group (selection follows, no dialogs, no focus steal). Unfamiliar repos get a non-modal save-as-project hint.

v0.8.117

Choose a tag to compare

@github-actions github-actions released this 16 Aug 07:31

Patch Changes

  • cf5f671: Rove skill v25: composing --command now treats the model as a conscious either/or — omit any model flag by default (the user's engine default is fresher than the agent's training-data model list), pin one only when the user named it this turn, passing their string verbatim. Also repairs a truncated sentence in the parallel-round rules.

v0.8.116

Choose a tag to compare

@github-actions github-actions released this 16 Aug 06:55

Patch Changes

  • e413a37: Remove the sidebar ⚡ engine badge introduced with the live shell-tab identity: the row label already tracks the live OSC title, so the badge was a second parallel channel for the same information — and it lit redundantly on engine tabs running their own vendor. The data layer stays: liveVendor still feeds get-task/tab-snapshot from the live foreground walk, and a shell tab with a confirmed engine still renders through the same row path as an engine tab.

v0.8.115

Choose a tag to compare

@github-actions github-actions released this 16 Aug 06:42

Patch Changes

  • 975d35f: Shell tabs now carry a live engine identity (issue #33 step 1): the sidebar probes every hosted session's process tree — not just tabs mounted in this TUI — so a hand-typed claude/codex in any shell tab lights an engine badge on its row, and dims when the engine exits (debounced against mid-restart flicker). rove api get-task's per-tab liveVendor now reflects a fresh foreground walk for live tabs instead of the last TUI-recorded value.

v0.8.114

Choose a tag to compare

@github-actions github-actions released this 16 Aug 06:32

Patch Changes

  • 42ecc09: Kimi sessions started from the TUI and the web dashboard now receive their first message (issue #25 follow-up).

    rove api send/add --prompt already pasted kimi's first message post-spawn (kimi's positional argv slot is a subcommand, so an argv prompt exits the engine Unknown command), but the TUI's own spawn path still pinned argv — a quick-fork, issue-chat, or cross-engine-handoff prompt on a kimi tab still killed the session — and the web engine-spec path silently dropped a repo's init-prompt. The tab spawn now surfaces the message as firstMessage instead of appending it to the launch line, the hosted PTY bracketed-pastes it once the engine process is up (fresh spawns only — a reattach never redelivers), and the web PTY sidecar does the same for spec-carried messages.

v0.8.113

Choose a tag to compare

@github-actions github-actions released this 16 Aug 05:56

Patch Changes

  • 4de2d31: Verify session identity before recording a dispatcher (issue #24)

    $ROVE_TASK_ID/$ROVE_TAB_ID are ordinary environment variables, so any
    detached descendant of an engine tab — a Claude Code background process, for
    instance — keeps exporting that tab's ids indefinitely. Every task such a
    process created recorded a dispatcher pointing at a stranger's session, which
    is where finished workers sent their reports.

    add, send, and the new-task coda now cross-check the env against the pty
    host before believing it: the named tab must be alive AND its shell must be an
    ancestor of the calling process. Unverified means no dispatcher, no
    [KOBE PEER] provenance, and no spawner address in the worker's own
    instructions — with an identityWarning on the verb's JSON result so the
    degrade is visible rather than silent.

v0.8.112

Choose a tag to compare

@github-actions github-actions released this 16 Aug 05:41

Patch Changes

  • 680dbb8: Record per-turn agent telemetry. Every completed engine turn now leaves an attributed record — task, tab, engine, model, start/end time, and token usage — read back with rove api agent-turns (filter by task or repo; the response carries a totals roll-up alongside the page).

    The turn data is engine-owned: each adapter lifts it from its own transcript, so nothing outside the engine layer parses a vendor's files. Claude Code ships the first reader; other engines contribute nothing until theirs lands.

v0.8.111

Choose a tag to compare

@github-actions github-actions released this 16 Aug 05:13

Patch Changes

  • 998ca4e: rove api picks engines by COMMAND, not by a vendor enum.

    add and send --tab new now take --command — an engine id from the new
    engine-list verb, or a full command line Rove runs verbatim
    (--command "codex --search"). The protocol Rove speaks to it (transcript
    reader, workspace-trust pre-answer, first-message delivery) is derived from
    the command's argv[0] rather than declared beside it, falling back to a
    generic protocol that still launches and delivers. Nothing validates an
    engine's flags: probe an unfamiliar CLI with <cmd> --help first.

    • engine-list (new, offline): every engine Rove can launch with the
      RAW command it runs, its display name, and its resolved protocol. Copy an
      entry into --command verbatim, or edit a flag first.
    • fan-out is removed — parallel attempts live on add --count N (and
      --agents claude:2,codex:1), same groupId / #i/N / partial-failure
      contract as before.
    • set-vendor is removed, replaced by set-command.
    • Both removed verbs return UNKNOWN_VERB with the replacement in
      nextCommandArgs — no silent aliases.
    • Custom engines are now named PRESETS: Settings → Engines → + Add engine
      also asks for the protocol (engineProtocol.<id>), so a wrapper around a
      built-in keeps history, trust, and delivery instead of degrading to generic.

    Bundled agent skill bumped to v24 for the new vocabulary.

v0.8.110

Choose a tag to compare

@github-actions github-actions released this 16 Aug 04:38

Patch Changes

  • 93e6347: Fix shell env inconsistency (#26): pane-open --command, plugin panes, and the automation precheck now spawn through the same resolveLoginShell() + -ilc integration path engine tabs already use, instead of a bare sh -lc / non-interactive -lc that skips .zshrc/.bashrc. Panes and prechecks see the same PATH/exports as the engine they accompany.
  • a278546: Fix the perf:golden park-heap-reclaim probe's machine-load flake (bimodal 2% vs 52%). The sweep's quiet gate (PARK_QUIET_MS) refused to park the just-filled tabs, so nothing ever parked and the old %-of-total-heap formula was really measuring GC laziness — ambient, load-dependent. The probe now fast-forwards the sweep clock so parking actually happens, counts typed-array backing stores (extraMemorySize, where xterm cells live) in the heap reading, and reports a self-normalizing ratio — heap freed as a share of the growth the 10 tabs themselves caused — from the median of three settled GC samples.
  • 2f6d7d3: Fix a pty-host blip resurrecting an already-corrected idle tab as a phantom running dot. Once observation disproves a stale hook running (ESC interrupt, dead engine), the hook slot is now retired instead of left to win the next ungated arbitration — and its lapse watchdog no longer keeps re-arming that claim for the length of a host outage.

v0.8.108

Choose a tag to compare

@github-actions github-actions released this 16 Aug 03:48

Patch Changes

  • 629b010: Remove the sidebar repo context filter (ctrl+p) shipped in #459: the chord shadowed in-terminal previous-history and the eventual session concept is a combination of repos, not a per-repo filter. Task-lifecycle changes from #459 (delete keeps the branch, archive→GC design) are untouched.