DeepSeek Harness (DSH) 採用“一切皆插件”的架構理念。在使用 Web GUI 或桌面端(Electron)進行長時間工作或開發時,默認的界面背景往往較爲單調。dsh-bg-plugin 插件允許開發者通過遠程 URL 或本地文件爲 DSH 添加自定義背景圖片或視頻,同時通過半透明遮罩層和豁免機制,確保設置面板保持默認外觀,不影響操作體驗。
核心功能¶
- 媒體源支持:支持遠程 URL(圖片/視頻)與本地文件(圖片/視頻)作爲背景。
- 視覺調節:支持背景清晰度調節(0–100%),通過覆蓋 DSH 主題 Token 實現半透明效果。
- 設置面板豁免:設置面板(
[role="dialog"][aria-modal="true"])內部強制恢復默認外觀,不受背景影響。 - 安裝形態:提供靜態安裝版(推薦,重啓後常駐)與動態插件版(會話級,重啓後消失)。
- 多平臺支持:支持 DSH 網頁端與桌面端,但兩端需分別安裝。
- 框選展示區域:僅針對圖片,支持在預覽圖上框選展示區域,支持拖動、縮放,比例鎖定。
- 懸浮球支持:提供懸浮球面板背景補丁,支持與主應用背景雙向同步。
安裝與啓用¶
靜態安裝是推薦的方式。通過 dsh 命令將插件目錄鏈接到 Web profile。
- 確保插件源碼目錄在本地。
- 執行安裝命令,將本目錄絕對路徑作爲參數傳入:
dsh plugin --profile web add link:<本目錄絕對路徑>
- 重啓 DSH(運行
dsh web)以加載插件。
若需卸載:
dsh plugin --profile web remove dsh-bg-plugin
桌面端(Electron)支持¶
桌面端與網頁端是兩個獨立的 DSH 實例,Profile 不同,因此需分別安裝。
- Profile:
$DSH_HOME/profiles/desktop - CLI:桌面端自帶 CLI 位於
<安裝目錄>\resources\runtime\cli\bin\dsh.cmd
桌面端安裝示例(Windows):
& "D:\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd" plugin --profile desktop add link:D:\DSH插件\dsh-bg-plugin
安裝後需重啓桌面端應用。
狀態持久化¶
靜態安裝模式下,所有配置(媒體源、框選區域、清晰度)自動保存到狀態文件:
$DSH_HOME/.dsh-bg-state.json
刷新頁面或重啓 DSH 後,插件會自動恢復上次的設置並重應用背景。
懸浮球面板背景補丁¶
懸浮球展開面板的背景渲染由其自身代碼控制。本插件通過寫入補丁的方式,爲面板注入背景層。
- 補丁機制:通過瀏覽器彈窗確認後,插件會將原文件備份至
$DSH_HOME/.dsh-bg-orb-backup/<時間戳>/。 - 修改文件:覆蓋
dist/helper/assets/floating.html(放寬 CSP)和dist/helper/lib/main.js(注入背景控制器)。 - 渲染方式:背景層使用
z-index: -1墊在面板內容之下,並設置isolation: isolate建立層疊上下文,確保背景隨面板展開/收起動畫移動,且被裁剪爲面板形狀。 - 功能:支持懸浮球背景設置、與主應用背景雙向同步、比例鎖定框選。
自動更新¶
插件內置自動更新功能,默認開啓。
- 檢查:打開設置頁底部會檢查 GitHub
main分支版本。 - 下載與覆蓋:發現新版本會自動下載並覆蓋插件文件(包括
package.json、lib/等)。 - 備份:覆蓋前會將現有文件備份到
$DSH_HOME/.dsh-bg-update-backup/<時間戳>/。 - 手動操作:支持手動點擊“檢查更新”或“立即更新”。
注意事項¶
- 重啓生效:無論是靜態安裝還是動態安裝,修改配置或安裝後通常需要重啓 DSH 才能生效。
- 動態版限制:動態插件版爲會話級,重啓 DSH 後配置會消失。
- 文件權限:懸浮球補丁涉及修改 DSH 安裝目錄下的文件,請確保有寫入權限。
- 路徑限制:
fs沙箱僅攔截寫入,讀取任意目錄均可;若無法使用系統文件夾選擇器,可直接粘貼路徑。