Herdr 是一款旨在为使用终端环境和编码 Agent 的开发者简化工作流的桌面应用程序。其核心功能围绕“空间(spaces)”展开,这些空间是工作的逻辑分组,通常与特定的机器或代码仓库相关联。每个空间可以包含多个标签页和分割面板,允许用户并排查看终端或专用面板。该应用程序的一个关键功能是即使在主窗口关闭时,也能让终端在后台核心中继续运行,确保长时间运行的进程不会因 UI 交互而中断。

显示工作空间布局的 Herdr 桌面应用程序界面。
Herdr 桌面应用程序为管理终端会话和编码 Agent 提供统一界面。github.com

这张图片展示了旨在简化开发者工作流的主要桌面应用程序。

该应用程序提供了一个专门的侧边栏用于监控编码 Agent。这些 Agent 被集成到用户的工作空间中,应用程序会实时显示它们当前的状态——例如“正在工作(Working)”、“受阻(Blocked)”、“已完成(Done)”或“空闲(Idle)”。用户可以通过点击这些 Agent 来查看它们的进度,或“预览(peeking)”实时终端地址。该系统支持远程工作,允许用户添加 SSH 机器;当机器连接时,该远程主机上的空间和终端将在远程核心上运行,而本地 Herdr 应用程序则提供结构、焦点和实时终端输出的同步视图。

Herdr 应用程序界面的深色主题截图。
该应用程序支持用于终端和 Agent 管理工作空间的深色主题。github.com

此视觉效果展示了管理空间和终端标签页的原生桌面体验。

虽然主应用程序为 Linux、macOS 和 Windows 提供原生体验,但该项目也支持解耦架构。这从存在一个独立的、非关联的原生客户端(herdr-gpui)可以看出,该客户端连接到本地 Herdr 守护进程(daemon)。这种守护进程-客户端模型支持高级功能,如远程手机配对以及用于向 Agent 发送截图的浏览器集成。然而,由于该应用使用“mods”——用于绘制面板和菜单的小型 JavaScript 程序——它依赖于受信任的代码而非沙盒扩展系统,因此要求用户在安装第三方修改时保持谨慎。