Skip to content

Releases: tahaalibra/herdr

multi-remote 0.7.3 build 6 (fork)

Pre-release

Choose a tag to compare

@tahaalibra tahaalibra released this 14 Jul 11:29

Personal 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 the all scope, 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 in config.toml is 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_BINARY to a cross-built binary.
  • The API server.ui_settings response no longer carries sidebar_host; mixed-version clients degrade gracefully (settings parts apply independently).
  • Not an official herdr release. herdr update will 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/herdr

macOS: 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

multi-remote 0.7.3 build 5 (fork)

Pre-release

Choose a tag to compare

@tahaalibra tahaalibra released this 14 Jul 01:48

Personal fork build of herdr 0.7.3 with multi-remote server support, ported from icedac's PoC for upstream discussion #515. Supersedes multi-remote-4. All four binaries were built fresh at commit d9fecca — the linux pair on pristine CI runners, the macOS pair locally after a full cargo clean (7.0 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 the all scope, and remote management from the menu. Secondary disconnects retry with backoff and never disturb the main session.

Fixed since multi-remote-4

  • herdr --remote <host> is no longer slowed to a crawl. The client fetched main-server registry/settings/summary state synchronously on the UI loop, assuming a fast local socket — but under a remote attach that socket is an ssh bridge, so every subscribed change event, focus action, and 2s poll froze input and rendering for a WAN round-trip bundle. Main supervisor state now fetches off the UI loop with coalesced reruns (at most one fetch in flight plus one queued), and change events no longer force full-screen redraws before data arrives.
  • Collapsing the sidebar actually reclaims its width. The composited sidebar previously drew the collapsed glance rail inside the full expanded column. It now narrows to the compact 4-column rail (or fully hides with ui.sidebar_collapsed_mode = "hidden"), and every connected server re-renders at the wider content size. The collapsed rail no longer exposes the width-divider drag.

Settings: host banner options

New [ui.sidebar.host] config table, also editable live from the settings "sidebar" section (changes persist back to config.toml):

[ui.sidebar.host]
gradient = "solid"      # solid | rainbow | accent | cool | warm | muted
animation = "animated"  # animated | static (shaded presets only)
speed = "calm"          # calm | normal | lively (shaded presets only)
glyph = "left"          # left | none
show_count = false      # append the host's space count
show_metrics = false    # live latency + download readout (opt-in)

solid (the default) renders host names in one flat theme accent color. The latency/throughput readout is off unless show_metrics = true. Unknown values fall back to the defaults. Full documentation lives in docs/next/website/src/content/docs/configuration.mdx on the branch.

Compatibility

  • Wire protocol 17: this build only talks to servers running this same build. Adding an ssh remote provisions the matching binary on the remote host automatically (same platform), or set HERDR_REMOTE_BINARY to a cross-built binary.
  • Not an official herdr release. herdr update will 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/herdr

macOS: 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 d9fecca 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).

566faf1c237adf7673790dc8d1f9c17aedab1f450d54754e2ecc2f84a50075f9  herdr-linux-x86_64
e9160ce61c629083ebae92d62bc1a5f9c5066bcebb7c7ec9924b8f835288654f  herdr-linux-aarch64
187083bc1b0d256520b79289be4590912c1397fc5aacf8d7e71bd49affc42e04  herdr-macos-x86_64
c5a87756d6f30fdda7f555e24642f25da8d4b8191bfa635dc2eca39dcde543ff  herdr-macos-aarch64