DeepSeek Harness (dsh) 遵循“一切皆插件”的理念。Web GUI 的默認交互體驗在處理長文本思考、工具調用過程以及流式輸出時,往往顯得擁擠。dsh-chat-ux 旨在解決這些問題,通過一系列 UI 優化,讓聊天區的瀏覽與操作更加流暢。
核心功能¶
該插件包含以下主要優化項:
- 思考行與過程組自動開合:思考過程展開,結束後自動收起;工具調用過程同理。若用戶手動展開或收起,插件不再自動干預。兩者共用一個開關,關閉後需手動操作。
- 文件變更行直接顯示:
run_code中的write和edit操作,diff 行直接顯示在聊天區。對於直接調用,路徑、輸入大小與+n -m參數會在流式傳輸中顯示,數字隨內容實時增長。 - 動效增強:輸入框光標會滑動,打字、方向鍵或點擊均可觸發。提交時,輸入框會變形爲氣泡飛入消息列表。
- 工作步驟默認標準:網頁端默認將 dsh 的“工作步驟展示”設爲“標準”(原默認爲“詳細”),除非用戶已在設置中修改。
- 統計信息可視化:輸入框下方的緩存命中率膠囊顯示一位小數,顏色隨數值變化(90%以下爲紅,99%以上爲深綠)。上下文佔用從環狀改爲 16px 實心餅圖,顏色同樣隨佔用率變化。
- 輸入框毛玻璃:輸入框、發送按鈕和加號按鈕應用了藍調漸變與模糊效果。
- 軌跡視圖收起輸入區:切換到“軌跡”標籤頁時,輸入區收起,記錄表鋪滿全屏;切回“對話”時恢復。
安裝與啓用¶
在 dsh Web GUI 中打開插件頁,點擊添加插件,輸入包名:
@alm-allen/dsh-chat-ux
或者使用命令行安裝:
dsh plugin --profile web add @alm-allen/dsh-chat-ux
也可以直接從 GitHub 倉庫安裝(倉庫已包含構建產物,無需本地構建):
dsh plugin --profile web add github:Alm-Allen/dsh-chat-ux
安裝後重啓 dsh 或刷新頁面即可生效。
配置¶
插件安裝後,在插件頁的配置行可調整以下開關:
| 配置項 | 默認值 | 說明 |
|---|---|---|
| 自動開合 | 開 | 關閉後,思考行與過程組不再自動展開收起。 |
| 光標動效 | 無論何時 | 可選擇關閉、移動時觸發或始終觸發。 |
| 聊天氣泡動效 | 開 | 關閉後,提交消息時不再有起飛動畫。 |
| 命中率轉輪 | 開 | 關閉後,數值變化時直接替換,無彈跳動畫。 |
| 上下文佔用餅 | 開 | 關閉後恢復 dsh 原有的環形統計。 |
| 輸入框毛玻璃 | 開 | 關閉後,輸入區與按鈕恢復原樣。 |
| 實時改動行數 | 開 | 控制文件變更行尾數字的實時跳動效果。 |
“工作步驟展示”的默認設置位於插件頁;若用戶已在 dsh 的設置 → 通用中修改過,則以用戶設置爲準。
兼容性與注意事項¶
- DeepSeek Harness 版本:在
0.2.1-alpha.2(Web)和0.2.1-alpha.1(Desktop)上開發與驗證。0.2.0-rc.2及更早版本可用,但早期版本部分功能(如命中率、上下文餅圖)可能存在兼容性問題。0.1.x可能不支持。 - Node.js 版本:要求
^22.19.0 || >=24.0.0。 - 構建方式:倉庫包含預構建的
dist目錄,無需執行npm run build。
結語¶
dsh-chat-ux 通過精細的交互調整,提升了 Web GUI 的閱讀與操作體驗。如需更多細節或反饋,可訪問插件目錄或GitHub 倉庫。