前言¶
DeepSeek Harness(以下簡稱 dsh)是 DeepSeek 開源的 Agent 運行時,核心理念是「一切皆插件」:模型、工具、會話、沙箱、調度,以及界面,都可以在配置層替換,而不必改 Harness 源碼。官方提供的入口是 Web UI,一條 npx @deepseek-ai/dsh web 就能起來。
終端裏寫代碼的人,往往已經習慣全屏 TUI:滾動回放、快捷鍵、權限彈窗、會話就在當前工作目錄。xAI / SpaceXAI 的 grok-build 正是這一類界面。問題是:想用 grok 那套終端交互,又不想把提示詞、工具和會話存儲換成另一套內核。
社區插件 dsh-grok-tui 做的就是這件事。它把 grok-build 的 TUI 接到 dsh 上:界面是 grok 的,內核仍是 dsh。本文依據插件目錄頁、GitHub README 與倉庫文檔交叉覈實後寫成。文中提到的 DeepSeek Harness 插件庫 是獨立社區站點,與 DeepSeek / 幻方沒有官方從屬關係,不要把它當成官方應用商店。
這是什麼¶
dsh-grok-tui 是一款界面增強插件,由 chen-001 維護,倉庫地址是 chen-001/dsh-grok-tui。目錄頁的定位很短:通過 grok-build 的 TUI 使用 dsh。
倉庫 README 把邊界寫得更清楚:只借用 grok 的前端;提示詞、工具、模型路由、會話持久化仍由 dsh 提供。架構文檔補充了一點:grok-shell 那一套 Agent 運行時並不會真正跑起來——pager 二進制在 leader 模式下連到本插件提供的服務,而不是自己拉起一套 agent。
截至本文覈實(2026-08-17):
- 許可證:MIT
- 主要語言:TypeScript
- npm 包版本:
0.3.8(以倉庫package.json爲準) - GitHub 星標:10
- 運行環境:macOS / Linux;Node.js 要求
^22.19.0 || >=24.0.0 - 平臺限制:leader 傳輸走 Unix socket,Windows named pipe 尚未實現
它解決的痛點很具體:已經在用 dsh 的人,不必爲了終端交互另起一套 Harness;已經習慣 grok TUI 的人,可以把會話、工具和模型路由留在 dsh 裏。
核心功能¶
根據目錄頁、README 和 docs/ARCHITECTURE.md,當前已覈實的能力如下。
1、前端與內核分離。 插件在 Unix socket 上實現 grok 的 leader 協議,再把 Agent Client Protocol(ACP)方法映射到 dsh 的 ctx.agents / ctx.llm 等服務。系統提示詞組裝、工具註冊、審批、沙箱、會話落盤都還在 dsh 一側。
2、掛進官方 dsh web。 推薦用法是先啓動官方 host,再開 TUI。grok-dsh setup 會把 grok-server 寫入 ~/.dsh/profiles/web/cordis.patch.yml,並把插件軟鏈進該 profile 的 node_modules,這樣 npx @deepseek-ai/dsh web 會帶上 leader socket。兼容性文檔寫明:自 0.2.0 起,推薦把插件跑在官方 host 進程裏,而不是長期依賴獨立後端。
3、與 Web UI 共用會話。 後端寫入同一份會話存儲(默認 ~/.dsh/sessions)。TUI 裏 /resume 能看到 Web 側的會話,TUI 裏開的會話也會出現在 Web 側。工作區分組會按會話的工作目錄去對齊 Web 的 workspace 註冊表。不要用 Web 和 TUI 同時驅動同一個會話,兩邊的追加會交錯;文檔說明服務端在 resume 時會嘗試自愈交錯日誌,但日常仍應避免對打。
4、用量指標,不必自己編譯 grok。 官方 grok 二進制就能在狀態欄顯示 token 用量(例如 18K/1.0M 的 context bar)。更完整的指標——緩存命中率、TTFT、TPS、累計輸入/輸出 token——在 herdr 的 pane 或 tmux 裏會自動出現。README 明確寫了:這兩處不需要編譯 grok 源碼。herdr 側欄配置由安裝過程自動寫入,重啓 herdr 或 reload config 後生效。
5、終端內可操作的控制。 架構文檔記錄了 pager 側已接通的操作:Ctrl+M 或 /model 切換模型(列表來自 dsh 的 provider 目錄);權限對話框用 Enter 允許一次、Esc 拒絕;/resume 打開會話選擇器;Ctrl+T 打開 todo 面板;/exit 退出 TUI。斜槓命令以 grok pager 內置的爲準,插件不會把 dsh 的 host 命令目錄再廣告一遍。
安裝與啓用¶
先滿足兩個前提:本機已安裝 dsh,以及 grok TUI 二進制。grok 的安裝命令來自 grok-build 倉庫,macOS / Linux 爲:
curl -fsSL https://x.ai/cli/install.sh | bash
dsh 可用官方文檔中的快速入口:
npx @deepseek-ai/dsh web
社區目錄頁給出的安裝命令如下,在 DeepSeek Harness 終端中運行即可:
dsh plugin add github:chen-001/dsh-grok-tui
如需可復現安裝,按目錄頁說明固定 commit 哈希:
dsh plugin add github:chen-001/dsh-grok-tui#commit
把 #commit 換成實際的 commit SHA。目錄頁同時提醒:插件以當前 dsh 進程的權限運行,安裝時可能執行代碼,裝之前應檢查源碼倉庫和許可證。
只執行上面的 dsh plugin add,還不等於已經有一條可啓動的 grok-dsh 命令。倉庫 README 另外給出了兩種啓用方式,安裝後的行爲一致(命令、herdr 側欄自動配置、用量面板)。
方式 A:npm 發佈版
npm install -g dsh-grok-tui
grok-dsh setup
npx @deepseek-ai/dsh web
grok-dsh
各步含義如下:
npm install -g dsh-grok-tui:裝全局包,提供grok-dsh啓動器。grok-dsh setup:顯式把 bridge 掛進 dsh 的 web profile。README 強調全局安裝不會靜默改寫 dsh 配置,需要你自己跑這一步;它是冪等的,可重複執行。npx @deepseek-ai/dsh web:啓動官方 host。若 host 已經在跑,重裝後需要重啓一次,leader socket 纔會帶上。grok-dsh:打開 TUI,直連正在運行的 dsh web。
方式 B:git 完整安裝
git clone https://github.com/chen-001/dsh-grok-tui.git
cd dsh-grok-tui && sh install.sh
這條安裝腳本會自動完成同樣的 bridge 掛接,再構建並把 grok-dsh 寫入 PATH。
典型用法¶
推薦順序:先起官方 host,再開 TUI。
dsh web
grok-dsh
grok-dsh 檢測到正在運行的 dsh web 就直連;否則會在本窗口拉起獨立後端。配套子命令如下:
grok-dsh stop # 停止所有獨立後端
grok-dsh status # 查看 host 橋 / 獨立後端狀態與 grok 版本
grok-dsh restart # 重啓當前窗口的獨立後端
在哪個目錄執行 grok-dsh,會話的工作目錄就在哪個目錄。獨立後端與 dsh web 不要同時跑,兩者寫同一份會話存儲。
架構文檔還記錄了幾個環境變量,適合按項目覆蓋,而不是改全局默認:
DSH_GROK_MODEL:初始模型,文檔默認值是deepseek-v4-pro,較輕量的示例是deepseek-v4-flashDSH_GROK_EFFORT:推理力度,文檔默認max,可選off|high|maxGROK_BIN:指定 grok / pager 二進制路徑
在 herdr 的 pane 裏跑 grok-dsh 時,左側 agents 列表的 grok 條目下會即時顯示:
| 字段 | 含義 |
|---|---|
dsh_cache |
緩存命中率 |
dsh_ttft |
平均首 token 延遲 |
dsh_tps |
平均輸出速率 |
dsh_in / dsh_out |
累計輸入 / 輸出 token |
在 tmux 裏運行則會在 TUI 下方自動開一個用量面板,按 q 關閉。面板內容包括 cache hit、input / output / total tokens、api calls、tool time。這些數字來自插件文檔中的示例界面,用來說明字段含義,不是某次實測結果。
適用場景與注意事項¶
比較適合這幾類用法:已經把 dsh 當主 Harness、但更想在終端裏幹活;希望 Web UI 和 TUI 看同一份會話;需要在 herdr 或 tmux 裏盯緩存命中、TTFT、TPS。如果主要在瀏覽器裏用 dsh,或者需要 Windows 原生管道,這個插件對不上。
使用前需要把下面幾條當作硬約束,而不是可選建議。
1、權限與來源。 插件以當前 dsh 進程的權限運行,安裝時可能執行代碼。裝之前閱讀倉庫源碼和 MIT 許可證。grok-dsh setup / install.sh 會改 ~/.dsh/profiles/web/cordis.patch.yml 並軟鏈插件,這是顯式操作,但改的是你本機的 dsh 配置。
2、平臺。 README 寫明支持 macOS / Linux。架構文檔寫明 Windows named pipe 未實現,leader 傳輸目前只有 Unix socket。
3、不要雙開同一存儲。 獨立後端不要和 dsh web 同時跑;也不要用 Web 和 TUI 同時驅動同一個會話。
4、這是薄適配層。 插件連接的是兩套各自迭代的項目:grok-build 的編譯客戶端,以及仍處於開發者預覽的 dsh。leader 協議版本不匹配會在連接時直接失敗;部分 grok 私有擴展字段變化時,更多是界面降級(缺狀態欄、缺 todo),而不是把會話打掛。升級 grok 或 dsh 之後,應按倉庫 COMPATIBILITY.md 再驗一遍。
5、leader socket 沒有額外鑑權。 架構文檔寫明:能連到該 socket 的本地進程就能驅動 Harness,防護面就是 socket 路徑本身。這和 grok pager 自己的 leader 姿態一致,但在共享機器上需要留意。
6、歸屬。 本插件是社區項目,不是 DeepSeek 或 xAI 的官方產品。grok-build 本身是 Apache-2.0;dsh-grok-tui 是 MIT。目錄頁收錄不等於官方背書。
小結¶
dsh-grok-tui 沒有另做一套終端 Agent,而是把 grok-build 的 TUI 接到 dsh 現成的提示詞、工具、路由和會話上。對已經在用 DeepSeek Harness、又習慣 grok 全屏終端的人,這條路徑最短。
目錄頁:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-grok-tui/
GitHub:https://github.com/chen-001/dsh-grok-tui
DeepSeek Harness:https://github.com/deepseek-ai/deepseek-harness