Herdr:給會跑多個 Coding Agent 的人的終端機運行時實測記錄
-
Herdr:給會跑多個 Coding Agent 的人的終端機運行時實測記錄
最近 Y Combinator F26 批次加入了 Herdr(25k stars、340k 下載、500+ 社區插件,4 個月達成),花了幾個小時在 macOS (Apple Silicon) 上實際裝起來跑,記錄一下安裝、操作、session 還原的真實情況。
是什麼
Herdr 不是 IDE、不是 Agent 框架、也不是新的 AI 模型。它是一個 terminal multiplexer(終端機多工器),專為 coding agents 設計:Claude Code、Codex、Cursor Agent、opencode、Hermes、Grok、Pi、Kimi、Copilot CLI……官方支援 20 種 agent。
核心價值只有一句:把 agent 的終端機交給背景 server 持有,關掉終端機視窗、合上筆電蓋、斷網,agent 照樣在跑;下次打開
herdr秒回現場。這台機器的安裝過程
# macOS Apple Silicon curl -fsSL https://herdr.dev/install.sh | sh # 輸出:detected macos/aarch64 → fetching latest release manifest... → downloading v0.8.2 → installed to /Users/wang/.local/bin/herdrexport PATH="$HOME/.local/bin:$PATH" herdr --version # herdr 0.8.2再裝兩個這台機器已有的 agent 整合:
herdr integration install hermes # installed hermes integration plugin to /Users/wang/.hermes/plugins/herdr-agent-state # enabled hermes plugin in /Users/wang/.hermes/config.yaml herdr integration install claude # installed claude integration hook to /Users/wang/.claude/hooks/herdr-agent-state.sh # ensured claude settings at /Users/wang/.claude/settings.json啟動 server:
herdr server & # 背景跑起來,log 見 /Users/wang/.config/herdr/herdr-server.logherdr status # client: 0.8.2, protocol 20 # server: running, 0.8.2, protocol 20, compatible: yes # socket: /Users/wang/.config/herdr/herdr.sock實際操作流程
1. 建立 workspace、跑 Hermes
herdr workspace create # 建立 workspace w1,tab w1:t1,pane w1:p1 herdr pane run w1:p1 hermesHerdr 偵測到 Hermes,sidebar 顯示
idle。2. 丟任務給 Hermes,狀態變
workingherdr pane send-text w1:p1 "幫我在 /tmp 創建一個簡單的 Python 腳本,計算斐波那契數列前 20 項" herdr pane send-keys w1:p1 Enter幾秒後狀態轉
working,任務完成自動回idle,且生成了真實可跑的檔案:# /tmp/fibonacci.py def fibonacci(n): if n <= 0: return [] if n == 1: return [0] fib = [0, 1] for _ in range(2, n): fib.append(fib[-1] + fib[-2]) return fibpython3 /tmp/fibonacci.py # F(0)=0, F(1)=1 ... F(19)=41813. 分割 pane,同時跑 Claude Code
herdr pane split w1:p1 --direction right --cwd /Users/wang # 新 pane w1:p2 herdr pane run w1:p2 claude --dangerously-skip-permissions此時 sidebar 同時顯示兩個 agent:Hermes
idle、Claudeblocked(等信任資料夾確認)。workspace 標籤直接顯示blocked——一眼就知道哪個專案有人等你回應,不用逐個 pane 去看。4. 關 server、重開,session 完整還原
herdr server stop # 再重開 herdr server & herdr status # server running, compatible yes原本的 workspace、tab、pane、agent session 全留著。實際 attach 進去,Hermes 真的是
--resume回同一個 session:hermes --resume 20260820_064458_f8f598 ↻ Resumed session 20260820_064458_f8f598 (2 user messages, 10 total messages) ╭────────── Previous Conversation ──────────╮ │ ● You: 幫我在 /tmp 創建一個簡單的 │ │ Python 腳本,計算斐波那契數列前 20 項 │ │ ◆ Hermes: 完成。檔案在 /tmp/fibonacci.py│ ╰───────────────────────────────────────────╯之前的對話內容、檔案路徑、執行結果全在。這就是 Herdr 最大的實用價值。
幾個踩到的細節
-
herdr直接跑會噴Device not configured——需要有真正的 TTY(或用script -q /dev/null bash -c 'herdr')。背景 server + API 操作沒問題,但想看 TUI 介面得在真終端機裡。 -
Agent 整合分兩類:
- Lifecycle authority(Pi、OMP、Kimi、OpenCode、Kilo、MastraCode):hook 直接回報
working/idle/blocked,Herdr 不再用畫面判斷 - Session identity only(Claude Code、Codex、Copilot、Devin、Droid、Qoder、Cursor、Hermes、Grok、Antigravity):只回報 session ID 供還原,狀態仍靠 Herdr 讀畫面判斷
- Lifecycle authority(Pi、OMP、Kimi、OpenCode、Kilo、MastraCode):hook 直接回報
-
macOS 上 Claude Code 的 hook 路徑:
~/.claude/hooks/herdr-agent-state.sh,settings.json會被寫入SessionStarthook。整合安裝前.claude目錄必須存在。 -
Windows 仍是 beta,只能用 preview channel。Linux/macOS 是 stable。
-
更新機制:
herdr update走 Herdr 自己的 installer;Homebrew/mise/Nix 用各自的包管理器更新。 -
Remote manifest 自動更新:Herdr 會定期從 herdr.dev 拉最新的 agent detection manifest,不用重啟就能支援新版 agent 的 UI 變化。
適合誰
- 同時開 2-3 個 agent(Claude Code + Codex + Hermes 之類)
- 常常要離開電腦、合蓋、換地點,但不想中斷 agent 的工作
- 需要在手機/平板/另一台機器上接手正在跑的 agent session(
herdr --remote user@host) - 想要一個視覺化的 sidebar 知道哪個 agent 在跑、哪個卡住等人
不適合誰
- 只偶爾用單一 agent、用完就關的人
- 習慣 tmux/zellij 且已經有完整 workflow、不想換工具
- Windows 主力機(目前仍 preview,有已知限制)
這篇整理參考官方文件、GitHub README、安裝腳本輸出、本機實測 API snapshot 與 terminal 輸出,供同樣在終端機裡跑多 agent 的人參考。
-