{"slug": "herdr-has-released-native-app", "title": "Herdr has released native app", "summary": "Herdr released a native desktop app for terminals and coding agents, distributed via a curl-based install script for Linux and macOS and a PowerShell installer for x64 Windows 10 1803 or newer. The app organizes work into spaces, tabs and panes, adds an agents sidebar that reports each agent as Working, Blocked, Done or Idle, and keeps terminals running in herdr-core after the window closes, with Linux builds requiring a desktop session and a working Vulkan driver and macOS builds limited to Apple Silicon. The installers also install herdr-core if it is missing, and Herdr supports adding SSH machines so remote spaces and their terminals keep running when the local window closes or the laptop sleeps.", "body_md": "Herdr is a desktop app for terminals and coding agents. Keep work in spaces, see which agents need you, and leave terminals running when you close the window.\n\n```\ncurl -fsSL https://releases.herdr.dev/app/install.sh | sh\n```\n\nLinux needs a desktop session and a working Vulkan driver. macOS builds are available for Apple Silicon; Intel Mac users can [build from source](#build-from-source). Linux builds are x86-64 and ARM64.\n\nThe installer adds Herdr to your apps and puts the command in `~/.local/bin`.\nAdd that folder to your PATH if the installer asks.\nOn macOS the app lives in `~/Applications/Herdr.app`.\nFor drag-and-drop installation on Apple Silicon, download [Herdr.dmg](https://releases.herdr.dev/app/Herdr.dmg) and drag Herdr to Applications.\n\nRun in PowerShell on x64 Windows with curl and tar installed (Windows 10 1803 or newer):\n\n```\nirm https://releases.herdr.dev/app/install.ps1 | iex\n```\n\nHerdr appears in the Start menu. The installer adds `%LOCALAPPDATA%\\Programs\\herdr-app` to your user PATH. Open a new terminal to pick it up.\n\nBoth installers download and run code. Read the [shell installer](https://github.com/herdrdev/herdr-app/blob/master/distribution/install.sh) or [PowerShell installer](https://github.com/herdrdev/herdr-app/blob/master/distribution/install.ps1) first if you prefer.\nThey also install [herdr-core](https://github.com/herdrdev/herdr-core) if it is missing.\nThe app can help install or update a core it cannot use.\n\nA **space** holds work on one machine, usually in one repo. Each space has **tabs**. Split a tab into **panes** to put terminals or mod panels beside each other.\n\nAn unnamed space follows its first terminal's folder. Name a space or tab when you want a label that stays. New tabs start in the focused terminal's folder.\n\nThe agents sidebar brings agents from your spaces into one list, including workers started by another agent. Agents that report status show as:\n\n- **Working:** still busy.\n- **Blocked:** waiting for you.\n- **Done:** finished while you were looking elsewhere.\n- **Idle:** not working, or a finished agent you have looked at.\n\nClick an agent to see it. A worker without a pane opens in **peek**, over your tab. Keep it as a tab if you want it beside your other work.\nCtrl-click a live terminal address in terminal text to peek at it; use Cmd-click on macOS.\nAn address such as `t7` means a terminal on the same machine as the terminal showing it. `vps/t7` names one on another machine.\n\nThe window arranges terminals. The core runs them. Closing the window leaves them running; closing a pane or tab ends its terminals. After a reboot or core crash, kept panes get fresh shells in their last folders, not their old programs.\n\nAdd an SSH machine from Settings → Machines or the sidebar's Add machine action. Pick a host from your SSH config or type how SSH reaches it. Spaces on that machine run their terminals there, not on your computer.\n\nEach machine keeps its spaces, tabs and splits in its core. Connected screens share that structure and the live terminals, but keep their own focus and zoom. Remote work keeps running when your local window closes or your laptop sleeps, as long as the remote machine and core stay up.\n\nOpen the command palette to find an action by name, or open Settings to change fonts, colors, sounds and other preferences.\nThe built-in layouts include Herdr, Terminals and Herdr 98.\nA **layout** arranges the window. **Mods** are small JavaScript programs that draw its panels, menus and dialogs.\n\nDuplicate a shipped layout or mod before changing its structure or code. Your copies stay yours; Herdr updates the shipped ones on start. Save a personal layout, mod or key file and the window reloads it. A broken edit keeps the last good version and reports the error.\n\nCtrl+Shift+P shows every command and its key (Cmd+Shift+P on macOS). Change any key in `keys.json`; see [the keys section](https://github.com/herdrdev/herdr-app/blob/master/defaults/AGENTS.md#keys-keysjson) of the mod guide for the format.\n\nInstalled releases check for updates in the background and download a new app beside the running one. It takes over when you quit and reopen, or choose the update action. Your terminals keep running in the core. Settings → Updates shows what is available. What's New opens after an update; you can open it again from the command palette. Builds from source do not update themselves.\n\nUsage telemetry is on by default in releases. Turn it off in Settings → Privacy.\nMods are trusted code, not sandboxed extensions. Read [security and privacy](https://github.com/herdrdev/herdr-app/blob/master/docs/security.md) before installing someone else's mod.\n\n```\nherdr-app --skill\n```\n\nThis prints the agent guide for driving the window. The herdr-core skill points agents here. Use herdr-core for running and coordinating programs; use the app to change what you see.\n\n```\nherdr-app ls\nherdr-app status\nherdr-app commands\n```\n\nThe first two inspect the open window. The command list also works without one.\nSee the [command reference](https://github.com/herdrdev/herdr-app/blob/master/docs/commands.md) for arguments.\n\nFor bugs, mod API requests and code contributions, see [Contributing](https://github.com/herdrdev/herdr-app/blob/master/CONTRIBUTING.md).\n\nClone this repo with its submodules. Use Rust 1.95.0 and Zig 0.16.0, the versions used in [CI](https://github.com/herdrdev/herdr-app/blob/master/.github/workflows/ci.yml).\nLinux needs the development packages listed in that workflow.\n\n```\ngit clone --recurse-submodules https://github.com/herdrdev/herdr-app.git\ncd herdr-app\njust build\njust test\njust install\n```\n\nInstall [just](https://github.com/casey/just) to use these recipes.\nThe platform installer builds a release and adds the app to your desktop.\nOn Linux it links to this checkout, so keep the checkout in place.\nQuit and reopen Herdr to use the new build.\n\nDocumentation checks also need [Bun](https://bun.sh): `just docs-check` checks generated pages and CLI examples; `just docs-generate` refreshes the reference pages.\n\nTo compare drawing changes on Windows, Linux or macOS, run the same fixed workloads against each build:\n\n```\npython scripts/bench.py --bin <app executable> --set spinners --seconds 20\n```\n\nThe runner requires `hc` on PATH and uses the Python executable running the script. It prints a unique artifact folder with the run settings, counters and results, then stops its private app, terminals and core. Both sets use Python fixture programs; the default set’s TUI workload replaces historical `btop` measurements. `--only spinners` measures just the quiet native spinner scenario. Keep the window visible and the display awake, and compare the same window activity and display settings; inactive windows may draw at a lower rate. Windows records visibility, foreground activity and display Hz at each measurement boundary; other platforms mark these observations unavailable. Visibility does not establish occlusion. Draws are window render calls. Render-to-paint elapsed time stops before scene finalization, backend drawing, uploads and presentation; it is separate from OS process CPU time. Neither measures physical presentation or the FPS HUD’s derived MAX FPS.\n\n`python scripts/bench_compare.py ghostty --root <artifact folder>` reuses a run’s fake agent for the macOS comparison. Benchmark checks: `python -m unittest discover -s scripts -p test_bench.py`.", "url": "https://wpnews.pro/news/herdr-has-released-native-app", "canonical_source": "https://github.com/herdrdev/herdr-app", "published_at": "2026-10-30 00:42:41+00:00", "updated_at": "2026-10-30 01:16:58.107383+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools", "ai-tools"], "entities": ["Herdr", "herdr-core", "Herdr.dmg", "Vulkan", "Apple Silicon", "PowerShell", "Windows 10"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/herdr-has-released-native-app", "markdown": "https://wpnews.pro/news/herdr-has-released-native-app.md", "text": "https://wpnews.pro/news/herdr-has-released-native-app.txt", "jsonld": "https://wpnews.pro/news/herdr-has-released-native-app.jsonld"}}