dsh-wallpaper-theme:給 Harness 窗口換壁紙的磨砂玻璃插件

前言

DeepSeek Harness(DSH)把桌面端窗口的樣式拆成了 token,界面各層的可讀性由這些 token 統一管理。在終端裏寫智能體、長時間盯着窗口時,固定背景和磨砂效果能減少視覺疲勞,也能讓界面與自己的桌面環境更統一。本插件在側欄底部增加一個「主題與壁紙」按鈕,通過一個居中面板來管理壁紙和界面材質,不改變 DSH 內部的設計 token,只改背景與磨砂下限。

插件是什麼

  • 名稱:dsh-wallpaper-theme
  • 維護者:yunshu-iii
  • 分類:趣味換裝
  • 核心價值:給 DSH 桌面端窗口添加整窗壁紙與分級磨砂玻璃效果,提供外觀面板進行參數調節

兩種佈局

佈局 效果
鋪滿(默認) 壁紙從窗口一邊鋪到另一邊;對話區蓋一層可調的“畫布地板”,側欄更透,卡片/彈窗/設置頁保持接近實心
浮窗 應用變成浮在壁紙上的圓角卡片,四周留 0–64px 邊距,邊距裏壁紙 100% 原樣顯示

核心功能

  • 先改草稿,點「應用」才生效:在面板裏選圖、調滑桿、開輪換都只改面板裏的草稿;關閉彈窗會丟棄未應用的修改。
  • 淺色 / 深色各一張:只設了一套時另一套自動沿用。
  • 圖庫:上傳過的圖片全部保留(默認最近 30 張),點選即用,懸停刪除(點兩次確認)。
  • 漸變預設:6 套內置淺/深漸變,不用存圖片。
  • 自動輪換:開關 + 間隔(1 / 3 / 6 / 12 / 24 小時),在庫內圖片之間輪換。
  • 外觀切換:面板裏直接切 淺色 / 深色 / 跟隨系統,與設置裏的偏好是同一份。
  • 數值可直接輸入:每個滑桿右側是數字框,回車或失焦生效;百分比 1% 一檔。
  • 每個滑桿都有獨立說明,固定掛在對應項下方。

參數

參數 範圍 說明
佈局 鋪滿 / 浮窗 見上表
畫布地板 30–70% 對話區那層玻璃的可讀下限,越低壁紙越明顯
側欄地板 25–70% 側欄單獨的下限,比畫布更透
輸入欄不透明度 50–100% 輸入框單獨一層底(默認 94%)+ 18px 磨砂
彈窗不透明度 50–100% 設置彈窗自身的不透明度(默認 97%)
卡片邊距 / 卡片底色 / 側欄磨砂 浮窗專用
面板虛化 0–40px 面板背後的磨砂強度
壁紙強度 / 壁紙模糊 / 暗化 0–100% / 0–40px / 0–80% 壁紙自身的濃度、虛化和黑色蒙層
填充方式 鋪滿 / 適應

分級兜底:卡片層 88% / 91% / 94%,輸入框 94% + 獨立磨砂,所以調低畫布地板不會把設置頁一起調透。

安裝與啓用

使用命令行安裝:

# 桌面端
dsh plugin --profile desktop add github:yunshu-iii/dsh-wallpaper-theme

# Web 端
dsh plugin --profile web add github:yunshu-iii/dsh-wallpaper-theme

安裝完成後重啓 Harness 即可生效。也可以從插件頁「安裝第三方插件」選擇本倉庫,或先裝 dsh-plugin-market 在市場裏一鍵安裝。

存儲位置

插件在本地存儲配置與圖片:

$DSH_HOME/wallpaper-theme/
├── index.json          圖庫索引 + 當前選擇 + 參數
└── files/<id>.<ext>    圖片本體(按內容哈希命名,重複上傳自動去重)
  • 單張上限 20MB,圖庫 30 張 / 300MB,超出時淘汰最舊且未被使用的。
  • 上傳前瀏覽器先縮到最長邊 2560px 的 WebP,12MP 照片通常只有幾百 KB。
  • 圖片只存本機,不上傳任何服務器,也不走附件 / 會話通道。

實現要點

  • 壁紙畫在插件自持的 constructable stylesheet 裏:html::before 固定定位、三層疊加(淡出底 → 暗化 scrim → 圖片)。
  • 「壁紙強度」用底色漸變實現而不是 opacity,保持這一層始終不透明——否則面板的 backdrop-filter 會靜默失效。
  • 鋪滿模式只改 token:--dsw-alias-bg-base(畫布地板)、--dsw-specific-sidebar-fill(側欄地板)、--dsw-alias-bg-layer-1/2/3(卡片)、--dsw-specific-input-major(輸入框)。三列各讀自己的 token 畫背景,所以“對話區磨砂、側欄更透、卡片接近實心”是同一張表算出來的。
  • 桌面殼兼容:清掉 --dsh-desktop-frame-fill、.dshDesktopFrame 的背景與 extended/advanced 模式下 .dshDesktopSidebarSurface 的不透明底。
  • 禁用兜底:客戶端每 10 秒探一次宿主接口(單次 5 秒超時);404 / 超時 / 連接失敗都算“宿主不在了”,撤掉壁紙並隱藏按鈕,重新啓用後自動恢復。
  • 卸載時整張樣式表清空,所有覆蓋同時消失。

已知限制

  • 右上角的最小化 / 最大化 / 關閉是 Windows 原生窗口按鈕,由系統繪製在網頁之上,網頁 CSS 無法覆蓋;要統一需要主進程 setTitleBarOverlay。
  • 個別控件若用了寫死的顏色(不走 token),壁紙在那一小塊上透不出來。
  • 只做壁紙與表面材質:不改變強調色、字體、圓角等設計 token。
  • 不做多方案分組保存(如「工作日 / 週末」兩套);淺深兩套是最小單位。
  • 輪換隻在頁面打開時檢查——應用關着不會跳圖。

適用場景與注意

適合需要在桌面端窗口中統一背景與磨砂效果、希望減少長時間盯着窗口的視覺疲勞的開發者。插件以當前 DSH 進程權限運行,安裝前建議檢查源碼與許可證。

結尾

本插件在側欄底部提供一個「主題與壁紙」入口,支持上傳本機圖片、管理圖庫與漸變預設,並逐項調節界面材質,適合希望在 DSH 桌面端獲得整窗壁紙與分級磨砂玻璃效果的同行。

  • 目錄頁:https://www.skillhub.cn/plugins/yunshu-iii/dsh-wallpaper-theme
  • GitHub:https://github.com/yunshu-iii/dsh-wallpaper-theme
羽毛球分组比赛记分
小程序二维码

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

小夜