前言¶
DeepSeek Harness (DSH) 的空白會話英雄區域默認只提供基本的品牌標記和工作區選擇入口。dsh-workbuddy 爲這兩個區域注入了 Wordless 風格的視覺樣式,同時保持 DSH 原生編輯器和選擇器芯片不變。
插件簡介¶
這是一個主題類插件,由開發者 ml020 維護,採用 MIT 許可證。它通過重寫特定插槽的樣式,將默認的空白會話界面替換爲更符合 Wordless 設計語言的 Lime 漸變品牌標記和 Wordless 風格菜單。
安裝¶
使用以下命令安裝插件:
dsh plugin add ml020/dsh-workbuddy
核心功能¶
插件主要對兩個 DSH 英雄區域插槽進行重寫:
-
品牌標記重寫
將conversation.hero.brand.mark插槽替換爲一個 Lime(酸橙)漸變的品牌方塊,其中包含 “W” 字樣。該插槽不支持自定義歡迎標題,因爲主機端hero.headline是硬編碼的。 -
工作區菜單重寫
將conversation.hero.workspace插槽替換爲 Wordless 風格的菜單。該菜單是position: fixed的,相對於錨定的觸發芯片定位,當下方空間不足時會自動翻轉顯示在上方。菜單支持完整的鍵盤導航。 -
原生組件保留
原生的 DSH Web 編輯器(對話框)和原生選擇器芯片保持完全 untouched(未被修改)的狀態。 -
鍵盤導航
菜單支持以下鍵盤操作:↑/↓:在列表中移動光標,支持兩端循環。Home/End:跳轉至列表首行或末行。Enter/Space:選中當前光標所在的行。Esc:關閉菜單並將焦點交還給主機芯片。Tab/Shift+Tab:關閉菜單並交還焦點。- 可打印字符:支持輸入字符進行工作區名稱的快速跳轉查找。
-
工作區創建流程
插件通過聲明conversation.hero.workspace.directoryFlow子插槽,補全了主機端未提供的創建回調。這意味着用戶可以通過菜單中的 “Add workspace…” 操作正常創建新工作區,且該操作與原生目錄選擇器的行爲一致。
注意事項¶
- 注入機制:插件使用
ctx.slots.inject來覆蓋默認插槽,而不是添加額外的插槽。每個插槽獨立注入,因此它們的生命週期不耦合。 - 焦點管理:鍵盤導航要求菜單打開時,光標所在的行必須已經獲得焦點。如果菜單打開時沒有光標行,第一次按鍵會直接跳過第一行。此外,菜單會根據當前選中的 ID 來渲染選中狀態,並在刷新時保持光標行可見。
- 創建回調:由於主機端的
renderSlot調用不包含創建回調,插件必須自行處理工作區創建邏輯。如果創建被拒絕,會通過可重試的對話框提示,而不是靜默失敗。
結語¶
對於希望調整 DSH 界面視覺風格但又不想觸碰原生編輯器的用戶,dsh-workbuddy 提供了一個輕量級的解決方案。它通過覆蓋插槽實現了 Wordless 風格的定製,同時完整保留了工作區管理和創建的交互邏輯。
插件目錄:https://www.skillhub.cn/plugins/ml020/dsh-workbuddy
GitHub 倉庫:https://github.com/ml020/dsh-workbuddy