前言¶
DeepSeek Harness(DSH)桌面版在默认状态下,窗口是不透明的,用户无法直接看到桌面壁纸。对于希望在开发过程中保持桌面可见、减少视觉割裂感的开发者来说,这会带来一些干扰。
透明亚克力主题(dsh-acrylic-light)通过两层改造解决这一问题:第一层是插件级别的样式覆盖,实现页面内部的分层雾面与输入栏硬裁;第二层是对 Harness 主程序 app.asar 的等字节补丁,把窗口材质改为 Windows 的 Acrylic(毛玻璃)。这套方案不依赖外部窗口对象,而是通过修改归档文件实现,是目前在插件权限下能做的最小侵入式改动。
这是什么¶
dsh-acrylic-light 是一个 DeepSeek Harness 桌面版的主题插件,由维护者 YSDLNGF 编写。它提供两层效果:
- 窗口级:让窗口透出桌面壁纸,模糊由 Windows 系统的 Acrylic 材质负责。
- 页面级:主面板与顶栏完全透明,侧栏保留极淡底色,输入栏为透明雾面玻璃,代码块与浮层采用半透明背景以保证可读性。
插件本身不构建,直接读取 plugin/ 目录下的文件即可运行。
核心功能¶
分层雾面与文字可读性¶
- 主面板 / 顶栏:完全透明,透出壁纸,模糊由系统 Acrylic 完成。
- 侧栏 / 三列:极淡底色(8%–10%),保留层次。
- 输入栏:透明雾面玻璃,文字在输入栏上沿硬断(不钻进输入栏背后)。
- 悬停预览 / 菜单 / 工具提示:
rgb(20 22 28 / 18%)+blur(12px)。 - 设置面板 / 对话框:
rgb(26 28 34 / 78%)+blur(24px)。 - 代码块:
rgb(20 22 28 / 55%),保证长段可读。
深色主题下,文字会自动提亮:label-primary/secondary/tertiary 及底层 bluish-200/300/400/600/700 一并改为白色系,否则深底上发灰。
实时调参¶
在控制台(F12 → Console)中可以查看与修改当前参数:
glass() // 看当前参数
glass({ enabled: false }) // 一键关闭
glass.reset() // 回默认
想改配色,直接编辑 plugin/client.js 顶部的 GLASS_STYLE,每个值旁都注明了由来。
窗口材质补丁¶
窗口材质是 Electron BrowserWindow 的构造参数,只存在于主进程。插件宿主跑在独立的 Node 进程里,无法直接访问窗口对象,因此无法从插件侧打开透明效果。本插件通过给 app.asar 打等字节补丁实现:在 main.js 的几处属性上增加 backgroundMaterial: acrylic,并将标题栏 overlay 改为透明。
补丁脚本会等待 Harness 完全退出,然后执行补丁、校验、自动重启。文件总大小不变,不会破坏 asar 的其他条目;若锚点对不上,脚本直接失败退出,不动已安装文件。
安装与启用¶
本插件已在插件市场(dsh-market)上架,也支持从 GitHub 直接安装。
方式一:从插件市场安装(推荐)¶
- 打开 Harness,进入 设置 → 插件市场。
- 进入 「主题」 分类。
- 搜索
dsh-acrylic-light(或「透明亚克力」)。 - 点击 安装,按提示重启。
安装完成后进入 设置 → 通用 → 透明亚克力,把「启用」打开。
插件市场安装只装页面样式,窗口要透出壁纸还需要补丁。
方式二:从 GitHub 地址添加¶
- 在 Harness 中进入 插件 → 添加插件。
- 输入:
https://github.com/YSDLNGF/dsh-acrylic-light
也接受这几种等价写法:
https://github.com/YSDLNGF/dsh-acrylic-light.git
github:YSDLNGF/dsh-acrylic-light
- Harness 会 clone 到
~/.dsh/profiles/desktop/node_modules/dsh-acrylic-light,登记bundles,然后提示重启。
补丁安装(让窗口透出壁纸)¶
只装插件只改了页面样式,窗口本身仍是不透明的。这一步让壁纸透出来:
- 下载补丁包 zip 解压,然后双击其中的
enable-transparency.cmd。补丁包直接把整套脚本打包好了,无需整仓下载:dsh-acrylic-light-patch.zip。 - 脚本会等待你从托盘退出 Harness(它会一直等,直到进程消失),然后自动给
app.asar打补丁、校验、自动重启。
命令行等价:
powershell -ExecutionPolicy Bypass -File .\apply-when-closed.ps1
注意事项¶
深色模式优先¶
强烈建议使用深色模式(Dark Mode)。浅色模式下壁纸会透出偏亮的色调,玻璃面板的层次和文字对比度都不如深色模式清晰。为了效果达到最佳,请把 Harness 切到深色主题:设置 → 通用 → 外观 → 深色。
补丁卡住或没有重启 → 检查 Node.js¶
如果 Harness 退出后,双击补丁文件没有重启,且进度卡住不动,说明电脑上没有安装 Node.js(补丁工具靠它运行)。
- 下载地址:https://nodejs.org
- 安装说明:进入 Node.js 官网,点击「获取 Node.js」→「Windows 安装程序」→ 下载完成后一路默认安装。安装成功后,退出 PowerShell,重新双击
enable-transparency.cmd。
补丁装完后仍无透明效果 → 运行诊断¶
如果补丁显示成功、Harness 也重启了,但窗口还是不透明,请双击补丁包里的 diagnose.cmd。它会检查四件事并给出结论:
- 补丁是否写进
app.asar(有没有backgroundMaterial) - Windows 版本(需要 Build ≥ 17134,Win10 1803 起才有 Acrylic)
- 系统「透明效果」开关(设置 → 个性化 → 颜色)
- 运行环境(虚拟机 / 仅有「基本显示适配器」/ RDP 远程桌面会让系统禁用 Acrylic)
更新与卸载¶
- 更新后需重跑补丁:DSH 每次更新都会覆盖
app.asar,更新后需要重新执行补丁步骤。 - 卸载:推荐用 Harness 自带的卸载按钮。设置 → 插件 → 找到
dsh-acrylic-light→ 点「卸载」。 - 连同补丁一起还原:卸载按钮只会移除插件本身,窗口材质补丁仍留在
app.asar里。若要恢复原生外观,可运行:
node uninstall.mjs
powershell -ExecutionPolicy Bypass -File .\restore-asar.ps1
两者都做完再重启。
适用场景¶
- 希望在开发过程中保持桌面可见,减少视觉割裂感的 DSH 用户。
- 需要在深色主题下保持文字清晰、玻璃层次明显的开发者。
- 不介意通过补丁修改宿主程序
app.asar,并能接受更新后需重跑补丁的用户。
参考资料¶
- 插件目录:https://www.skillhub.cn/plugins/YSDLNGF/dsh-acrylic-light
- GitHub 仓库:https://github.com/YSDLNGF/dsh-acrylic-light
- 插件市场目录:https://raw.githubusercontent.com/awesome-dsh-plugin/awesome-dsh-plugin/main/data/plugins/YSDLNGF__dsh-acrylic-light.yml