multi-remote 0.7.3 build 6 (fork)
Pre-releasePersonal fork build of herdr 0.7.3 with multi-remote server support, ported from icedac's PoC for upstream discussion #515. Supersedes multi-remote-5. All four binaries were built fresh at commit cd8d3f9 — the linux pair on pristine CI runners, the macOS pair locally after a full cargo clean (8.7 GiB wiped) and zig cache wipe.
What's included
- Everything in upstream herdr 0.7.3, plus the Grok Build agent integration from this fork.
- Multi-server support (unix only): register secondary herdr servers (
local:<session>or ssh targets) once via menu → add remote, then work across all of them from one unified sidebar — host banners, click-to-switch focus, drag reorder, a server picker when creating a workspace from theallscope, and remote management from the menu. Secondary disconnects retry with backoff and never disturb the main session.
Changed since multi-remote-5
- Fixed: mouse input over the content area of a collapsed sidebar. multi-remote-5's collapse fix reclaimed the width but the mouse fall-through still used the expanded width — clicks over the reclaimed columns were silently swallowed and clicks further right hit the terminal ~22 columns off. Both routing sites now use the effective (collapsed) width, with a regression test. Found by a post-release verification pass.
- Removed: the
[ui.sidebar.host]options table. The gradient/animation/speed/glyph/show_count/show_metrics knobs, the settings "sidebar" section, the gradient renderer, the latency probes, and the download-rate counters are all gone. Host banners now always render as a connection-state glyph plus the host name in the theme accent color, with a dim state suffix while connecting/offline/disabled/mismatched. A legacy[ui.sidebar.host]table inconfig.tomlis ignored rather than rejected, so existing configs keep loading. An idle multi-server sidebar no longer runs any animation tick. - Summary-refresh coalescing hardening: queued state clears symmetrically on write failures, and fleet fan-outs queue a rerun for in-flight secondaries instead of dropping the change signal.
Compatibility
- Wire protocol 17: unchanged — this build interoperates with multi-remote-5 era servers (the Ping/Pong wire messages remain; a new client simply never sends probes). Adding an ssh remote still provisions the matching binary on the remote host automatically, or set
HERDR_REMOTE_BINARYto a cross-built binary. - The API
server.ui_settingsresponse no longer carriessidebar_host; mixed-version clients degrade gracefully (settings parts apply independently). - Not an official herdr release.
herdr updatewill replace this build with a stock release; reinstall from this page if that happens. - Windows is untouched (single-server client only), so no Windows asset is published here.
Install
chmod +x herdr-<platform> && mv herdr-<platform> ~/.local/bin/herdrmacOS: if the binary is killed on launch after replacing an existing file in place, re-sign onto a fresh inode: cp herdr /tmp/h && codesign -f -s - /tmp/h && mv /tmp/h ~/.local/bin/herdr.
Provenance
Built from commit cd8d3f9 on feat/multi-remote with LIBGHOSTTY_VT_OPTIMIZE=ReleaseFast, LIBGHOSTTY_VT_SIMD=true, Rust 1.96.1, Zig 0.15.2. Linux binaries from this repo's "Build artifacts (manual)" CI run; macOS binaries built on a local arm64 Mac with Homebrew's patched zig@0.15 (stock Zig cannot link on current macos-latest runners; the CI workflow fix awaits a workflow-scoped token).
51c7374364e3b52a306214693abc372319a29809a962c5d0e69b341c031d4f61 herdr-linux-x86_64
8388bfaa59c4020ec313913856963aa35ea8a618c35b5eb2d5dc36410fb04da4 herdr-linux-aarch64
bb4534cf24408e90a271300cf4a060a82ca2050840eac7007a82f0e04ac65878 herdr-macos-x86_64
1bc48c8a9f88fefa1c2eef778fe879459f6a43c9204b5735e1c12f05b21324f5 herdr-macos-aarch64