Herdr 发布原生桌面应用
Herdr has released native app
Herdr 发布原生桌面应用,用于集中管理终端并查看编码智能体状态,支持通过 SSH 在其他机器运行工作区,并让终端在关闭本地窗口后继续运行。
Herdr 同时给出安装脚本、智能体操作指南和跨平台绘制基准脚本,读者可参考其组织终端与编码智能体工作流的具体方式。
Herdr 是一款面向终端和编程智能体的桌面应用。将工作集中在空间中,查看哪些智能体需要你处理,并在关闭窗口后让终端继续运行。
安装
Linux 和 macOS
curl -fsSL https://releases.herdr.dev/app/install.sh | shLinux 需要桌面会话和可用的 Vulkan 驱动。macOS 版本适用于 Apple Silicon;Intel Mac 用户可以从源代码构建。Linux 构建版本支持 x86-64 和 ARM64。
安装程序会将 Herdr 添加到应用程序中,并将命令放在 ~/.local/bin。
如果安装程序提示,请将该文件夹添加到 PATH。
在 macOS 上,应用位于 ~/Applications/Herdr.app。
如需在 Apple Silicon 上拖放安装,请下载 Herdr.dmg,并将 Herdr 拖到应用程序。
Windows
在 x64 Windows 上使用 PowerShell 运行,并确保已安装 curl 和 tar(Windows 10 1803 或更新版本):
irm https://releases.herdr.dev/app/install.ps1 | iex
Herdr 会出现在开始菜单中。安装程序会将 %LOCALAPPDATA%\Programs\herdr-app 添加到用户 PATH。打开新的终端以使其生效。
两种安装程序都会下载并运行代码。如果你愿意,请先阅读 shell 安装程序 或 PowerShell 安装程序。 如果缺少 herdr-core,它们也会将其安装。 该应用可以帮助安装或更新其无法使用的核心。
查找你的工作
一个空间保存一台机器上的工作,通常对应一个仓库。每个空间都有标签页。将标签页拆分为窗格,以便将终端或 Mod 面板并排放置。
未命名的空间会跟随其第一个终端所在的文件夹。如果想要一个长期保留的标签,请为空间或标签页命名。 新标签页会从当前聚焦终端所在的文件夹开始。
智能体侧边栏将各个空间中的智能体汇总到一个列表中,包括由另一个智能体启动的工作智能体。 报告状态的智能体会显示为:
- 工作中:仍在忙碌。
- 受阻:正在等待你。
- 已完成:你在查看其他地方时已完成工作。
- 空闲:未在工作,或者是你已查看过的已完成智能体。
点击智能体即可查看它。没有窗格的工作智能体会以peek方式在你的标签页上方打开。如果想让它与其他工作并排,可以将其保留为标签页。
在终端文本中的活动终端地址上按住 Ctrl 并单击即可预览;macOS 上使用 Cmd 单击。
诸如 t7 这样的地址表示终端与显示该地址的终端位于同一台机器上。vps/t7 则表示另一台机器上的终端。
窗口负责排列终端,核心负责运行终端。 关闭窗口会让终端继续运行;关闭窗格或标签页则会结束其中的终端。 重启或核心崩溃后,保留的窗格会在上次所在的文件夹中启动新的 shell,而不是恢复原来的程序。
在另一台机器上工作
从“设置”→“机器”或侧边栏的“添加机器”操作添加 SSH 机器。 从 SSH 配置中选择主机,或输入 SSH 连接该主机的方式。 该机器上的空间会在那里运行终端,而不是在你的计算机上运行。
每台机器都在其核心中保存自己的空间、标签页和拆分结构。已连接的屏幕共享这一结构和活动终端,但各自保留焦点和缩放状态。 只要远程机器和核心保持运行,远程工作就会在本地窗口关闭或笔记本电脑休眠后继续运行。
按你的方式定制
打开命令面板,按名称查找操作,或打开“设置”来更改字体、颜色、声音和其他偏好。 内置布局包括 Herdr、Terminals 和 Herdr 98。 布局用于排列窗口。Mods 是小型 JavaScript 程序,用于绘制其面板、菜单和对话框。
在更改随附布局或模组的结构或代码前,请先复制。你的副本始终归你所有;Herdr 会在启动时更新随附的版本。 保存个人布局、模组或快捷键文件后,窗口会重新加载它。 编辑损坏时,会保留最后一个正常版本并报告错误。
Ctrl+Shift+P 显示所有命令及其快捷键(在 macOS 上为 Cmd+Shift+P)。可在 keys.json 中更改任意快捷键;有关格式,请参阅模组指南中的快捷键部分。
更新与隐私
已安装的发行版会在后台检查更新,并将新应用下载到正在运行的应用旁边。退出后重新打开时,新应用会接管;你也可以选择更新操作。你的终端会继续在核心中运行。 “设置 → 更新”会显示可用更新。更新后会打开“新增内容”;你也可以从命令面板再次打开。 从源代码构建的版本不会自行更新。
发行版本默认启用使用情况遥测。可在“设置 → 隐私”中关闭。 模组是受信任的代码,并非沙盒扩展。在安装他人的模组前,请阅读安全与隐私。
面向智能体
herdr-app --skill
这会打印用于操控窗口的智能体指南。herdr-core 技能会将智能体引导至此处。 使用 herdr-core 运行和协调程序;使用应用来改变你所看到的内容。
herdr-app ls herdr-app status herdr-app commands
前两个命令会检查打开的窗口。即使没有窗口,命令列表也可使用。 有关参数,请参阅命令参考。
从源代码构建
如需反馈缺陷、提出模组 API 请求或贡献代码,请参阅参与贡献。
连同子模块克隆此仓库。使用 Rust 1.95.0 和 Zig 0.16.0,即 CI 中使用的版本。 Linux 需要安装该工作流中列出的开发包。
git clone --recurse-submodules https://github.com/herdrdev/herdr-app.git cd herdr-app just build just test just install
安装 just 以使用这些构建配方。 平台安装程序会构建发行版,并将应用添加到桌面。 在 Linux 上,它会链接到此检出目录,因此请保持检出目录的位置不变。 退出并重新打开 Herdr,以使用新的构建版本。
文档检查还需要 Bun:just docs-check 检查生成的页面和 CLI 示例;just docs-generate 刷新参考页面。
若要在 Windows、Linux 或 macOS 上比较绘制变化,请针对每个构建运行相同的固定工作负载:
python scripts/bench.py --bin <app executable> --set spinners --seconds 20
运行器要求 hc 位于 PATH 中,并使用运行脚本的 Python 可执行文件。它会打印一个唯一的制品文件夹路径,其中包含运行设置、计数器和结果,然后停止其专属应用、终端和核心。两组均使用 Python 夹具程序;默认组的 TUI 工作负载取代了以往的 btop 测量值。--only spinners 仅测量静默状态下的原生加载指示器场景。保持窗口可见,并让显示屏保持唤醒状态,同时在相同的窗口活动和显示设置下进行比较;非活动窗口的绘制速率可能更低。Windows 会在每个测量边界记录可见性、前台活动情况和显示 Hz;其他平台会将这些观测标为不可用。可见性无法确定遮挡情况。Draws 指的是窗口渲染调用。渲染到绘制的耗时在场景最终处理、后端绘制、上传和呈现之前截止;它独立于操作系统进程的 CPU 时间。两者均不测量显示器的实际呈现,也不测量 FPS HUD 推导出的 MAX FPS。
python scripts/bench_compare.py ghostty --root <artifact folder> 会在 macOS 比较中复用一次运行所用的假智能体。基准检查:python -m unittest discover -s scripts -p test_bench.py。
来源:Hacker News · github.com