前言¶
長期在 DeepSeek Harness(DSH)裏做智能體開發或日常對話時,界面往往沿用默認主題:功能完整,但視覺單一。改系統淺色/深色只能動配色方案,很難換成像素風、終端綠字、早期 QQ 那種復古面板,或一整頁漸變底色。自己改 CSS 又怕和 Harness 主題服務打架,升級後也容易失效。
dsh-skin-switcher 走官方 Client 插件路線:在左側邊欄加一個調色板入口,點開是一面「風格牆」,選一張卡片即全應用換膚;不想用了點「默認外觀」即可還原。實現上走 token 覆蓋層和可銷燬的樣式注入,不依賴額外 npm 包,適合只想換觀感、不想 fork 前端的用戶。
這是什麼¶
- 倉庫 / 目錄名:
BXCQ/dsh-skin-switcher(社區目錄條目:bxcq/dsh-skin-switcher) - 包名:
@local/dsh-skin-switcher(package.json版本 1.3.0,許可證 MIT,維護者 BXCQ) - 分類:趣味換裝;純 Web Client 能力,Host 側爲空實現
- 一句話:零依賴側邊欄插件,給 DeepSeek Harness Web/GUI 提供 11 種整體視覺風格 與 1 個「默認外觀」 選項,切換後全應用生效,選擇會持久化
社區插件目錄在 skillhub.cn,源碼在 GitHub。目錄站與 DeepSeek / 幻方無官方從屬關係;DSH 生態是「一切皆插件」,安裝前建議自行查看源碼與許可證。插件以當前 dsh 進程權限運行,安裝等同於信任該倉庫作者。
核心功能¶
十一種風格 + 默認還原¶
README 中列出的風格如下(第 12 項爲 Harness 原生外觀):
| 風格 | id | 觀感(摘自文檔) |
|---|---|---|
| 像素風 Pixel | pixel |
暖紙色底、硬投影、掃描線、直角、等寬字 |
| 終端 Terminal | terminal |
近黑綠字、無圓角、無陰影、掃描線 |
| 紙感 Paper | paper |
米白底、細黑邊、襯線標題 |
| 極光 Aurora | aurora |
深藍紫底、玻璃層、大圓角、柔和光暈 |
| 糖果 Candy | candy |
高飽和馬卡龍色、超大圓角、膠囊按鈕 |
| QQ 經典 QQ Classic | qq |
早期 QQ:天藍漸變、98 式立體邊框、Tahoma + 宋體 |
| 日落 Sunset | sunset |
杏橙 → 玫瑰粉 → 紫羅蘭暖調漸變 |
| 海洋 Ocean | ocean |
青碧 → 天藍 → 靛藍冷調漸變 |
| 霓虹 Cyber Neon | cyber |
近黑紫底、青/洋紅輝光、等寬字 |
| 薄荷 Mint | mint |
薄荷綠 → 水青 → 淺藍 |
| 霧靄 Mist | mist |
冷灰到淡紫的中性漸變 |
| 默認外觀 | (面板內選項) | 還原 Harness 原生配色、圓角與字體 |
平面風格主要靠 14 個 alias token(淺/深各一套)覆蓋顏色;圓角、陰影、字體、掃描線等由包內 CSS 注入。漸變類與 QQ 經典在 html 上畫漸變畫布,表面用半透明 token,使面板呈磨砂玻璃效果;右側 dock 與浮動文檔窗會補畫同款 fixed 畫布,避免半透明底導致文字透疊。
與原生主題的關係¶
- 顏色通過 Client
theme服務的theme.overrideTokens('@local/dsh-skin-switcher', tokens),疊在當前主題之上,不改動主題註冊表;設置裏的淺色 / 深色 / 跟隨系統仍可切換。 - 切換風格時銷燬上一份
styles.insert注入的樣式表,避免泄漏。 - 漸變風格會訂閱
theme/change,隨配色方案重繪;主題服務缺失時降級爲prefers-color-scheme,並在控制台留診斷信息。
持久化¶
所選風格寫入 localStorage 與名爲 dsh_skin 的 Cookie;Cookie 按主機名作用域,DSH 每次啓動換端口時偏好仍可保留。
安裝與啓用¶
在已配置 DSH desktop profile 的環境下,使用 README 給出的命令安裝(不要憑倉庫名自行拼接其他 dsh plugin add 形式):
dsh plugin --profile desktop add git+https://github.com/BXCQ/dsh-skin-switcher.git
安裝後刷新頁面(F5)。左側邊欄在插件 / Schedules / Context 相關圖標之後會出現 調色板圖標(文檔說明固定約 30 號位)。
網絡阻斷 github.com:443 時,可改用:
dsh plugin --profile desktop add git+ssh://git@github.com/BXCQ/dsh-skin-switcher.git
也可將倉庫 clone 到本地後,在插件管理器中填寫該目錄的絕對路徑(與 README 說明一致)。
典型用法¶
- 點擊左側邊欄調色板圖標,打開風格面板。
- 點選任意風格卡片,整個應用立即換膚(面板內卡片本身也會實時預覽)。
- 需要恢復時,點「默認外觀」。
- 下次打開同一主機上的 DSH Web 界面,上次選擇會自動恢復。
卸載:在「插件」頁面關閉或卸載 @local/dsh-skin-switcher;卸載前會先還原默認外觀,覆蓋層隨 Client 結束銷燬。
適用場景與注意¶
適合誰
- 長期在 Desktop Web GUI 中使用 DSH,希望界面有辨識度或按心情換膚,且不願維護私有 CSS 的用戶。
- 需要在不破壞淺色/深色切換的前提下,體驗像素、終端、紙感、極光、糖果、QQ 復古及多種漸變皮膚的用戶。
已知限制(來自 README)
- 少數硬編碼顏色區域(如部分代碼高亮、Markdown 內聯色)不隨 token 變化,屬於 Harness 主題機制邊界。
- 漸變畫在
html畫布上:若某區域自帶不透明非 token 底色,可能看不見底層漸變,但半透明 surface 色調仍會生效。 - 純視覺呈現未做瀏覽器截圖迴歸;邏輯與插槽行爲有
node test/harness.mjs覆蓋(75 條斷言)。
開發者若需新增風格:在 client.js 中按 README 補充 light/dark 調色板、SKINS 項及 locale 文案;漸變風格使用 gradientChrome 並在 preview 中提供 bgImage。
本地驗證(倉庫內):
node test/harness.mjs
結尾¶
dsh-skin-switcher 把換膚收成側邊欄裏的一個面板:十一種風格一鍵切換、默認外觀可還原、偏好跨端口保留,實現上尊重 Harness 主題服務而不是替換它。想試用可從社區目錄瞭解條目信息,安裝與源碼以 GitHub 爲準。
- 目錄頁:https://www.skillhub.cn/plugins/BXCQ/dsh-skin-switcher
- GitHub:https://github.com/BXCQ/dsh-skin-switcher