Skip to content

v0.7.5-ironin.5

Latest

Choose a tag to compare

@iRonin iRonin released this 30 Jul 14:21

iRonin fork of herdr — rebased onto upstream v0.7.5.

Opt-in features (all default to stock behavior; each gated by a config key):

  • ui.tab_bar_wrap — wrap tabs onto multiple rows
  • ui.show_scrollbar — always / auto / never
  • ui.agent_panel_scope + ui.agent_panel_modes — scope/sort the agents panel
  • ui.tab_agent_status — agent status indicator on top tabs (incl. hook-only agents)
  • ui.tab_agent_context — context-usage % suffix on top tabs (mirrors the Agents-pane value)
  • ui.tab_close_button — Alt-click the x at the end of a tab's label to close it
  • blocked agents get a read/acknowledged sub-state (any direct input marks read; hollow red dot)
  • ui.prompt_new_tab_name + Alt-click new-tab inversion
  • resume replays recorded launch_argv
  • reused-pane agent detection fix (hook-only graceful-restart reacquisition)
  • session.stop_timeout_ms — configurable server-stop wait (default 15000)
  • herdr server restart — stop→start→attach, with same-pane guard
  • project-local .herdr/settings.toml [workspace] name — pin/persist the workspace label
  • in-UI iRonin fork banner on startup

Prior releases preserved: v0.7.3-ironin.1, v0.7.3-ironin.2, v0.7.4-ironin.1, v0.7.4-ironin.2, v0.7.5-ironin.1, v0.7.5-ironin.2, v0.7.5-ironin.3, v0.7.5-ironin.4.

Build from source

git clone https://github.com/iRonin/herdr.git && cd herdr
git checkout ronin-release   # 0.7.5 base + all opt-in features
cargo build --release        # binary: target/release/herdr

New in v0.7.5-ironin.2

ui.tab_agent_context (default off) — appends the highest-attention agent's context-window usage as a N% / ~N% suffix on its top tab, mirroring exactly the value shown in the Agents pane (single source of truth, tolerant internal extraction). Same tab-selection as ui.tab_agent_status; width flows correctly through single-row and wrapped layouts, hit-testing, and scrolling. Fully herdr-internal — no reporter, token, or protocol change.

[ui]
tab_agent_context = true

New in .3:

  • auto-read completions for panes carrying the auto_read metadata token (feat/agent-auto-read): a pane whose agent reports the token declares its completions need no attention — completion marks the pane seen and skips the finished toast/sound (blocked still notifies). For unattended supervised sub-agents.
  • test: workspace-id length assertion made suite-size independent (was breaking the serial suite past the base32 boundary).

New in v0.7.5-ironin.4

ui.tab_close_button (default off) — renders an x in the last cell of every tab label in the desktop tab bar. Alt/Option-click the x to close that tab immediately, without a confirmation prompt; clicking it without Alt activates the tab as usual, and Alt-clicking anywhere else on the label keeps the normal press/drag behavior. Works on background tabs without switching focus first. Closing the last tab of a workspace closes the workspace and still honors the worktree-group confirmation (ui.confirm_close). Long tab names truncate so the marker always lands on the last cell; composes with ui.tab_bar_wrap, ui.tab_agent_status, and ui.tab_agent_context.

[ui]
tab_close_button = true

New in v0.7.5-ironin.5

Blocked-agent read/acknowledged sub-state (feat/blocked-read, previously unreleased) — a blocked (needs-attention) agent now mirrors the idle done/read distinction. A pane that blocks while you are looking at it is immediately read; one that blocks in a background/unfocused tab stays unread until you interact with it. Any direct input to a blocked pane — keystroke, paste, or a command such as /rewind — acknowledges it: it renders as a hollow red dot, drops out of the attention sort and the navigator Blocked filter, and stops counting in activity summaries, while still being blocked rather than idle. Also: submitting /compact to an agent pane optimistically shows it as Working for up to 90s (compaction performs work without emitting a lifecycle event). No config key; the new semantics are the default.