DeepSeek Harness (DSH) 採用「一切皆插件」的理念,允許通過擴展來定製客戶端行爲與外觀。對於需要統一視覺風格或追求特定界面體驗的開發者來說,更換客戶端的皮膚是一個常見需求。dsh-plugin-gemini-theme 提供了一套現成的樣式覆蓋方案。
定義與定位¶
該插件是一個由 dingyi580 維護的樣式包,它通過單一樣式表覆蓋 DSH Web 客戶端的 --dsw-* 設計令牌,無需修改客戶端源碼即可改變界面外觀。
核心功能¶
插件主要對以下界面元素進行了樣式重置:
- 對話區域和側邊欄填充。
- 側邊欄的膠囊行和圓角圖標按鈕。
- 新聊天藥丸。
- 英雄問候的縮放比例。
- 輸入框的圓角、填充和陰影。
- 輸入框背後的藍色背景光暈。
- 空白會話打開時的入場動畫。
- 滾動區域兩端的淡入淡出效果。
安裝與啓用¶
安裝插件需要使用 DSH 的插件管理命令:
dsh plugin --profile web add dsh-plugin-gemini-theme
安裝後需重啓 dsh web 才能使樣式生效。
典型用法¶
若需移除該插件並恢復客戶端的默認外觀,可執行:
dsh plugin --profile web remove dsh-plugin-gemini-theme
適用場景與注意¶
- 無 DOM 干擾:該插件不提供新的 DOM 結構、插槽佔用或服務,僅作爲樣式層存在。
- 樣式優先級:插件樣式加載順序位於所有功能包樣式表之前,因此組件規則帶有
!important。 - 實現機制:規則通過 CSS 模塊編譯後的類名(
[hash]_[local])進行匹配。使用class*="_local"的方式存在誤傷其他組件的風險,開發者需通過標籤限定符、:has()等選擇器加以限制。 - 功能限制:以下功能不在插件覆蓋範圍內,保持客戶端原生行爲:
- 會話頭部(標題、模式芯片、視圖標籤)保持原生。
- 英雄問候爲客戶端原生行,非輪播內容。
- 側邊欄的開啓狀態、啓動姿態或寬度由客戶端決定。
- 對話過程中的頂部進度條(插件無法獲取該 DOM 信號)。
該插件遵循 MIT 許可證。
總結¶
通過此插件,開發者可以在不改動代碼的情況下快速將 DeepSeek Harness Web 客戶端的視覺風格調整爲類似 Google Gemini 的外觀。更多詳情與源碼,請訪問 GitHub。