什么是 Herdr?
Herdr 是一款面向终端与编程代理的桌面应用。工作按空间组织,通常一个代码仓库对应一个空间;每个空间有若干标签页,标签页又可以拆分成窗格,于是一个 shell、一个编辑器和两个编程代理可以在同一个窗口里并排运行。代理侧栏列出所有空间中的每个代理及其状态(Working 正在工作、Blocked 等待你回应、Done 已完成、Idle 空闲),一眼就能看出哪个需要你的回答。关闭窗口不会停止任何东西:终端运行在 herdr-core(hc)这个小型后台进程中,再次打开 Herdr 时它们都还在。它用 Rust 编写,采用 Apache-2.0 许可证,主页是 herdr.dev。
apt upgrade 就能让你工作的每台机器保持最新。
⚡ Herdr 的主要功能
🗂️ 空间、标签页与窗格
给每个代码仓库一个独立的空间,在里面打开标签页并拆分成窗格。切换项目就是切换空间,每个终端都停留在你离开时的样子。
🤖 代理侧栏
任何空间中运行的每个编程代理都会出现在同一个列表里,并显示状态:Working、Blocked(等待你)、Done 或 Idle。处于 Blocked 的那些最该先看。
♾️ 关掉窗口,终端照常运行
终端运行在 herdr-core(hc)里,而不是窗口里。关闭 Herdr 后,你的 shell、构建和代理仍在继续;再次打开,它们全都回来了。
🌐 通过 SSH 使用远程机器
添加一台可以通过 SSH 访问的机器,空间里的终端就改在那里运行,笔记本休眠或切换网络时,长时间的代理会话也不会中断。
🎨 命令面板、主题与布局
Ctrl+Shift+P 打开可以完成一切操作的命令面板;主题和内置布局(Herdr、Terminals 以及复古风格的 Herdr 98)改变窗口的外观和显示内容。
🧩 JavaScript Mod
用 JavaScript 编写的 mod 可以绘制自己的面板和菜单,应用尚未覆盖的工作流无需等待新版本就能加上。
apt upgrade 就能让你保持最新。
📦 从 deb.griffo.io 安装
第 1 步:添加仓库
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(. /etc/os-release; echo ${DEBIAN_CODENAME:-${UBUNTU_CODENAME:-$VERSION_CODENAME}}) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(. /etc/os-release; echo ${DEBIAN_CODENAME:-${UBUNTU_CODENAME:-$VERSION_CODENAME}}) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt updatesudo apt install extrepo
sudo extrepo enable griffo
sudo apt update🆓 有一个永久免费的镜像。 deb-free.griffo.io 永久免费提供软件包 — 无需账号、无需订阅,最多落后上游 2 个月,安全修复立即发布。目前收录 cliamp、Ghostty、lazydocker、Oh My Posh、Uncloud 和 Zed;Herdr Desktop 不在其中,因此今天只能通过上面的仓库安装 — 提出请求即可将其加入。
🧩 关于 extrepo 选项。 extrepo 是 Debian 官方用于管理第三方仓库的工具:它会替你写好 sources 文件并安装签名密钥,并在使用前先对照签名元数据校验该密钥。本仓库以 griffo 之名登记其中,永久免费镜像则为 griffo-free,因此在 Debian(bookworm、trixie、forky、sid)上,上面的命令就是全部配置。
extrepo 只负责 sources 文件和密钥,订阅凭据仍然要写入 /etc/apt/auth.conf.d/deb.griffo.io.conf。Ubuntu 不在覆盖范围内,因为 extrepo 只发布 Debian 各套件的元数据:在 Ubuntu 上请使用 sudo 或 root 的命令。
第 2 步:安装 Herdr
# 安装最新版 Herdr(软件包和命令都叫 herdr-app)
sudo apt install herdr-app
# 验证安装
dpkg -s herdr-app | grep Version# 安装最新版 Herdr(软件包和命令都叫 herdr-app)
apt install herdr-app
# 验证安装
dpkg -s herdr-app | grep Version第 3 步:第一次运行
# 从应用菜单或终端启动 Herdr
herdr-app
# 首次打开时,Herdr 会提议把 herdr-core(hc)安装到 ~/.local/bin。
# 请接受:软件包不包含 hc,而正是它让终端在窗口关闭后继续运行
ls -l ~/.local/bin/hc
# Herdr 使用 Vulkan 绘制界面,并且需要 X11 或 Wayland 桌面会话;
# 检查软件包推荐的驱动是否已安装
apt policy mesa-vulkan-drivers🎯 基本用法示例
使用空间和代理:
# 1. 为一个代码仓库创建空间,并在其中打开一个标签页
# 2. 把标签页拆分成窗格:一个 shell、一个编辑器、一两个编程代理
# 3. 留意代理侧栏:Working、Blocked、Done 或 Idle
# 其他操作都可以用 Ctrl+Shift+P 打开命令面板完成
# 关掉了窗口?终端一直在运行;再次打开即可
herdr-app检查图形栈:
# 查看当前会话类型:x11 或 wayland(需要桌面会话)
echo $XDG_SESSION_TYPE
# 安装 Vulkan 工具,确认有驱动识别到你的 GPU
sudo apt install vulkan-tools
vulkaninfo --summary
# 没有列出 GPU?安装 mesa-vulkan-drivers,然后重新登录# 查看当前会话类型:x11 或 wayland(需要桌面会话)
echo $XDG_SESSION_TYPE
# 安装 Vulkan 工具,确认有驱动识别到你的 GPU
apt install vulkan-tools
vulkaninfo --summary
# 没有列出 GPU?安装 mesa-vulkan-drivers,然后重新登录保持最新:
# Herdr 随系统其他软件一起更新(此构建关闭了自动更新)
sudo apt update && sudo apt upgrade
# 查看已安装的版本以及可用的最新版本
apt policy herdr-app
# 卸载
sudo apt remove herdr-app# Herdr 随系统其他软件一起更新(此构建关闭了自动更新)
apt update && apt upgrade
# 查看已安装的版本以及可用的最新版本
apt policy herdr-app
# 卸载
apt remove herdr-app🔧 工具集成
Herdr 是你已经在用的命令行工具的家,所以关键在于它所处的机器环境:
- 桌面会话:Herdr 是图形应用,需要 X11 或 Wayland 会话;在无头服务器上,请改为通过远程机器在那里运行终端
- Vulkan:窗口用 Vulkan 绘制,因此需要可用的 Vulkan 驱动。软件包推荐
mesa-vulkan-drivers,它覆盖 Intel 和 AMD 显卡;NVIDIA 专有驱动自带 Vulkan 支持 - herdr-core:
hc位于你主目录下的~/.local/bin,由应用在首次运行时安装,而不是由 apt 安装;窗口关闭期间,正是它让终端保持运行 - 远程机器:添加一台可以通过 SSH 访问的机器,空间里的终端就在它上面运行,笔记本休眠或断网时,长时间的代理会话也能保留下来
- 编程代理:像运行其他命令一样在窗格中运行你的代理 CLI;代理侧栏会把所有空间中的代理汇总起来,并显示哪个正处于 Blocked 状态等待你
- 终端里的 herdr:本站的 herdr 软件包是另一个程序,一款终端代理多路复用器;Herdr 是桌面应用,两者可以同时安装
- 你的工具:一个窗格里是 Neovim 或 Helix,另一个是 lazygit,第三个是代理,全都在同一个空间中
🚀 为什么选择 deb.griffo.io?
- 官方 Debian: 没有打包 Herdr,在全新系统上
apt install herdr-app会失败 - 上游下载:来自 releases.herdr.dev 的发布构建会绕过 apt 自行更新,而且每台机器都得单独处理
- 从源码构建:需要 Rust 工具链、图形与窗口系统的开发包,以及漫长的编译
- deb.griffo.io: 最新版本,并自动更新
- ✅ 唯一的 apt 来源:Debian 和 Ubuntu 的官方仓库都没有 Herdr;本仓库打包的是上游官方发布版本
- ✅ 处处同名:软件包叫
herdr-app,命令也叫herdr-app:先sudo apt install herdr-app,再运行herdr-app或从启动器打开 - ✅ 通过 apt 更新:此构建关闭了应用内的自动更新,所以磁盘上的版本永远是 apt 安装的那个,不会有东西绕过包管理器去改写它
- ✅ 完整的软件包:Herdr 桌面应用,声明了依赖以便在每个受支持的版本上安装,并推荐安装 Vulkan 驱动;herdr-core 则由应用在首次运行时自行设置
- ✅ 自动更新: 上游发布后数小时内更新软件包
- ✅ 两种架构: amd64 和 arm64 在 Bookworm、Trixie、Forky 和 Sid 上都受支持;没有 i386、armhf 或 riscv64 构建
- ✅ 多发行版: 支持 Bookworm、Trixie、Forky 和 Sid
- ✅ 易于维护: 使用标准 apt 命令即可更新
📦 软件包构建仓库
Debian 软件包在这个 GitHub 仓库中自动构建和维护:
- 🐏 herdr-app-debian - 最新版本构建
🔗 相关软件包
deb.griffo.io 同样提供:
- herdr - 终端代理多路复用器,适合习惯待在终端而不是窗口里的人
- Neovim - 放在代理旁边窗格里的编辑器
- lazygit - 一款终端界面,用来审查并提交代理所做的修改
- kitty - 一款 GPU 终端,处理 Herdr 之外的工作
- Ghostty - 原生 GTK 终端,同样适用