iT邦幫忙

2026 iThome 鐵人賽

DAY 28
0
AI Engineering

[ opencode ] 開源 AI coding agent系列 第 28 篇

28-herdr | coding agent 的終端機多工

  • 分享至 

  • xImage
  •  

! 本篇文章將會介紹 herdr,一個讓 coding agents 常駐運行的終端機 runtime——工作不因闔上筆電而中斷 :D

TL;DR: https://dev.benben.me/slides/s/ironman-28-herdr

本篇目標

讀完這篇你會學到:

  • agent runtime 的問題意識:agents 一多就失控
  • herdr 的 workspaces、狀態感知與 agent-native API
  • 與 tmux 的對照,以及什麼場景該上 herdr

問題:三個 agent 各開一個 terminal,你會先瘋掉

走到今天,你手上已經有 opencode、可能還有 pi、Claude Code ... 場景很快變成這樣:

  • 專案 A 的 agent 在跑測試、專案 B 的在等他回答、專案 C 的在他闔上筆電時全部陣亡
  • tmux 可以保住 process,但八個 pane 裡哪個在等他?他要一個一個點開檢查
  • agent 之間要協作?各自甩 keystrokes 進 pane,祈禱對方收到

herdr(GitHub: herdrdev/herdr,Apache 2.0 開源,YC 背書)給這團混亂一個名字:agent runtime——coding agents 賴以運行的執行環境。

安裝

curl -fsSL https://herdr.dev/install.sh | sh

macOS / Linux / Windows 都有(homebrew、nix 也行)。

核心概念一:server 常駐,工作不朽

herdr 是一個 背景 server, terminal 都活在 server 裡面:

闔上筆電、斷了網路,agents 繼續跑;重開機,herdr 把版面帶回來、session 接著用。從任何有鍵盤的裝置連回你的 herd。

這跟 Day 18 的 opencode serve 是同一個思想(process 常駐化),但 herdr 常駐的是 任意 agent 的終端機 ——Claude Code、Codex、Cursor、opencode、Grok、Pi……官方宣稱開箱偵測 21 種 agent CLI,不包裝、不取代,只是「擁有它們的 terminal」。

核心概念二:狀態感知——不用再逐格搜尋

herdr 會 讀取每個 pane 的內容,把每個 agent 標成三種狀態:

  • working:跑工作中,別吵它
  • blocked:停下來等答案了——需要你
  • idle:做完了,等新指令

側欄點一下就跳到那個 pane。跟你玩「八個 terminal 換輪詢」相比,這是把注意力管理外包給 runtime。

核心概念三:workspaces 分欄分頁,agents 分組

組織單位叫 spaces(workspace)——一個 workspace 對應一個專案或一件事,裡面有 panes 與 tabs,agents 可以分組管理。dashboard 大概長這樣:

spaces
  herdr          master        ● working
  web-dashboard  feat/charts   ◉ blocked
  data-pipeline  backfill-v2   ○ idle

一眼看出:三個專案、四個 agent、兩個在忙、一個在等你。

核心概念四:agent-native——agents 互相驅動

最未來感的一點:herdr 的 CLI 與 socket API 是同一個表面——人類用的命令,agent 也用同一套。所以 agent 可以:

  • 分割 pane、互相啟動
  • 互相 prompt、傳任務
  • 等另一個 agent 真的 blocked 才介入——而不是盲目甩 keystrokes

Day 27 的 to-tickets 產出帶依賴的票、Day 11 的 orchestrator agent 派工——herdr 補上「多 agent 共居一個 runtime」的最後一塊。工作流從「一個人帶一個 AI」變成「一個牧羊人帶一群 AI」。

小小測驗:herdr 這名字是 herd(獸群)+ herder(牧人)的諧音——你的 agents 就是羊群,你是牧羊人。名字即路線圖。

herdr vs tmux

tmux herdr
本質 terminal multiplexer agent runtime
保活 會 會(且跨重開機恢復版面與 session)
知道 pane 裡是誰嗎 不知道,就是文字流 知道——辨識 agent、讀狀態
等待管理 自己輪詢 blocked/idle 自動標示
agent 驅動 甩 keystrokes 原生 API(分 pane、互相 prompt、等待)
遠端連入 SSH + attach 任何鍵盤連回(HTTP 層)

tmux 對「人讀文字」已經夠好;當 pane 裡的住戶變成 agent,就需要一個懂 agent 的 runtime。herdr 官網也有專門的 compare 頁可以細看。

用五維框架打分數

  • 開源:Apache 2.0
  • 模型自由:極高——它不管模型,21 種 agent CLI 通吃
  • 擴充性:plugins 體系(社群 900+)
  • 自動化:socket API 就是為自動化而生
  • 心智負擔:新的常駐服務 + 一層新概念;但對「已經多 agent」的人是減法不是加法

常見問題

Q:資源吃重嗎?
A:常駐 server 本身輕量;吃資源的是你開的 agents。機器配置建議照「同時跑幾個 agent」估算——每個 agent 都是 Terminal + node process 的等級。

Q:我只有一個專案一個 agent,需要嗎?
A:今天不需要。但「闔上筆電工作不中斷」這一條,對跑長任務(大重構、批量測試)的人單獨就值回票價——看你工作型態。

Q:跟 opencode 的 subagents(Day 11)什麼關係?
A:互補。subagents 是「一個 opencode 內部分身」;herdr 是「多個獨立 agent CLI 的共居 runtime」。前者細粒度、後者跨工具——Day 30 的總結會把它們接在一起。

小結

  • herdr = coding agent 的 runtime:server 常駐、工作不朽
  • 狀態感知(working / blocked / idle)把注意力管理自動化
  • agent-native API 讓 agents 分 pane、互相驅動、知道彼此何時卡住
  • tmux 保活 process,herdr 理解 agent——住戶變了,房子也該變

明日預告

Day 29:橫向比較——把 opencode、pi、OpenSpec、open-slide、mp skills、herdr 放上同一張桌子,給你場景 × 工具的選擇矩陣。


有任何疑問但沒有 iT 邦幫忙帳號,或是想匿名提問?
歡迎到 https://dev.benben.me/q/P3C5U6 提問或加油打氣,沒意外的話會在完賽之後一起回答 :D


上一篇
27-Matt Pocock skills | 進階:從 spec 到 tickets 的工作流
下一篇
29-AI agent 工具 | 橫向比較:場景 × 工具選擇矩陣
系列文
[ opencode ] 開源 AI coding agent 共 29 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言