herdr.dev · install · quick start · docs
English · 简体中文
Note
This is the shuv1337/herdr fork of herdrdev/herdr.
It tracks upstream master and adds fork-only changes such as shuvcode/shuvpi integrations, native jj workspaces, custom local machine labels, and the night-owl-gold theme.
Each release lists the fork's changes in its notes.
Fork builds are versioned <upstream-version>-shuv.<N> (for example 0.9.1-shuv.1), and herdr update installs updates from this fork's releases, not from herdr.dev.
Report fork-specific problems here, not upstream.
v.0.4.0.mp4
the runtime your coding agents live on.
- detach without stopping work — herdr keeps terminals running in a background server when you close the client or lose your SSH connection. after a server or machine restart, herdr restores the saved layout and can resume supported agent sessions; the original processes do not survive. session state →
- several machines, one window — keep local work and saved ssh machines together, with a combined agent list and independent reconnects. remote machines →
- never hunt for the stuck one — every pane is marked working, blocked, or idle. when an agent stops and needs an answer, herdr says so.
- agent-native — agents drive herdr through the cli and socket api: they can spawn panes, prompt each other, and wait until another agent is genuinely blocked. agent skill →
- runs what you already run — claude code, codex, cursor, opencode, grok and the rest. herdr doesn't wrap or replace them; it owns their terminals.
- keyboard and mouse, both first-class — tmux-style prefix keys and click, drag, split. pick per moment, not per tool.
- plugins — extend panes and workflows. browse the marketplace →
- one rust binary, no electron — runs in whatever terminal you already use.
install the fork on linux or macos:
curl -fsSL https://github.com/shuv1337/herdr/releases/latest/download/install.sh | shwindows (powershell):
powershell -ExecutionPolicy Bypass -c "irm https://github.com/shuv1337/herdr/releases/latest/download/install.ps1 | iex"or download a binary from releases. the installer puts herdr in ~/.local/bin (set HERDR_INSTALL_DIR to change that) and replaces any herdr already installed there. fork installs update with herdr update. this fork publishes stable releases only, so leave herdr channel set to stable.
brew install herdr, mise use -g herdr, Nix, and https://herdr.dev/install.sh install upstream herdr without the fork's changes. to switch back to upstream, run curl -fsSL https://herdr.dev/install.sh | sh.
then start it where the work lives:
herdrrun your agents, split panes, walk away. ctrl+b q detaches, herdr reattaches. quick start →
everything lives at herdr.dev/docs: quick start · concepts · supported agents · keyboard · configuration · session state · connecting machines · remote · integrations · plugins · socket api
every past sponsor and backer is listed in SPONSORS.md — thank you 🐑
enterprise / partnership: hey@herdr.dev
if you are an ai agent helping with this repository, read AGENTS.md before making changes and read CONTRIBUTING.md before opening issues or PRs.
git clone https://github.com/shuv1337/herdr
cd herdr
cargo build --release
just test # unit tests
just check # formatting, tests, and maintenance checksfork releases are built by .github/workflows/fork-release.yml from v<cargo-version>-shuv.<N> tags. to publish one, push master, then run:
just fork-release # tags origin/master as the next v<version>-shuv.<N> and pushes the tag
just fork-release --dry-run # print the next tag without creating itthe workflow builds all five platform assets and attaches them to the GitHub release, along with latest.json (the update manifest herdr update reads) and the install scripts. after publishing, it posts a short announcement to Discord through the DISCORD_RELEASE_WEBHOOK_URL repository secret. if the secret is missing, it skips the post; if the post fails, the release still succeeds. it does not commit anything back to master, so syncing upstream won't conflict with fork releases.
Herdr is licensed under the Apache License 2.0.
