代理程式感知
同時執行多個代理程式時,您無法監看每個終端機——每個節點都需要告訴您它何時需要您,以及它正在哪裡工作,讓您可以直接採取行動,而不必一直盯著。TermTree 透過辨識終端機中執行的代理程式 CLI 來做到這一點:目前支援 Claude Code,也能偵測 Codex;不過節點的終端機完全不必執行代理程式——它就只是一般的 shell,只是 TermTree 還能辨識其中是否正在執行代理程式。
Worktree 指示器
進入 git worktree 的代理程式會將自己的工作目錄切換至該處,從那時起,它回報的路徑——無論是在輸出、堆疊追蹤或 git status 中——都會以該 worktree 的根目錄為基準,而不是窗格的 shell 目錄。若忘了代理程式位於哪個 worktree,您最後可能會檢閱錯誤的檔案副本,因此 TermTree 會自動顯示這項資訊。
當 TermTree 偵測到終端機的前景代理程式正在 git worktree 內工作時,會在該節點及終端機標題列上顯示 worktree 圖示。將游標停留在圖示上,即可查看該 worktree 的分支名稱。
此指示器會在重新啟動後保留——重新開啟 TermTree 時,代理程式原本位於 worktree 中的節點仍會顯示該指示器。
原生 Windows 不支援此功能。 Worktree 偵測依賴 POSIX 風格的路徑解析,因此無法在原生 Windows shell 中運作。跨越 WSL 邊界時也無法使用,因為該邊界會對主機隱藏代理程式的工作目錄——在這種情況下,TermTree 會改用 shell 回報的目錄。
繼續 Claude 工作階段
選取節點後按下 Cmd+Shift+R / Ctrl+Shift+R,即可繼續其 Claude Code 工作階段(claude --resume)——如果終端機已關閉,或您想回到對話而不想重新輸入繼續命令,這會很實用。若要了解此功能如何在應用程式重新啟動後自動執行,請參閱工作階段持久化。
TermTree 如何得知代理程式正在等您
INPUT 狀態(橘色圓點)表示代理程式受阻,正在等待您的回應。TermTree 透過兩種方式偵測此狀態:
- Claude Code——權威判定。 TermTree 會在
~/.claude/settings.json中註冊 Notification hook,並將TERMTREE_NODE_ID注入每個終端機的環境。當 Claude 觸發通知時(例如要求允許工具呼叫),TermTree 可以明確知道哪個節點需要您注意——並非根據終端機文字進行猜測。 - 其他 CLI——模式比對備援機制。 對於未整合 hook 的代理程式,TermTree 會掃描終端機輸出,尋找常見的阻塞提示模式(例如
[y/N]形式的確認提示),藉此推斷終端機正在等待輸入。