@eternalnight/dsh-theme:給 DSH Web GUI 換背景的插件

前言

DSH 的理念是「一切皆插件」。如果你使用 DeepSeek Harness 的 Web GUI,想在不改 dsh 源碼的前提下更換背景,@eternalnight/dsh-theme 是一個主題皮膚插件。

它提供內置主題、本地圖片、動態視頻三種背景形態,並在側邊欄底部和設置頁提供切換入口。下面介紹它的定位、功能、安裝方式和注意事項。

插件定位

@eternalnight/dsh-theme 是 DeepSeek Harness 的主題皮膚插件,用於給 DSH Web GUI 換背景。本文按 npm 包名介紹;倉庫地址爲:

https://github.com/EternalNight996/dsh-theme

已覈實的基本信息如下:

  • 包名:@eternalnight/dsh-theme
  • 維護者:EternalNight996
  • 許可證:MIT
  • 當前 package.json 版本:0.5.1
  • Node 要求:node >=22
  • peerDependencies@deepseek-ai/cordis ^4.0.1
  • dependencies@deepseek-ai/schemastery ^3.18.1
  • 不改 dsh 源碼

核心功能

這個插件主要解決一個問題:在不修改 DSH 源碼的情況下,給 Web GUI 換背景,並提供基礎管理入口。

內置主題

內置主題皮膚包括兩部分:

  • 應用配色 4 套:深空暗、石墨、晨光亮、櫻粉
  • 背景皮膚

內置主題用於統一選擇應用配色和背景。

圖片皮膚

支持導入本地圖片,常見格式爲 pngjpgwebp

導入後的圖片會持久化到:

assets/import-images/

圖片皮膚以文件名命名,文件名限制爲 15 字以內,並支持刪除。

視頻皮膚

視頻皮膚有兩類模式:

  • 跟隨鼠標:360° 環繞跟隨幀
  • 循環播放

默認視頻爲:

import-videos/default.mp4

導入視頻會持久化,並支持刪除。

透明與明暗適配

插件提供幾個獨立可調項:

  • 主題面板透明
  • 對話欄透明
  • 背景壓暗滑桿

同時支持明暗自適應。

切換與保存

當前主題會持久化到 dsh-theme 命名空間,重啓後保留。

切換入口有兩個:

  • 側邊欄底部主題按鈕
  • 設置頁中的「主題」分區

安裝

安裝命令如下。

已發佈後安裝:

dsh plugin --profile web add @eternalnight/dsh-theme

從 GitHub 安裝:

dsh plugin --profile web add github:EternalNight996/dsh-theme

本地聯調:

dsh plugin --profile web add F:/MyApp/eternal/dsh-theme

安裝完成後,需要重啓 dsh web

啓用與切換

重啓後,可以做下面的操作:

  1. 在側邊欄底部打開主題入口。
  2. 或在設置頁進入「主題」分區。
  3. 選擇內置主題、圖片皮膚或視頻皮膚。
  4. 調整透明、對話欄透明、背景壓暗等滑桿。
  5. 保存後,當前主題會寫入 dsh-theme 命名空間。

導入與管理

圖片導入後位於:

assets/import-images/

視頻導入後位於默認視頻路徑所在的視頻目錄,默認文件爲:

import-videos/default.mp4

需要注意:

  • 導入圖片和導入視頻都以文件名命名。
  • 文件名限制爲 15 字以內。
  • import-images/default.png 爲默認圖片皮膚,不可刪除。
  • import-videos/default.mp4 爲默認視頻皮膚,不可刪除。

構建

如果你需要重新構建前端資源,可以使用下面的命令:

npm install
npm run build

npm run build 在只改 client 相關代碼時需要。

還可以重新生成內置背景圖:

npm run gen:bg

適用場景與注意

適合這類使用者:

  • 使用 DSH Web GUI,想換背景。
  • 希望使用內置主題、圖片背景或視頻背景。
  • 希望在側邊欄和設置頁裏管理主題。
  • 希望當前主題在重啓後保留。
  • 希望不修改 dsh 源碼。

安裝前需要注意:

  • 插件會以當前 dsh 進程權限運行,安裝前應檢查源碼、依賴和許可證。
  • 本插件許可證爲 MIT。
  • 要求 Node 版本不低於 22
  • 依賴關係包含 @deepseek-ai/cordis ^4.0.1@deepseek-ai/schemastery ^3.18.1
  • 背景層使用 pointer-events: none,不攔截交互。
  • prefers-reduced-motion 環境下,跟隨幀會停幀。
  • 默認皮膚不可刪除,導入文件命名有長度限制。

結尾

@eternalnight/dsh-theme 是一個偏輕量、偏工具向的 DSH 主題插件:它不改變 DSH 的核心流程,只在 Web GUI 背景、主題入口和基礎視覺參數上提供擴展。

如果你需要在不改 dsh 源碼的情況下給 DSH Web GUI 換背景,可以先從上面的安裝命令開始試用。

倉庫地址:

https://github.com/EternalNight996/dsh-theme
羽毛球分组比赛记分
小程序二维码

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

小夜