dsh-skin-switcher:爲 DSH 界面一鍵切換十一種視覺風格

前言

長期在 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 說明一致)。

典型用法

  1. 點擊左側邊欄調色板圖標,打開風格面板。
  2. 點選任意風格卡片,整個應用立即換膚(面板內卡片本身也會實時預覽)。
  3. 需要恢復時,點「默認外觀」。
  4. 下次打開同一主機上的 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
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜