Herdr:为 AI Agent 量身打造的终端复用器,3 个设计搞定多项目挂机

日常用 AI 编程 Agent 写代码时,不少人会同时打开三四个项目。终端标签页开多了,很容易手忙脚乱。

最头疼的情况是:某个窗口里的 Agent 遇到确认命令停住了,一直在等待你输入 y。你如果不切过去看一眼,完全不知道它卡在了哪里。

传统的 tmux 或 zellij 能解决后台挂机和分屏问题,但全键盘操作记忆成本高,而且对内置运行的 AI Agent 一无所知。

针对这个场景,开源工具 Herdr 提出了新的思路:把终端复用器(Multiplexer)做成一个能实时感知 Agent 状态的图形化工作台。

它的 GitHub 仓库是 herdrdev/herdr,官方文档位于 herdr.dev/docs

鼠标优先:不需要记快捷键的分屏管理

tmux 拥有一套完整的键盘快捷键体系,但也给新手砌了一座高墙。很多人光是记住解绑快捷键和窗口切分组合键,就要适应好几天。

Herdr 在设计上选了鼠标优先的路线。从分屏、调高宽到标签页切换,全部支持可视化操作。

用鼠标直接点击 Pane 可以切换焦点,拖拽分屏边界就能实时调整区域大小。点击右键会弹出右键菜单,新建分屏、复制文本或关闭窗口都能在菜单里完成。

如果你习惯用键盘,Herdr 依然保留了快捷键机制。默认前缀键为 ctrl+b,按下 prefix+v 向右切分,按下 prefix+- 向下切分,按 prefix+q 脱离会话。

对于完全不想记前缀键的使用者,通过鼠标就能覆盖日常使用的绝大多数动作。

Agent 状态感知:侧边栏搞定多项目全局监控

终端复用器不仅要管理命令,还要管理并发运行的任务。Herdr 内置了针对多种主流 AI 编程 Agent 的识别逻辑。

当你在某个 Pane 里启动 Claude Code、Codex 或其他受支持的 CLI 工具时,Herdr 会自动检测到进程的存在,并在侧边栏给出明确的状态标记。

状态主要分为四种:

  • working:Agent 正在分析代码或执行命令
  • blocked:Agent 需要用户授权或等待命令行输入
  • done:当前轮次的生成任务已经结束
  • idle:终端处于闲置等待状态

侧边栏按 Workspace(项目容器)对各个 Pane 进行归类。你不需要频繁在多个标签页之间来回切屏,只要瞥一眼侧边栏的图标变化,就能知道哪个项目里的 Agent 正在干活、哪个在等着你敲回车确认。

如果需要更高的识别精度,还可以通过命令给特定 Agent 安装官方集成插件,把屏幕识别升级成更直接的状态接口通讯。

继承 tmux 的后台挂机与层级架构

在底层运行机制上,Herdr 延续了经典 Multiplexer 的 Server/Client 分离架构。

它包含四个清晰的层级概念:

  • Session:后台常驻服务命名空间,默认启动时自动连接到 default 实例
  • Workspace:对应一个代码仓库或具体的研发任务,内部包含多个视图
  • Tab:同一个 Workspace 内的布局视图,用来区分服务日志、编译面板和 Agent 面板
  • Pane:真正执行 Shell 指令的终端单元,支持任意上下左右拆分

你在本地关闭终端窗口,或者断开远程 SSH 连接,Herdr 的后台 Server 依然会在系统中持续运行。

重新打开终端并执行 herdr 命令,就能无缝接回之前的上下文环境。跑了一半的构建脚本和 Agent 生成任务都不会中断。

把终端操控权交给 AI:Socket API 与内置 Skill

大部分工具只考虑了人类怎么用,Herdr 还留了一个反向操控的开口。

它自身提供了一套 CLI 命令与本地 Socket API。无论是外部自动化脚本,还是运行在终端内部的 Agent,都可以通过 API 发送指令。

Herdr 官方仓库附带了一个名为 herdr 的 Agent Skill。把这个 Skill 配置文件安装到你的 AI 助手(如 Claude Code)之后,Agent 就获得了控制 Herdr 的能力。

这意味着 Agent 在写代码时,可以主动为你开辟一个新的右侧分屏来运行测试,或者在下方新建 Pane 启动 Web 开发服务器,甚至在后台持续读取构建日志,而不会抢走你当前的输入焦点。

这种程序化控制能力,让它从单纯的界面工具变成了可以深度深融合进 AI 工作流的管道。

快速安装与基础使用

Herdr 的安装非常直观。在 macOS 或 Linux 系统下,通过一行 Shell 脚本即可完成安装:

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

安装完成后,在任意项目目录下直接运行 herdr 启动:

cd ~/your-project
herdr

第一次启动时,Herdr 会自动初始化 default 会话并进入界面。

日常使用中最常用的几个控制命令包括:

# 检查当前 Herdr 服务与客户端运行状态
herdr status

# 列出目前已被感知到的所有 Agent 实例
herdr agent list

# 重新加载配置文件 ~/.config/herdr/config.toml
herdr server reload-config

# 完全停止 Herdr 后台服务进程
herdr server stop

配置文件支持对键盘绑定、主题配色、侧边栏宽度、通知提醒和回滚缓冲区大小进行细粒度定制。通过 herdr --default-config 即可打印出完整的默认配置项。

实测中的局限与适用建议

体验下来,Herdr 的定位很清晰,但在使用中也有几个细节需要客观对待:

状态识别偶尔存在误报。 如果 Agent 在终端里输出了非标准格式的文本,或者使用了极具个性的命令行 UI,侧边栏的状态切换可能产生一两秒的延迟,或者误判为 idle

极度依赖键盘快捷键的老 tmux 玩家需要适应。 虽然 Herdr 兼容 ctrl+b 前缀,但它的部分按键逻辑和 .tmux.conf 的深度自定义配置并不完全等价,迁移原有的个人复杂配置需要重新编写 config.toml。

对于不跑并发 Agent 的单任务场景增量有限。 如果你日常只在一个终端窗口里搞定所有事,也不涉及长时挂机任务,Herdr 的侧边栏和多 Workspace 优势很难体现出来。

综合来看,Herdr 最适合以下场景:

  • 经常需要并行跑 2 个以上 AI Coding Agent 的开发者
  • 习惯在终端做多项目管理,但记不住复杂 tmux 组合键的人
  • 需要在 SSH 远程服务器上挂机运行长时 AI 任务的场景

如果你也受够了在纷乱的终端标签页里寻找卡住的 Agent,或者想找一个开箱即用、支持鼠标点选的挂机复用器,Herdr 值得装上试一试。

Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐