DeepSeek Harness (DSH) 的核心設計理念是“一切皆插件”。在構建或使用 Web 端會話時,頁面背景通常是固定的。如果希望根據心情或場景切換動態背景,或者增加視覺層次感,靜態背景往往難以滿足需求。njuptlzf/dsh-dynamic-background 是一款基於 DSH 的背景切換插件,它允許用戶上傳動圖或使用純色,通過定時切換和圖層疊加實現絲滑的視覺體驗。
這是一個純前端插件,不依賴後端。它利用瀏覽器 IndexedDB 存儲用戶上傳的圖片和設置。插件主要負責在 DSH Web 界面中維護背景圖層,處理圖片上傳、格式支持(GIF、WebP 等)以及自動生成的可讀性遮罩層。
核心功能¶
-
多媒體支持
插件支持上傳動圖與靜態圖,格式包括 GIF、WebP、APNG、PNG、JPG 和 SVG。單張圖片大小限制爲 25MB。上傳界面支持多選與拖拽操作。 -
純色調色板
內置 12 色純色調色板(赤橙黃綠青藍紫粉白灰黑棕),點擊即可添加並立即應用到當前背景。 -
切換邏輯
支持定時切換,間隔範圍 3-120 秒,默認爲 15 秒。切換模式支持順序播放或隨機播放。過渡效果採用雙圖層 opacity 交叉淡入淡出,並包含慢速 Ken Burns 縮放效果。插件會自動遵守系統的“減少動態”偏好設置。 -
可讀性保護
爲了防止動態背景影響文字閱讀,插件會自動在聊天內容列([data-chat-flow])、狀態欄以及會話頭部自動疊加一層 84% 透明度的主題表面色遮罩。 -
顯示與美化
支持完整顯示(contain)或鋪滿(cover)兩種模式。可選美化功能包括背景虛化(0-12px)和遮罩強度(0-90%)。 -
持久化與運行
插件常駐運行,關閉設置頁後背景仍會自動切換。所有圖片與設置均存儲在瀏覽器的 IndexedDB 中,重啓 DSH 或刷新頁面後自動恢復。
安裝與啓用¶
使用 DSH 官方命令安裝:
dsh plugin --profile web add github:njuptlzf/dsh-dynamic-background
安裝完成後,重啓 dsh web,進入 設置 → 動態背景 頁面即可啓用。
典型用法¶
進入設置頁後,可以進行以下操作:
- 添加背景:點擊 12 色色板添加純色背景,或者通過“選擇圖片”/“拖拽”上傳本地動圖與靜態圖。
- 配置參數:設置顯示模式(完整顯示/鋪滿)、切換間隔(3-120s)、過渡時長(0.3-3s)。
- 調整美化:根據喜好調整背景虛化程度(0-12px)和遮罩強度(0-90%)。
- 控制播放:使用底部的控制欄支持隨機/順序切換、播放/暫停、手動切換下一張以及清空列表。
適用場景與注意¶
該插件適合希望個性化 DSH Web 界面、展示個人動圖或增加視覺趣味性的用戶。
需要注意:
* 插件數據存儲在瀏覽器的 IndexedDB 中。如果清除瀏覽器緩存或數據,已上傳的圖片和設置將一併清除。
* 插件採用預編譯提交,安裝過程無需構建步驟。