一句话定位

herdr 是「the runtime your coding agents live on」——给 AI 编程智能体用的运行时,单个 Rust 二进制,不依赖 Electron,直接跑在你已经在用的终端里。

仓库:github.com/herdrdev/herdr(Apache-2.0,当前版本 0.9.1)。官网:herdr.dev。

它不是另一个包装 Claude/Codex 的工具,而是持有它们的真实终端:shell、日志、提示符、运行中的进程都原样保留,herdr 在上面叠加「工作区 / 标签页 / 窗格 / 智能体」结构和一套为多智能体协作设计的状态面板。


它解决了哪些痛点

我过去同时跑 Claude Code、Codex、Cursor 几个智能体时,遇到过这些很真实的痛点,herdr 几乎是为解决它们而生的:

1. 多个智能体同时跑,谁在等你?

终端里开三四个窗格跑智能体,最大的痛苦是:必须切到每个窗格看一遍,才知道谁在 working、谁在 blocked 等你点确认、谁已经 done。

herdr 给每个窗格打上状态标签,并在侧边栏按工作区聚合:

状态 含义
blocked 智能体需要你审批 / 回答
working 正在运行
done 已完成,但你还没看
idle 已完成或等待中,已查看过
unknown 暂时无法判定

herdr 实机截图:左侧工作区导航 + 智能体状态(pi idle / claude working),中间 Claude Code 窗格输出报告,右上 Codex 窗格也是 Claude Code

跨所有工作区汇总,所以你能一眼看见哪个项目需要你,而不是挨个 tab 去翻。官方把它总结成一句话:「never hunt for the stuck one」。

2. 关闭终端 / SSH 断线,正在跑的任务就废了

tmux 解决了这个问题,但 tmux 不知道你跑的是 Claude Code。herdr 在 tmux 的能力之上加了:

  • 后台服务器 + 客户端模型:窗格在后台服务器里跑,客户端只是终端 UI 渲染层。
  • ctrl+b q 分离客户端后,服务器和所有智能体继续运行。
  • 重新 herdr 一条命令重连,原来的布局、智能体状态全部恢复。
  • 服务器/机器重启后会恢复保存的布局,并可恢复受支持的智能体会话(受支持的会话可恢复,原始进程不会跨重启保留——这点要心里有数)。

3. 一台机器的本地 + 多台 SSH 远程,状态分散

项目跑在本地、构建机跑在 A 公司跳板机、CI 在 B 机器上——你得在三个地方各开一套终端。

herdr 的方案是「多台机器,一个窗口」:

  • 把本地工作区和保存的 SSH 机器放进同一个客户端。
  • 智能体列表跨机器汇总,独立重连。
  • 一台机器卡住不会阻塞其他机器。
  • 手机装任意 SSH 客户端连上去,TUI 自适应窄屏,等于免费获得了手机端支持(官方推荐 iPhone 用 moshi)。

4. 智能体之间不会协作

这是 herdr 最独特的设计点:智能体也能用 herdr。

它暴露了纯 socket API:智能体可以创建窗格、读取输出、互相发消息、等待另一个智能体进入 blocked。换句话说,Claude Code 可以主动 spawn 一个 Codex 窗格,让它处理某类任务,等它 blocked 时再过去接——多智能体协作编排有了一个原生的运行时底座。

它不开箱即用充当 Claude 的「主脑」,但给所有 agent 提供了一个平等的、协议化的舞台。

5. tmux 太老派,VSCode 终端又太重

tmux 的力量毋庸置疑,但鼠标体验几乎为零;VSCode / Cursor 集成的终端在你 SSH 到远端时基本不可用。herdr 的策略是两头都要:

  • 鼠标一等公民:点击切焦点、拖动分割边框、拖选文本即复制到剪贴板、双击选词、右键菜单。Ctrl+点击 打开窗格内链接(OSC 8、http://、https://,包括换行截断的链接)。
  • 键盘一等公民:tmux 风格的 ctrl+b 前缀键,prefix+v 竖向分屏、prefix+minus 横向分屏、prefix+c 新建标签页、prefix+w 工作区导航、prefix+shift+n 新建工作区、prefix+q 分离客户端。
  • 按 prefix+? 看所有生效绑定;按 prefix+[ 进入复制模式用键盘复制。

6. 想扩展一点自定义逻辑

支持插件市场 herdr.dev/plugins,可以在不改动核心的前提下扩展窗格和工作流。

7. 单二进制

Rust 写成,单文件、无 Electron、不挑终端。Linux / macOS / Windows 全平台稳定通道二进制。安装 ≈ 30 秒。


支持哪些智能体

官方表里给出了完整清单(2026-09 的 0.9.1 版本):Claude Code、Codex、Cursor Agent CLI、Grok CLI、OpenCode、Pi、Kimi Code CLI、Qwen Code、Letta Code、Droid、Kilo Code CLI、MastraCode、GitHub Copilot CLI、Devin CLI、Qoder CLI、Amp、Kiro CLI、Maki、Muse、Antigravity CLI、Hermes Agent……

外加「可检测但测试较少」的 Gemini CLI 和 Cline。

关键概念:每个智能体有一个「状态权威」——是安装的集成钩子,还是屏幕清单兜底。这是为什么 herdr 能在不打断你原本 CLI 工作流的情况下,准确告诉你哪个智能体真的在等你。


安装

官方提供了五种安装方式,按你的环境选一个:

方式一:官方安装脚本(推荐)

macOS / Linux:

1
curl -fsSL https://herdr.dev/install.sh | sh

Windows PowerShell:

1
powershell -ExecutionPolicy Bypass -c "irm https://herdr.dev/install.ps1 | iex"

如果端点安全软件拦截了无文件 PowerShell,改用 CMD:

1
curl.exe -fsSLo install.cmd https://herdr.dev/install.cmd && install.cmd && del install.cmd

安装器会下载匹配平台的二进制并放到 PATH。默认走稳定更新通道。

方式二:Homebrew(macOS / Linux)

1
brew install herdr

方式三:mise

1
mise use -g herdr

如果报错 herdr not found in mise tool registry,先升级 mise。临时兜底:mise use -g github:herdrdev/herdr。

方式四:Nix

1
2
3
nix run github:herdrdev/herdr/v0.9.1
nix build github:herdrdev/herdr/v0.9.1
nix profile install github:herdrdev/herdr/v0.9.1

把 v0.9.1 换成最新 release tag。省略 tag 会跟踪 master,但日常使用建议固定到 release。

方式五:手动下载二进制

从 GitHub releases 按平台挑:

系统 产物
Linux x86_64 herdr-linux-x86_64
Linux aarch64 herdr-linux-aarch64
macOS Intel herdr-macos-x86_64
macOS Apple Silicon herdr-macos-aarch64
Windows x86_64 herdr-windows-x86_64.zip

Linux/macOS 给可执行权限后丢进 PATH:

1
2
chmod +x herdr-linux-x86_64
mv herdr-linux-x86_64 ~/.local/bin/herdr

Windows 解压后保留整个目录(不要只复制 herdr.exe,因为它依赖同目录的 ConPTY 运行时)。

验证安装

1
herdr

能起 UI 就 OK。找不到命令就重启终端或检查 PATH。

更新

herdr 会自动检查并在应用内提示。手动:

1
herdr update

切预览通道(拿到 master 上的修复,接受可能回归):

1
2
herdr channel set preview
herdr channel set stable # 切回稳定

Homebrew / mise / Nix 安装请用各自的包管理器更新,不要用 herdr update。


快速开始

第一次启动

在工作所在的目录里跑:

1
herdr

herdr 会启动或连接到你的默认后台会话。你不需要手动管 socket。即使分离,智能体也会继续运行。

第一次会提示新建一个工作区——给每个活跃项目一个独立的工作区,侧边栏的智能体状态才清楚。

用鼠标(最直观)

  • 点击窗格 / 标签页 / 工作区 / 智能体来聚焦
  • 拖分割边框调大小
  • 右键打开上下文菜单(分屏 / 新标签页等)
  • 拖选文本即自动复制到剪贴板(不用 Ctrl+C)
  • 双击选词;按住第二次点击并拖动按整词扩展选择
  • Ctrl+点击 打开窗格内链接

在窗格里跑智能体

1
claude

也可以是 codex、pi、opencode、cursor-agent、grok 或任何受支持的智能体。herdr 自动检测,侧边栏会立刻出现一条 working / blocked 的智能体记录。

键盘前缀操作(可选)

按 ctrl+b 进入前缀模式,再按一个动作键。常用:

动作 按键
向右分割 prefix+v
向下分割 prefix+minus
新建标签页 prefix+c
下一个 / 上一个标签页 prefix+n / prefix+p
工作区导航 prefix+w
新建工作区 prefix+shift+n
分离客户端 prefix+q

按 prefix+? 看当前所有绑定;按 prefix+[ 进入复制模式用键盘选中文本。

分离与回来

1
2
3
4
5
6
7
8
# 分离:所有智能体继续在后台跑
# 按 ctrl+b q,或者直接关掉终端窗口

# 重新连回来
herdr

# 真正想关掉整个会话(窗格也会被停掉)
herdr server stop

命名会话(多套独立运行时)

1
2
3
herdr session list
herdr session attach work
herdr session attach side-project

每个命名会话是独立的窗格、socket、持久化状态。日常推荐按工作区划分,只有在需要完全独立的运行时命名空间时再用命名会话。

多机器

1
2
herdr machine add prod "ssh [email protected]"
herdr --machine prod

常用命令一次记下来:

1
2
3
4
5
6
7
8
herdr                                # 启动 / 重连默认会话
herdr session list # 列出会话
herdr session attach <name> # 接入命名会话
herdr server stop # 停止当前会话的服务器
herdr update # 更新(直接安装器安装的版本)
herdr channel set preview|stable # 切换更新通道
herdr machine add <label> <ssh> # 添加 SSH 机器
herdr --machine <label> # 远程模式工作

它和 tmux / Zellij / VSCode 终端的关系

简单对比:

维度 tmux / Zellij VSCode / Cursor 集成终端 herdr
跨 SSH / 客户端断开保持会话 ✅ ❌ ✅
AI 智能体状态面板 ❌ 部分有(仅本机) ✅(含跨机器汇总)
智能体之间 socket 协作 ❌ ❌ ✅
鼠标体验 弱(tmux)/ 中(Zellij) ✅ ✅
tmux 风格前缀键 ✅ ❌ ✅
多机器统一视图 ❌ ❌ ✅
单文件二进制、无 Electron ✅(tmux)/ 中(Zellij) ❌ ✅
远程手机可用 SSH 上去手动 ❌ ✅(任何 SSH 客户端)

如果你只用 Vim + 一个智能体、从不 SSH,tmux 已经够了。
如果你同时跑 ≥2 个智能体、经常在本地和远程切,herdr 的智能体状态面板和跨机器视图是决定性优势。


一些值得注意的细节

  • 会保留原始进程:herdr 不会包装或替换 Claude / Codex / Cursor,它「owns their terminals」——这是它的设计哲学。所以你升级智能体、换模型、改提示词都不影响 herdr。
  • 持久化不等于无限续命:服务器 / 机器重启后会恢复布局,并可恢复受支持的智能体会话;但原始进程不会跨重启保留(这点官方也写明了)。重要的长任务仍要靠智能体自身的会话续命能力。
  • socket API 是核心:CLI、插件、第三方 agent 都能用同一个 API 操控 herdr,所以它更像一个协议层,而不仅是个 TUI。
  • 状态准确度有差异:有完整生命周期钩子的智能体(Pi、OpenCode、Kimi Code 等安装集成后)状态最准;只有屏幕清单的智能体偶尔会把罕见的新提示形态判成 idle——这是有意识的「从严」设计,避免误判后给你发输入。

总结

herdr 把「终端复用器」这件事在 AI 编程时代重新做了一遍:

  • 多智能体并发:状态面板一目了然,谁在等你不再靠猜。
  • 跨断线 / 跨重启:后台服务器 + 会话恢复,离线不再是事故。
  • 跨本地 + 远程:统一窗口、独立重连、手机也能用。
  • 智能体原生:socket API 让智能体之间能协调,不只是 UI。
  • 不抢饭碗:不替换你的智能体,只持有它们的终端。

安装一条命令、上手十分钟。如果你现在同时跑 ≥2 个 AI 编程智能体,强烈建议给它一周时间——大概率回不去。


本文基于 herdr 0.9.1(2026-09-16 发布)。项目仍在快速迭代,建议装好后跑 herdr update 跟版本。