前言¶
DeepSeek Harness(DSH)桌面端與 Web 客戶端都支持通過插件擴展界面。若只想換配色、背景或側欄品牌位,而不動核心邏輯,常見做法是改 CSS 或 fork 主題倉庫,維護成本高,且升級 DSH 時容易衝突。Traveritas 維護的 averita-dsh-theme-inspiration(npm 包名 dsh-theme-averita,當前版本 0.7.1,MIT)是一套純客戶端主題插件:四套完整主題、點陣或流光背景、品牌位與新會話首屏等模塊均可單獨開關,適合當作「做自己的 DSH 皮膚」的參考實現或直接日常使用。
這是什麼¶
- 定位:DSH 主題宿主插件;README 自述爲輕量主題插件,分享個性化 DSH 的靈感,可隨意取用或魔改。
- 維護者:Traveritas;同系列插件見 AveritA 的 DSH 插件目錄。
- 社區目錄:skillhub.cn 插件頁(分類:趣味換裝;與 DeepSeek / 幻方無官方從屬關係,僅爲社區收錄)。
- 運行形態:Host 半
index.js爲空殼;瀏覽器半爲client.js(手寫 lazy-CJS,無構建依賴)。樣式與令牌通過ctx.effect掛載,卸載後在管理器移除即可,README 說明不會殘留。
核心功能¶
四套主題¶
在 設置 → 主題 中即時切換,選擇保存在 localStorage;切換通過 overrideTokens 換令牌圖層,並用 html[data-av-theme] 換 CSS 變量,無需重裝或重啓 DSH。
| 主題 ID | 名稱 | 數據文件 |
|---|---|---|
averita |
晝霧 · 靛夜 | src/tokens.js |
coldmorning |
冷晨 | src/themes/coldmorning.js |
duskrose |
暮玫瑰 | src/themes/duskrose.js |
duskpurple |
暮紫 | src/themes/duskpurple.js |
每套主題含 205 個令牌(淺/深成對):128 個語義/語法令牌 + 77 個靜態色板階(--dsw-static-*);主題變量僅 --av-space / --av-dot / --av-mark 三枚。README 實機截圖基於 DSH 0.2.1-rc.3 · Windows。
README 推薦配套字體:正文「Source Serif 4」「霞鶩文楷」;代碼「Hurmit Nerd Font Mono Light」「Microsoft YaHei」。
背景(二選一)¶
- 點陣:圓點 / 方塊 / 字符 / 字符牆;縮放、濃淡、動效、呼吸下限可調;實現於
src/components/dots/style.css的 fixed 僞元素,不跑逐幀動畫。 - 流光:WebGL2 畫布(
src/flow.js,構建時內聯),1/5 分辨率、30fps,僅在選擇流光時創建;默認從當前主題取色,另有四套固定色板;縮放、濃淡、速率可調;明暗默認反轉(淺色下白做底、深色只落在光帶上)。
點陣與流光互斥。
品牌位、新會話與裝飾¶
- 品牌位:
sidebar.brand.mark/sidebar.brand.name兩個 single slot,priority-1(低於官方 0)。默認 32px 三軸正交六芒星 + 襯線字標AveritA's DSH;設置 → 主題 → 品牌字標 可改,留空只顯示圖標。 - 新會話首屏:
conversation.hero.brand.mark使用同一顆星(34px);標題可自定義,「預覽版」徽章隱藏。 - 裝飾:用戶消息與輸入框支持紙品或星芒等樣式;輸入框底襯默認去掉(背景透到輸入框後),可在 設置 → 主題 → 輸入框底襯 開回 DSH 漸隱。
主題覆蓋總開關¶
設置 → 主題 → 主題覆蓋 提供四個區域總開關:品牌位 / 新會話 / 裝飾 / 背景,默認全開;關閉後對應區域完全不覆蓋,回退 DSH 原生。品牌位與新會話模塊內另有「圖標是否換成星標」開關。
UI 動效¶
過渡使用 --ds-transition-*(180/120ms + 柔出曲線);位移動效包括會話切換上浮 6px、會話行 hover 橫移 2px、按鈕按下 0.5px、最後一條回覆上浮 6px、側欄摺疊 300ms 等(詳見 README)。
安裝與啓用¶
插件以當前 DSH 進程權限運行;安裝前請自行審閱 GitHub 倉庫 源碼與 MIT 許可證。
README 給出的步驟如下。
1、將倉庫克隆到本機任意目錄(示例路徑可替換爲你的環境):
git clone --depth 1 https://github.com/Traveritas/averita-dsh-theme-inspiration.git D:\dsh\averita-dsh-theme-inspiration
2、打開 DSH 設置 → 插件 → 添加插件,在 spec 中填寫克隆目錄的絕對路徑(已 clone 過的目錄也可在管理器中直接選擇)。管理器會 pnpm link 進 profile 並寫入 dsh.profile.bundles;若返回的 application 爲 applied 即生效,若爲 restart-required 則需完全退出桌面端再啓動。
桌面端的
desktopprofile 由 Electron 獨佔,dsh plugin --profile desktop ...會被拒。桌面端只走應用內插件管理器;其它 profile 可使用dsh plugin --profile <名字> add "link:<絕對路徑>"(路徑含空格時需加引號)。
3、裝好後進入 設置 → 主題 切換主題、調整背景與字標,並按需配置「主題覆蓋」各總開關。
典型用法¶
在客戶端裏日常切換¶
經過上面的安裝步驟後,在 設置 → 主題 選擇四套主題之一,在同一面板調整點陣/流光、底襯、品牌字標、新會話首屏文案等;「主題覆蓋」用於快速回退原生品牌、首屏、裝飾或背景。
本地預覽(不依賴 DSH)¶
倉庫內提供近似 DSH 三欄骨架的預覽頁,用於看配色與比例(字體、間距與實機有差異,以實機爲準)。用瀏覽器打開倉庫中的 preview/index.html,左下角可切換主題與背景參數;亦可通過 URL 查詢參數直達,例如:
?theme=coldmorning— 冷晨主題?bg=flow— 流光背景?dark=1— 深色模式
完整參數列表見 README「預覽」一節。實機首屏截圖位於 preview/shots-new/a-l.png … d-d.png(四套 × 淺/深)。
魔改與參考¶
令牌與主題數據在 src/tokens.js 與 src/themes/;組件樣式在 src/components/*/style.css。README 說明預覽頁 DOM 與真實 DSH 結構同構(如 data-composer-seat、_bubble 等),便於在瀏覽器裏驗證選擇器後再在 DSH 中啓用。
卸載¶
在 設置 → 插件 的同一管理器中移除即可;README 說明樣式與令牌掛在 ctx.effect 上,卸載後不殘留。
適用場景與注意¶
- 適合:希望多套成套配色、可調背景與品牌位,且需要「一鍵回退原生 UI」的 DSH 用戶;也需要一份可拆模塊的主題插件示例的開發者。
- 注意:插件注入
@deepseek-ai/dsh-client-ui-theme等客戶端 UI 包(見package.json的dsh.client.inject),需與當前 DSH 客戶端版本兼容;README 實機說明針對 DSH 0.2.1-rc.3,升級 DSH 後若異常應覈對插件版本(當前 0.7.1)與 release 說明。 - 許可:MIT;GitHub 倉庫當前約 1 star(以倉庫頁爲準)。
結尾¶
averita-dsh-theme-inspiration 把四套主題、點陣/流光背景、品牌與新會話覆蓋、裝飾與動效收進一個純客戶端插件,並通過「主題覆蓋」保留回退原生界面的能力。若要安裝或查看配色細節,可訪問社區目錄頁與 GitHub 倉庫:
- 目錄頁:https://www.skillhub.cn/plugins/Traveritas/averita-dsh-theme-inspiration
- 倉庫:https://github.com/Traveritas/averita-dsh-theme-inspiration