dsh-bg-plugin:为 DSH 添加自定义背景图片与视频

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。

  1. 确保插件源码目录在本地。
  2. 执行安装命令,将本目录绝对路径作为参数传入:
    dsh plugin --profile web add link:<本目录绝对路径>
  1. 重启 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 后,插件会自动恢复上次的设置并重应用背景。

悬浮球面板背景补丁

悬浮球展开面板的背景渲染由其自身代码控制。本插件通过写入补丁的方式,为面板注入背景层。

  1. 补丁机制:通过浏览器弹窗确认后,插件会将原文件备份至 $DSH_HOME/.dsh-bg-orb-backup/<时间戳>/。
  2. 修改文件:覆盖 dist/helper/assets/floating.html(放宽 CSP)和 dist/helper/lib/main.js(注入背景控制器)。
  3. 渲染方式:背景层使用 z-index: -1 垫在面板内容之下,并设置 isolation: isolate 建立层叠上下文,确保背景随面板展开/收起动画移动,且被裁剪为面板形状。
  4. 功能:支持悬浮球背景设置、与主应用背景双向同步、比例锁定框选。

自动更新

插件内置自动更新功能,默认开启。

  • 检查:打开设置页底部会检查 GitHub main 分支版本。
  • 下载与覆盖:发现新版本会自动下载并覆盖插件文件(包括 package.json、lib/ 等)。
  • 备份:覆盖前会将现有文件备份到 $DSH_HOME/.dsh-bg-update-backup/<时间戳>/。
  • 手动操作:支持手动点击“检查更新”或“立即更新”。

注意事项

  • 重启生效:无论是静态安装还是动态安装,修改配置或安装后通常需要重启 DSH 才能生效。
  • 动态版限制:动态插件版为会话级,重启 DSH 后配置会消失。
  • 文件权限:悬浮球补丁涉及修改 DSH 安装目录下的文件,请确保有写入权限。
  • 路径限制:fs 沙箱仅拦截写入,读取任意目录均可;若无法使用系统文件夹选择器,可直接粘贴路径。
羽毛球分组比赛记分
小程序二维码

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

小夜