前言¶
DeepSeek Harness(DSH)把桌面端窗口的样式拆成了 token,界面各层的可读性由这些 token 统一管理。在终端里写智能体、长时间盯着窗口时,固定背景和磨砂效果能减少视觉疲劳,也能让界面与自己的桌面环境更统一。本插件在侧栏底部增加一个「主题与壁纸」按钮,通过一个居中面板来管理壁纸和界面材质,不改变 DSH 内部的设计 token,只改背景与磨砂下限。
插件是什么¶
- 名称:dsh-wallpaper-theme
- 维护者:yunshu-iii
- 分类:趣味换装
- 核心价值:给 DSH 桌面端窗口添加整窗壁纸与分级磨砂玻璃效果,提供外观面板进行参数调节
两种布局¶
| 布局 | 效果 |
|---|---|
| 铺满(默认) | 壁纸从窗口一边铺到另一边;对话区盖一层可调的“画布地板”,侧栏更透,卡片/弹窗/设置页保持接近实心 |
| 浮窗 | 应用变成浮在壁纸上的圆角卡片,四周留 0–64px 边距,边距里壁纸 100% 原样显示 |
核心功能¶
- 先改草稿,点「应用」才生效:在面板里选图、调滑杆、开轮换都只改面板里的草稿;关闭弹窗会丢弃未应用的修改。
- 浅色 / 深色各一张:只设了一套时另一套自动沿用。
- 图库:上传过的图片全部保留(默认最近 30 张),点选即用,悬停删除(点两次确认)。
- 渐变预设:6 套内置浅/深渐变,不用存图片。
- 自动轮换:开关 + 间隔(1 / 3 / 6 / 12 / 24 小时),在库内图片之间轮换。
- 外观切换:面板里直接切 浅色 / 深色 / 跟随系统,与设置里的偏好是同一份。
- 数值可直接输入:每个滑杆右侧是数字框,回车或失焦生效;百分比 1% 一档。
- 每个滑杆都有独立说明,固定挂在对应项下方。
参数¶
| 参数 | 范围 | 说明 |
|---|---|---|
| 布局 | 铺满 / 浮窗 | 见上表 |
| 画布地板 | 30–70% | 对话区那层玻璃的可读下限,越低壁纸越明显 |
| 侧栏地板 | 25–70% | 侧栏单独的下限,比画布更透 |
| 输入栏不透明度 | 50–100% | 输入框单独一层底(默认 94%)+ 18px 磨砂 |
| 弹窗不透明度 | 50–100% | 设置弹窗自身的不透明度(默认 97%) |
| 卡片边距 / 卡片底色 / 侧栏磨砂 | 浮窗专用 | |
| 面板虚化 | 0–40px | 面板背后的磨砂强度 |
| 壁纸强度 / 壁纸模糊 / 暗化 | 0–100% / 0–40px / 0–80% | 壁纸自身的浓度、虚化和黑色蒙层 |
| 填充方式 | 铺满 / 适应 |
分级兜底:卡片层 88% / 91% / 94%,输入框 94% + 独立磨砂,所以调低画布地板不会把设置页一起调透。
安装与启用¶
使用命令行安装:
# 桌面端
dsh plugin --profile desktop add github:yunshu-iii/dsh-wallpaper-theme
# Web 端
dsh plugin --profile web add github:yunshu-iii/dsh-wallpaper-theme
安装完成后重启 Harness 即可生效。也可以从插件页「安装第三方插件」选择本仓库,或先装 dsh-plugin-market 在市场里一键安装。
存储位置¶
插件在本地存储配置与图片:
$DSH_HOME/wallpaper-theme/
├── index.json 图库索引 + 当前选择 + 参数
└── files/<id>.<ext> 图片本体(按内容哈希命名,重复上传自动去重)
- 单张上限 20MB,图库 30 张 / 300MB,超出时淘汰最旧且未被使用的。
- 上传前浏览器先缩到最长边 2560px 的 WebP,12MP 照片通常只有几百 KB。
- 图片只存本机,不上传任何服务器,也不走附件 / 会话通道。
实现要点¶
- 壁纸画在插件自持的 constructable stylesheet 里:
html::before固定定位、三层叠加(淡出底 → 暗化 scrim → 图片)。 - 「壁纸强度」用底色渐变实现而不是
opacity,保持这一层始终不透明——否则面板的backdrop-filter会静默失效。 - 铺满模式只改 token:
--dsw-alias-bg-base(画布地板)、--dsw-specific-sidebar-fill(侧栏地板)、--dsw-alias-bg-layer-1/2/3(卡片)、--dsw-specific-input-major(输入框)。三列各读自己的 token 画背景,所以“对话区磨砂、侧栏更透、卡片接近实心”是同一张表算出来的。 - 桌面壳兼容:清掉
--dsh-desktop-frame-fill、.dshDesktopFrame的背景与 extended/advanced 模式下.dshDesktopSidebarSurface的不透明底。 - 禁用兜底:客户端每 10 秒探一次宿主接口(单次 5 秒超时);404 / 超时 / 连接失败都算“宿主不在了”,撤掉壁纸并隐藏按钮,重新启用后自动恢复。
- 卸载时整张样式表清空,所有覆盖同时消失。
已知限制¶
- 右上角的最小化 / 最大化 / 关闭是 Windows 原生窗口按钮,由系统绘制在网页之上,网页 CSS 无法覆盖;要统一需要主进程
setTitleBarOverlay。 - 个别控件若用了写死的颜色(不走 token),壁纸在那一小块上透不出来。
- 只做壁纸与表面材质:不改变强调色、字体、圆角等设计 token。
- 不做多方案分组保存(如「工作日 / 周末」两套);浅深两套是最小单位。
- 轮换只在页面打开时检查——应用关着不会跳图。
适用场景与注意¶
适合需要在桌面端窗口中统一背景与磨砂效果、希望减少长时间盯着窗口的视觉疲劳的开发者。插件以当前 DSH 进程权限运行,安装前建议检查源码与许可证。
结尾¶
本插件在侧栏底部提供一个「主题与壁纸」入口,支持上传本机图片、管理图库与渐变预设,并逐项调节界面材质,适合希望在 DSH 桌面端获得整窗壁纸与分级磨砂玻璃效果的同行。
- 目录页:https://www.skillhub.cn/plugins/yunshu-iii/dsh-wallpaper-theme
- GitHub:https://github.com/yunshu-iii/dsh-wallpaper-theme