v0.7.4-ironin.2
iRonin fork of herdr — rebased onto upstream v0.7.4.
Opt-in features (all default to stock behavior; each gated by a config key):
ui.tab_bar_wrap— wrap tabs onto multiple rowsui.show_scrollbar— always / auto / neverui.agent_panel_scope+ui.agent_panel_modes— scope/sort the agents panelui.tab_agent_status— agent status indicator on top tabs (incl. hook-only agents)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- in-UI iRonin fork banner on startup
Prior releases preserved: v0.7.3-ironin.1, v0.7.3-ironin.2.
Build from source
git clone https://github.com/iRonin/herdr.git && cd herdr
git checkout ronin-release # 0.7.4 base + all opt-in features
cargo build --release # binary: target/release/herdrEnable the workspace filter in ~/.config/herdr/config.toml:
[ui]
agent_panel_scope = "current"New in v0.7.4-ironin.2
Project-local workspace naming via .herdr/settings.toml. A project can pin its workspace label with a settings file committed to the repo — shared across machines, clones, and teammates, and it survives a session reset:
# .herdr/settings.toml
[workspace]
name = "my-project"- Read-path:
derive_label_from_cwdresolves[workspace] namefirst, walking up from the pane cwd (capped at the repo root). When the file is absent or malformed it falls through to the default (git repo-root name, else cwd leaf), so behavior is unchanged without the file. - Write-back: renaming a workspace (in-app or via
workspace.rename) now persists[workspace] nameto the nearest.herdr/settings.toml, creating one at the repository root if none exists. Other keys are preserved and the write is best-effort (a read-only checkout never blocks the rename).