前言¶
DSH 的插件结构允许把界面能力拆成独立插件。dsh-ui-skin 解决的是一个具体问题:给 DeepSeek Harness 加壁纸或视频背景,同时让界面和侧栏的表层背景透出。下面介绍它的定位、安装方式、用法和安全边界。
定位¶
dsh-ui-skin 是面向 DeepSeek Harness 的 UI 皮肤插件,包名为 dsh-ui-skin,版本为 1.0.0,许可证为 MIT。GitHub 仓库地址为:
https://github.com/huabai-flowerwhite/dsh-ui-skin
它主要做两件事:
- 在 UI 下方注入壁纸 / 视频背景。
- 把 DSH 整个界面(含侧栏)的表面背景烘焙为半透明(毛玻璃),让皮肤透出。
核心功能¶
- 在 UI 下方注入壁纸 / 视频背景。
- 把 DSH 整个界面(含侧栏)的表面背景烘焙为半透明(毛玻璃)。
- 支持拖动裁剪缩放。
- 历史皮肤记录。
- 可拖动悬浮窗。
- 自定义皮肤支持网络地址或本地文件。
- 提供「设置 → UI 皮肤」设置页。
- 提供
skin_list只读工具。 - 提供
/dsh-ui-skin/skins本地路由。 - 本地图片压缩后存
localStorage,本地视频存 IndexedDB。
安装与启用¶
先安装插件,再重启 dsh。按系统选择仓库提供的安装命令。
Linux / macOS(bash):
cd dsh-ui-skin
bash install.sh
Windows(PowerShell):
cd dsh-ui-skin
powershell -ExecutionPolicy Bypass -File install.ps1
安装完成后,打开:
设置 → UI 皮肤
皮肤与参数配置持久化到浏览器 localStorage。
典型用法¶
1、安装后重启 dsh,打开「设置 → UI 皮肤」切换皮肤与参数。
2、「自定义」里可填网络地址,或点「选择图片/视频」从本地文件夹选取。
3、在预览区拖动裁剪位置,滚轮缩放。
4、上传后会进入「历史皮肤」。
5、点「展开悬浮窗」弹出可拖动快捷面板。
在聊天框中可调用 skin_list 查看皮肤清单:
skin_list
皮肤清单¶
| id | 名称 | 类型 | 说明 |
|---|---|---|---|
none |
无 | — | 不使用背景(原版 UI) |
custom |
自定义 | 壁纸 / 视频 | 网络地址,或从本地文件夹选择图片 / 视频文件 |
运行环境¶
已核实的运行与兼容要求如下:
engines: node >=22 <25
compatibility: apiLevel 1, harness >=0.1.0-rc.7
插件包含的 Host 侧能力包括:
skin_list
/dsh-ui-skin/skins
其中 skin_list 是只读工具,/dsh-ui-skin/skins 是本地路由。
安全与注意¶
已核实的安全边界如下:
- Security Level S1 / Permission Level P1:只读 Host 工具 + 本地路由 + 纯 UI。
- 不读不写文件。
- 不发外部网络。
- 不跑 shell/subprocess。
- 不含密钥。
使用自定义皮肤时,需要注意:
custom皮肤的网络 URL 需浏览器可访问。- 插件自身不发外部网络。
- 本地图片压缩为 JPEG(0.85,1920px 宽)后存
localStorage,受站点配额约束。 - 本地视频存 IndexedDB。
- 侧栏半透明
0.6是整个界面透出与文字可读的折中。 - 裁剪缩放只放大不缩小,范围为
scale 1.0–4.0。
插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。
未实现与已知限制¶
- Agent 反应式强度与 WebGL/Shader 渲染未实现。
dshpd_analyze是启发式扫描,会误报嵌套 manifest 的plugin.id等字段。
结尾¶
dsh-ui-skin 适合用于 DSH 的 UI 皮肤场景:在界面下方加壁纸或视频背景,并把整个界面表层烘焙成半透明,让背景透出。
社区目录是独立站点;本文未提供已核实的目录页地址。
GitHub: