dsh-desktop-glass:为 DSH 桌面版加上毛玻璃与壁纸透出

前言

DeepSeek Harness(DSH)桌面版在 Windows 上默认是不透明窗口叠多层页面底色,长时间开着像一块实心面板,和桌面壁纸割裂。社区里常见做法是只改 CSS 主题色,窗口侧仍由 Electron 主进程决定,很难真正「透」出壁纸。

下面介绍维护者 JianHeShui 的 dsh-desktop-glass(GitHub:JianHeShui/dsh-desktop-glass,社区目录:skillhub 插件页)。它在 DSH 插件体系里归类为「趣味换装」,当前仓库约 3 stars。目标很明确:页面半透明、去掉分隔线,并在 Windows 上配合系统 Mica / Acrylic,让主窗口能透出桌面壁纸。

这是什么

dsh-desktop-glass 是 DSH 桌面版的毛玻璃主题包,版本 1.0.0,许可证 MIT。

DSH 插件只能向页面注入 CSS;窗口材质(BrowserWindow 的 backgroundMaterial、透明 backgroundColor)写在宿主 app.asar 的 main.js 里。因此本仓库拆成两半,需一起安装才有完整效果:

  • 插件(仓库根目录):半透明底色、三列渐变、切换动画、去掉分隔线。
  • 补丁器(windows-acrylic/):给主窗口补回材质与透明背景。

只装插件时页面会半透明,窗口仍不透明;只打补丁时窗口可透,页面仍有纯色覆盖。二者缺一不可。

平台:仅适用于 Windows,使用系统自带的 Mica / Acrylic。使用前请将 DSH 设为浅色模式,README 说明这样效果最佳。

核心功能

页面侧(插件)

插件针对 Windows 布局里多层不透明背景叠加的问题:把 .frame 设为完全透明,侧栏与页面底色改为半透明 rgba,三列各铺渐变以保留层次。类名用 [class*="_centerCol"] 等后缀匹配,前端重建换哈希名时仍可用。运行时仅在页面插入一个 <style> 标签。

窗口侧(补丁)

补丁脚本在 main.js 中插入 backgroundMaterial 与透明 backgroundColor,并通过等量删注释保持 main.js 长度不变,只更新该条目哈希,避免重写整个 asar 的 offset 链。

可调项

透明度可在 lib/client.js 里改多组 rgba 的 alpha(越大越不透明)。README 给出了页面底色、侧栏、三列渐变起点/终点等行号与默认值。第 35–37 行的 bg-layer-1/2/3 控制浮在内容上的卡片表面;调得过透时设置界面会难以辨认。蓝色深浅可改三个渐变起点的 RGB,同色系参考 #F0F9FF → #38BDF8。

补丁可选 -Material mica 切换材质(Acrylic 失焦时 Windows 会降级为更实,属系统行为)。

安装与启用

环境要求 Node.js 18+。打补丁时用 node --check 校验语法;PATH 里没有 node 时脚本会尝试 DSH 自带运行时。

在已下载的插件仓库目录中操作(资料未提供 dsh plugin add 一类命令,请勿凭插件名自行拼接)。

1、安装插件:

node scripts/install-plugin.mjs

脚本会把仓库拷到 <DSH_HOME>\profiles\desktop\node_modules\dsh-desktop-glass,并在 profile 的 package.json 里补上 bundle 条目与依赖。完成后重启 DSH。

2、打窗口材质补丁(Windows):

powershell -ExecutionPolicy Bypass -File .\windows-acrylic\apply-acrylic.ps1

脚本会等待 DSH 退出(可从托盘右键退出);随后打补丁并重启 DSH。常用参数:-Material mica、-AppRoot(手动指定安装目录)、-DryRun(只检测生成,不改文件)。

若窗口仍不透明,请到 设置 → 个性化 → 颜色 打开透明效果。

改完 lib/client.js 后需再跑一遍安装脚本并重启;安装时若用了 --link,改完直接重启即可。

典型用法与卸载

卸载按相反顺序:

node scripts/uninstall-plugin.mjs
powershell -ExecutionPolicy Bypass -File .\windows-acrylic\restore-asar.ps1

插件侧卸载后不再残留样式注入。

目录结构(便于自查):

package.json            插件清单
cordis.patch.yml        bundle patch
lib/client.js           浏览器端 CSS
lib/index.js            宿主端(空)
windows-acrylic/        窗口补丁
scripts/                安装、卸载

适用场景与注意

适合谁:在 Windows 上使用 DSH 桌面版、希望窗口与聊天界面与壁纸融在一起、并能接受改宿主 app.asar 的维护者。

权限与信任:插件与补丁脚本以你当前用户权限运行;补丁会修改已安装的 DSH 程序文件。安装前应阅读仓库源码与 MIT 许可证,自行评估风险。README 明确说明改 app.asar 属对宿主动手,插件仅作分享。

已知限制(来自 README):

  • DSH 更新会覆盖 app.asar,补丁失效后需重跑 apply-acrylic.ps1。
  • 若 DSH 更改主窗口结构,补丁脚本会报错退出且不会改动已安装文件。
  • 若某构建开启 Electron embedded asar integrity validation,打补丁后可能无法启动,可用 restore-asar.ps1 还原;资料称目前 DSH 未开放该选项。

DSH 生态强调「一切皆插件」;skillhub.cn 为社区目录,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-desktop-glass 把「页面 CSS 主题」和「Windows 窗口材质」拆成插件 + 补丁两条线,在 DSH 只能注入样式的约束下尽量做到壁纸一览无余。需要完整效果时记得两样都装,并保持浅色模式与系统透明效果开启。

羽毛球分组比赛记分
小程序二维码

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

小夜