‹ 指南

在手機上用 herdr v26.5.2+

herdr 把你的 shell、監控、編輯器和程式設計智能體放在伺服器上的同一個工作階段裡。Term 為它配了專屬按鍵列,你的點擊和滑鼠操作也會傳給它。

需要 Term v26.5.2 或更新版本。

由 26.5.2 起,右鍵選單和滑鼠拖曳都能傳給 herdr。

撰寫於

herdr 是甚麼

herdr 是一個終端機工作區管理器,專為執行程式設計智能體而設計。和 tmux 一樣,它在伺服器上執行,中斷連線後照常運作。它把工作分成三層:

它還會留意窗格裡執行的程式設計智能體(pi、Claude Code、Codex 等),顯示每個智能體是正在工作、已完成,還是在等你回覆。

在伺服器上安裝,然後執行 herdr:

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

按鍵列變成 herdr 按鍵列

執行 herdr 後,鍵盤上方的按鍵列會自動切換成 herdr 的按鍵,和 tmux 一樣。左右滑動按鍵列就能找到它們。

Term 中執行著 herdr。標題列顯示 herdr,herdr 自己的頂列顯示工作區 prod-web 和分頁 shell 1/6,鍵盤上方的按鍵列顯示 ^Bg ^B[ ^Bz ^Bc。
標題列顯示 herdr,按鍵列已經換成 herdr 的按鍵。頂部是 herdr 自己的狀態列:工作區(prod-web)、目前分頁,以及一共有幾個。
esc^B↑↓←→ ^Bg^Bz^Bc^Bn^Bp ^Bv^B-^Bx^Bw^Bq ^C^R

herdr 和 tmux 一樣用 ctrl+b 作前綴,但後面好幾個鍵的意思不同——所以 Term 為 herdr 另配一套按鍵列,而不是沿用 tmux 的。^Bg 是跳轉(goto),^Bc 新增分頁,^Bn 和 ^Bp 切到下一個和上一個分頁,^Bv 和 ^B- 向右和向下分割,^Bz 放大,^Bx 關閉窗格,^Bw 開啟工作區,^Bq 中斷。tmux 裡 ^Bd 是中斷,在 herdr 裡不是。

每件事一個分頁

為每個長時間執行的東西各開一個分頁:監控、記錄、編輯器、智能體。每個分頁都佔滿整個螢幕,在手機上這通常正是你想要的。

並排的三個 herdr 分頁:btop 列出滿載的程序,htop 顯示 CPU 條,以及 nginx 錯誤記錄的即時輸出。
同一個工作區裡的 btop、htop 和記錄,各佔一個分頁。herdr 的頂列顯示 tab btop · 2/6、3/6、4/6——六個分頁,一個工作階段。
在 herdr 中用 vim 編輯一個 Rust 檔案,附語法高亮:關鍵字、型別、字串和註解顏色各不相同。
第 5 個分頁裡用 vim 開啟一個 Rust 檔案。程式畫出來的一切——顏色、粗體、狀態列——都和在桌面終端機裡一樣。

用 ^Bg 跳到任何地方

^Bg 開啟 herdr 的 goto 選擇器:所有工作區、分頁和窗格以樹狀列出。用按鍵列上的方向鍵移動,按 Enter 即可。有六個分頁時,這一個組合鍵就省去連按五次 ^Bn。

工作階段上方的 herdr goto 選擇器:工作區 prod-web 下有 shell、btop、htop、logs 和 vim 幾個分頁,各自附上窗格和工作目錄。
^Bg——工作區裡的每個分頁和窗格,以及它的目錄。選中一個就過去了。

分割與放大

^B- 把分頁分成上下兩個窗格;^Bv 分成左右兩個。在手機上,盡量向下分:左右分割會把寬度減半,大多數輸出在半個螢幕的寬度裡都會折行得很難看。

分成兩個窗格的 herdr 分頁:上面的 shell 顯示一個設定檔,下面是即時記錄。目前窗格的邊框高亮。
^B-——上面是 shell,下面是記錄。高亮的邊框表示你輸入的內容會進哪個窗格。

^Bz 把目前窗格放大到整個分頁,版面不變;再按一次 ^Bz 就還原。

記錄窗格放大到佔滿整個分頁。
^Bz——記錄窗格佔滿整個螢幕。取消放大後,分割還在原處。

直接點

herdr 是為滑鼠設計的,Term 會把你的點擊當作滑鼠點擊傳給它。點右上角的 switch,herdr 會開啟選單:你的智能體、工作區、分頁,以及中斷等操作。點一個分頁就切過去。

herdr 的 switch 畫面:agents 一欄顯示 pi 閒置,spaces 一欄列出 prod-web 和 api 兩個工作區,tabs 列出由 shell 到 pi 的分頁,menu 裡有 settings、keybinds 和 detach。
點一下開啟的 switch。在這裡點一下就能去任何工作區或分頁、新增一個,或者中斷。

用滑鼠

接上滑鼠,或者用附觸控板的鍵盤保護套,herdr 用起來就和在電腦上一樣。右鍵窗格開啟選單;拖曳兩個窗格之間的邊框來調整大小;點一個窗格讓它取得焦點。

右鍵開啟的 herdr 窗格選單:Rename pane、Swap with focused pane、Split right、Split down、Zoom、Send right-clicks to pane、Close pane。
在窗格上按右鍵——重新命名、交換、分割、放大或關閉它。

使用滑鼠的程式會接管你的點擊,所以直接點連結會交給 herdr。按住 Ctrl 點擊連結,就會在 Term 裡開啟它。

程式設計智能體

herdr 能辨認窗格裡執行的程式設計智能體,並在頂列報告它們的狀態:1 working、1 done、all idle。switch 畫面會把它們列在 agents 下,不用逐個開啟分頁就知道哪個在等你。

pi 程式設計智能體在 herdr 的一個分頁裡執行,上方 herdr 頂列顯示 prod-web、tab pi 6/6、all idle。
第 6 個分頁裡的 pi 智能體。herdr 頂列顯示 all idle——沒有正在工作的,也沒有在等回覆的。

想要的不只是狀態——例如窗格重新啟動時還原智能體的對話——就為該智能體安裝 herdr 的整合:herdr integration install pi,或者在 herdr 的設定裡開啟。

中斷,再回來

用 ^Bq 中斷,或者 switch → detach。你會回到自己的 shell,而 herdr 裡的一切都在伺服器上繼續執行。

從 herdr 中斷後的 shell:herdr 指令和一個新的提示字元。
已中斷。 分頁、窗格和智能體都還在伺服器上執行。

再執行一次 herdr,就回到離開時的地方——同一個分頁,智能體還在做它的事。這正是 herdr 在手機上的價值:Term 在背景大約保留工作階段 90 秒,之後 HarmonyOS 關掉連線,而 herdr 裡甚麼都不會察覺。

每次都直接進 herdr

把主機的啟動腳本設為 herdr(編輯主機 → 進階選項),每次連線都會直接進入你的工作階段。在同一頁開啟自動恢復工作階段,連線中斷後,回到 Term 時會自動重新連接並回到 herdr。啟動腳本是 Term Pro 功能。

經 mosh 連線時,按鍵列停留在 shell 按鍵

Term 是從 shell 回報的指令得知 herdr 正在執行的,而 mosh 工作階段不會這樣回報指令。herdr 照常運作,只是你需要先按 ctrl,再按 b,然後按對應的鍵。經 SSH 連線時,herdr 按鍵列會自動出現。