missuo/herdrm

Native macOS console for herdr — all your coding agents and their live terminals, across devices

📦 herdrm – herdr AI 编码代理运行时的原生 macOS 控制台

herdrm 是一个仅限 macOS 的 GUI 应用程序(使用 SwiftUI 构建),可与 herdr 后台服务器(运行 Claude、Codex、Gemini、Grok、OpenCode 等 AI 编码代理的守护进程)进行交互。它将 herdr 管理的远程或本地 PTY 转换为真正的全功能终端窗格,同时提供图形化侧边栏以浏览设备、空间、代理和文件。


✨ 它能做什么(如 README 所述)

功能 你将获得
每个设备 连接到本地 Mac 和任何可通过 SSH 访问的机器(普通 SSH、Tailscale SSH,或密码存储在 macOS 密钥链中)。该应用会为每个设备保持重连循环。
实时状态 侧边栏显示每个连接机器的 Spaces → Agents → Terminals,并实时显示状态(运行中、阻塞、完成)。
真正的终端 连接到代理或 shell 的实际 PTY(不是聊天包装器)。你将获得原生文本选择、正确字体、行间距控制,以及在连接中断时可重新连接的稳健会话。
粘贴任何内容 拖放文件或图像;它们将通过剪贴板(本地)或短期缓存(远程)流式传输到代理。
移动文件 双面板文件管理器允许你在本地 Mac 和任何 SSH 主机之间复制文件,支持进度、取消和冲突处理。
通知 当代理需要输入或完成时,macOS 警报会触发;点击可直接跳转到该窗格。
⌘K 搜索 跨所有设备、空间和代理的全局模糊搜索——一键跳转到任何位置。
原生 macOS 感觉 通用二进制(Apple Silicon + Intel),深色/浅色模式,通过 Sparkle 自动更新,已签名且已公证。

🤔 为什么使用 herdrm?

  • 你已经使用 herdr 运行代理,但默认的 herdr attach 工作流是基于终端的,需要 tmux 风格的导航。
  • herdrm 提供点按即用的 UI(侧边栏行、上下文菜单),同时仍暴露 真正的 PTY,因此你可以在不承担多路复用器心理负担的情况下保留完整的 TUI 体验。
  • 它是 纯原生 的——没有 Electron 或嵌入式浏览器,因此启动迅速且轻量。
  • 将你所有的机器集中在一个窗口中,让你无需轮询即可监控状态并响应代理。

📦 安装

方法 命令 / 步骤
Homebrew(推荐) brew install owo-network/brew/herdrm
手动 从 Releases 页面下载最新的 herdrm-x.y.z.zip,解压后将 herdrm.app 拖入 /Applications。之后可通过 检查更新… 菜单自动更新。

⚠️ 安全提示 – 仅官方 GitHub 仓库和 Homebrew cask 提供签名且公证的构建。第三方镜像曾分发与同名无关的 Windows 可执行文件。


⚡ 快速入门指南(来自 README)

  1. 启动 herdrm – 如果没有运行,它将自动启动本地 herdr 守护进程。
  2. (可选)添加远程设备 – 例如 you@dev-box、you@dev-box:2222,或 Tailscale 主机。
  3. 按 ⌘N,选择设备和 CLI(Claude、Codex 等)——你将连接到其实时终端。
  4. 按 ⌘K 搜索并跳转到任何设备上的任何代理或终端。

🏗️ 架构(高阶视图,来自 README)

herdr  (后台服务器,拥有 PTYs) ──► Unix 套接字 RPC / SSH 隧道 ──► HerdrKit (Swift 包,UI 无关的传输与设备存储) ──► HerdrM (SwiftUI 应用:侧边栏、终端、搜索、通知)
  • herdr – 创建并持久化 Spaces、Agents 及其 PTY 的守护进程。
  • Packages/HerdrKit – 处理套接字-RPC、SSH 隧道和设备记录的 Swift 包;可单独进行单元测试(make kit-test)。
  • Sources/HerdrM – 实际的 macOS 应用,基于 SwiftTerm(基于 Metal 的终端模拟器)构建,并通过 SwiftUI 与 UI 连接。

🛠️ 开发与贡献

  • 构建前提:brew install xcodegen。
  • 命令:
    • make build – 使用 xcodegen 生成 Xcode 项目,然后构建应用(herdrm.app)。
    • make run – 启动构建好的应用。
    • make kit-test – 运行 HerdrKit 集成测试(需要本地 herdr 守护进程)。
  • 项目处于 早期阶段:测试覆盖率有限,预期存在 bug,欢迎 PR。请遵循 README 中的贡献指南。

📄 许可证

  • PolyForm Non-commercial 1.0.0 – 用于非商业用途、修改和共享免费。商业用途需从维护者处获取单独许可证。

⚠️ 状态

  • 早期阶段 – 功能可用但尚未完全由自动化测试覆盖。可能偶发崩溃或边缘情况处理缺失。

总结:如果你已经在使用 herdr AI 编码代理运行时,并希望有一个原生 macOS UI,可以管理多个设备、监控代理,并在不离开图形化应用舒适区的前提下与真实 PTY 交互,那么 herdrm 正是为此目的而构建的客户端。

相关

  • 项目
  • 项目
  • 项目
  • Dispatch
  • 项目