herdr
一个在后台持有智能体终端的服务端,并且知道哪一个正卡着等你。
herdr 是一个 Rust 写的终端工作区管理器,血统来自 tmux:后台服务端持有真实的 PTY,客户端可以随时 attach / detach,中间进程一直在跑。它加在上面的东西是 **对智能体的感知**——它能识别哪些 pane 里跑着编程智能体,把每一个归类为 working、blocked、done 或 idle,再把状态向上汇总到 tab 与工作区,让你直接跳到 那个正等你拿主意的 pane。智能体本身也能通过 CLI 与本地 socket API 驱动它, 包括用 `herdr agent wait --until blocked` 等另一个智能体。它跑在你现有的终端里, 而不是取代你的终端。
这不是第一天要做的决定。它在你**同时跑不止一个智能体**、并且不逐个读 pane 就分不清哪个跑完了、哪个从午饭前就卡在权限确认上的时候,才变得相关。多路复用器能让终端活着,但完全不知道里面装着什么。这一个缺口就是它存在的全部理由 —— 反过来也意味着:如果你一次只跑一个智能体,一个终端标签页依然够用。
我们的判断
当你开始**同时跑不止一个智能体**时它才值得装,因为那正是多路复用器不够用的时候: tmux 能告诉你某个 pane 安静下来了,却分不清它是干完了还是在等你点同意。 herdr 的全部价值就是这一个区分。不过在假设它适用于你之前,先看一眼它的 支持列表——对 Claude Code、Codex 与 Cursor Agent CLI,状态是靠规则匹配可见屏幕 推断出来的,只有带生命周期钩子或插件的那几个智能体才是权威上报。
最后核实于 2026-09-10
最适合
- 并行跑多个编程智能体,需要知道哪一个在等你
- 在远程机器上跑长任务,SSH 上去又会断开的场景
- 需要等待另一个智能体状态的脚本化 / 智能体驱动工作流
局限
- 对多数智能体,blocked 是靠匹配可见屏幕判断的,智能体改一次 UI 就可能判错
- 服务端重启会杀掉 pane 进程;回来的只有布局,以及受支持智能体的会话
- 重启后默认不保留 pane 回滚内容,需要手动开——因为输出里可能有密钥
- 仍在 1.0 之前且迭代很快,配置与 API 表面还在变
什么时候该选别的
- 一次只跑一个智能体的人,一个终端标签页就够了
- 不允许再多一个持有全部终端的后台守护进程的环境
- 希望智能体状态来自智能体本身、而不是来自屏幕匹配的人
主要功能
- 后台服务端持有 PTY,detach 或断开 SSH 都不会让工作停下
- 每个 pane 都有语义化状态——working / blocked / done / idle——并向上汇总到工作区
- 提供 CLI 与 socket API,智能体可以自己开 pane、读输出、互相等待
- 服务端重启后,能上报 session id 的智能体可以原生恢复会话
- 跑在你现有的终端里;单个 Rust 二进制,不带 Electron
herdr 的替代品
如果 herdr 不合适,这些工具解决的是类似问题。
- ChatGPT使用最广泛的助手,内置图像生成,插件生态庞大。官网:chatgpt.com$20/月起
- Claude以长上下文推理和少改动的写作质量见长的助手。官网:claude.ai$20/月起
- GeminiGoogle 的助手,与搜索、Gmail 和 Workspace 深度集成。官网:gemini.google.com$20/月起
- GitHub Copilot部署最广的编程助手,主流编辑器几乎都支持。官网:github.com/features/copilot$10/月起
- Claude Code运行在终端里的编程智能体,可直接执行命令和修改文件。官网:claude.com/product/claude-code$20/月起
- Codex CLIOpenAI 的开源终端编程智能体,已用 Rust 重写。官网:developers.openai.com/codex/cli$20/月起