把 Wallpaper Engine 壁纸设为应用背景并控制桌面壁纸
29.6/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
该插件未发布到 npm,按作者文档从 GitHub 源安装即可(静态检查只覆盖 npm 路径,不代表插件不可用)。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add jiumengya/dsh-wallpaper该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · ui
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 52 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装仓库 package.json 标记 private,未发布到 npm,需从源码安装;安装清单取自 pkg/package.json
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包@deepseek-ai/dsh-wallpaper(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/11 22:24:47
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 11 处,展示前 11 条)
- 发起网络请求pkg/lib/client.js:250
const res = await fetch(path); - 发起网络请求pkg/lib/client.js:257
const res = await fetch(path, { - 读取本地文件pkg/lib/index.js:1331
stream = createReadStream(file, { start, end }) - 读取本地文件pkg/lib/index.js:1334
stream = createReadStream(file) - 执行外部命令来自配置/变量pkg/lib/wallpaper-engine.js:45
child = spawn(file, args, { - 读取本地文件pkg/lib/wallpaper-engine.js:86
if (existsSync(candidate)) return candidate - 读取本地文件pkg/lib/wallpaper-engine.js:120
if (seen.has(key) || !existsSync(normalized)) continue - 读取本地文件pkg/lib/wallpaper-engine.js:135
if (explicit && existsSync(explicit)) return explicit - 读取本地文件pkg/lib/wallpaper-engine.js:140
if (existsSync(candidate)) return candidate - 执行外部命令来自配置/变量pkg/lib/wallpaper-engine.js:240
const child = spawn(exePath, [], { detached: true, stdio: 'ignore', windowsHide: true }) - 执行外部命令来自配置/变量pkg/lib/wallpaper-engine.js:312
child = spawn(exePath, ['-control', ...args], {
扫描于 2026/11/4(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 接入动态壁纸
- 设为应用背景
- 控制桌面壁纸
README
由 DeepSeek 最新模型翻译生成dsh-wallpaper — DeepSeek Harness 的 Wallpaper Engine 插件
将桌面版 DeepSeek Harness 连接到 Wallpaper Engine:可从设置面板的壁纸分区将任意壁纸设为 DeepSeek Harness 应用背景(视频壁纸直接播放原始视频);同时为智能体提供 4 个用于控制桌面 Wallpaper Engine 的工具。
前置条件
- 已安装 Steam 和 Wallpaper Engine(任意 Steam 库位置均可;自动发现)
- 已安装 DshNative 桌面应用(rc.17 或更新版本)
安装
右键点击 install.ps1 → 使用 PowerShell 运行(或:
powershell -ExecutionPolicy Bypass -File install.ps1
该脚本会做三件事:
1. 将插件包复制到 %LOCALAPPDATA%\DshNative\runtime\node_modules\@deepseek-ai\dsh-wallpaper
2. 创建 ~\.dsh\profiles\node_modules\@deepseek-ai\dsh-wallpaper 联接(配置文件解析所需)
展开完整文档(README 剩余 1 节)
dsh-wallpaper — DeepSeek Harness 的 Wallpaper Engine 插件
将桌面版 DeepSeek Harness 连接到 Wallpaper Engine:可从设置面板的壁纸分区将任意壁纸设为 DeepSeek Harness 应用背景(视频壁纸直接播放原始视频);同时为智能体提供 4 个用于控制桌面 Wallpaper Engine 的工具。
前置条件
- 已安装 Steam 和 Wallpaper Engine(任意 Steam 库位置均可;自动发现)
- 已安装 DshNative 桌面应用(rc.17 或更新版本)
安装
右键点击 install.ps1 → 使用 PowerShell 运行(或:
powershell -ExecutionPolicy Bypass -File install.ps1
该脚本会做三件事:
1. 将插件包复制到 %LOCALAPPDATA%\DshNative\runtime\node_modules\@deepseek-ai\dsh-wallpaper
2. 创建 ~\.dsh\profiles\node_modules\@deepseek-ai\dsh-wallpaper 联接(配置文件解析所需)
3. 生成 %LOCALAPPDATA%\DshNative\desktop.yml 覆盖文件(数据目录覆盖优先于应用目录,无需管理员权限),将此插件追加到应用的内置条目中
重启 DeepSeek Harness 后生效。
用法
更改应用背景(图形界面):点击左侧边栏底部的 ⚙ 设置按钮,然后点击左侧导航中的壁纸分区——顶部显示当前背景,搜索框可按标题筛选,下方是预览缩略图网格:点击任意卡片即可将其设为整页背景(整个界面,包括侧边栏后方,都会显示该壁纸,且没有遮罩层)。"恢复默认"可一键还原。卡片上标注了其动画支持类型:web 类型 = 完整动画,video 类型 = 动画,scene 类型 = 实时粒子动画(scene 是 Wallpaper Engine 专有格式,浏览器无法原生渲染;后端从 scene.pkg 中提取图层以合成静态基础图像,并将粒子系统导出为纯数据定义,由前端 canvas 实时逐帧模拟——花瓣/雪花/光尘以与 Wallpaper Engine 相同的物理语义在整个页面飘动;更复杂的效果(如骨骼绑定动画)仍仅支持 web/video 类型)。每张卡片的缩略图右上角还有一个悬停时出现的小"桌面"按钮,可让你将其设为桌面壁纸(通过 Wallpaper Engine)。所选内容会持久保存在 ~\.dsh\plugin-wallpaper-ui.json 中,并在重启后自动恢复。
你也可以用自然语言与智能体对话(操作桌面 Wallpaper Engine):
- "列出我已安装的壁纸"
- "换成与初音未来相关的壁纸"
- "我现在用的是什么壁纸"
- "暂停壁纸""静音壁纸""隐藏桌面图标""下一张壁纸"
提供的 4 个工具:
| 工具 | 用途 |
| wallpaper_list | 列出已安装的壁纸(id/标题/类型),支持按标题筛选 |
| wallpaper_apply | 通过创意工坊 id 或标题应用壁纸,可选显示器;若 Wallpaper Engine 未运行则自动启动,然后回读配置以确认 |
| wallpaper_control | pause / play / stop / mute / unmute / next / close / hide_icons / show_icons |
| wallpaper_current | 显示当前壁纸(路径 + 标题) |
配置(可选)
当 Steam 或 Wallpaper Engine 安装在特殊位置时,编辑 %LOCALAPPDATA%\DshNative\desktop.yml 中的插件条目:
- insert:
- id: wallpaper
name: '@deepseek-ai/dsh-wallpaper'
config:
steamPath: 'E:\Steam' # Steam 根目录(默认:从注册表自动发现) wallpaperEnginePath: '' # wallpaper64.exe 的完整路径(默认:从 Steam 库自动发现)
卸载
右键点击 uninstall.ps1 → 使用 PowerShell 运行。移除插件包和链接,并删除数据目录覆盖层(应用将恢复为安装目录随附的覆盖层)。
实现说明
- 应用背景(整页,两种挂载模式):一旦选中,官方 UI 的大块不透明背景全部变为透明(--dsw-alias-bg-base、--dsw-specific-sidebar-fill;输入框 --dsw-specific-input-major 变为半透明玻璃色,浅色/深色主题各一套)——壁纸贯穿整个页面,包括侧边栏后方;消息卡片等内容面板保留自身背景以保证可读性,不叠加遮罩。图片/场景壁纸直接绘制为 body 自身的不透明根背景(CSS 双层叠加:场景合成层位于工坊方形预览之上,底部有不透明回退色;预览层在场景提取的最初几秒内填充,真实图片就绪后覆盖它,若真实图片不可用则自然回退到预览)——透明的根背景会使 Chromium 对整个文档禁用次像素抗锯齿(ClearType);灰度渲染的字形是“壁纸文字看起来模糊”的根本原因,而不透明的根背景可恢复彩色次像素渲染(端到端测量:文字边缘的彩色比例达 56–60%,而灰度渲染下接近 0)。视频/网页壁纸仍使用 body 下方 position:fixed; z-index:-1 的背景层(/ 无法作为 CSS 背景);其上的文字保持灰度是 Chromium 的固有约束。弹窗(设置/Modal)为液态玻璃且壁纸保持动态:弹窗打开时壁纸动画继续运行(弹窗仅悬浮其上);面板为静态绘制的液态玻璃(82% 半透明基底 + 160° 镜面渐变高光 + 1px 亮边 + 内发光,浅色/深色主题各一套),遮罩减淡至 45%。刻意避免使用 backdrop-filter:在 Chromium 中,任何覆盖视频/iframe 壁纸的 backdrop-filter 元素都会冻结其动画帧(官方遮罩自身的 blur(2px) 也在其中);全部显式禁用,玻璃质感通过多个静态图层来表现。
- 本地自适应对比度反转(深色壁纸可读性):客户端对壁纸进行逐区域亮度采样(64×36 画布,左侧 22% 为侧边栏区域,其余为主区域;视频每 2 秒重新采样,而图片/网页壁纸从预览图采样一次),侧边栏区域和主区域各自独立判断:在浅色主题下,如果壁纸较暗(0.62)→ 翻转回浅色主题的墨色;中间色调保持主题默认值。作用范围仅覆盖直接位于壁纸上的两个块——侧边栏([class='sidebarCol'])和空状态主视觉([class='_composerHero']),不包括新会话按钮(它有自己的白色背景);输入框玻璃效果在冲突时增强到 86%,以保持深色文字可读。简而言之,“深色壁纸 → 白色文字,亮色壁纸 → 黑色文字”,自动跟随视频的亮度变化。
- 进程稳定性(流和子进程):每个视频/静态文件流式响应都附加一个错误监听器(stream.on('error') 销毁响应,res.on('close') 销毁流——浏览器在切换壁纸或隐藏标签页时会随时中断后台视频请求,而未消费的错误事件会杀死整个后端进程);startWallpaperEngine 的分离 spawn 会获得一个错误监听器(无效的 exe 路径是一个异步 'error' 事件,同样会导致进程崩溃);JSON/text 响应在响应头已发送后绝不会再次调用 writeHead。
- 三种渲染模式(按壁纸类型自动选择):视频壁纸播放原始视频(,原生 4K 画质);Web 壁纸通过 iframe 加载其 html 入口,因此其自身的动画和粒子效果原生运行(spine 骨骼动画、canvas 粒子等);场景壁纸 = 静态底图 + 实时粒子动画:后端从 scene.pkg 中提取并合成无粒子图层作为底图(?flat=1),并将粒子系统编译为纯数据定义(/scene-anim/ JSON + /scene-anim-tex// 纹理图集;scene-art.js:发射器/初始化器/操作器语义,包括 alpha/大小/颜色的 33 点曲线以及振荡频率范围),前端 #dshWpAnim 叠加层(z-index:-1,pointer-events none)canvas 逐帧模拟——年龄推进/重生、解析弹道积分(重力/阻力/涡旋)、与参考实现语义匹配的角速度积分、独立的 X/Y 轴随机振荡、精灵表帧动画、逐粒子色调缓存;canvas 每帧先重绘底图,然后混合粒子,并使用加法混合(lighter)直接叠加到真实场景像素上(透明叠加层会使加法纹理的黑色背景通过元素级合成显示为黑色方块);cover 变换与 body 背景匹配,针对 dpr≤2 进行过采样;当导出不可用或底图解码失败时,自动回退到烘焙的稳态合成图像(纹理链支持 RGBA/DXT1/3/5/RG88/R8/JPEG + LZ4——大约 1/4 的场景壁纸具有 JPEG-in-TEX 主图层,由内置 jpeg-js 解码器(vendored,Apache-2.0)栅格化,因此图层不会被丢弃;共享粒子纹理会回退到 WE 资源库;提取在工作线程中运行,磁盘缓存 v5)。
- Web 壁纸的静态资源(html/js/css/images/fonts/embedded video)由宿主端通过 /plugin-wallpaper/web// 流式传输(支持 HTTP Range,解析路径后针对目录遍历进行前缀验证,非文件返回 404)。
- 控制通过 Wallpaper Engine 的官方命令行接口(wallpaper64.exe -control ...)进行;读取当前壁纸通过其 config.json 进行(实践测量:-control getWallpaper 的输出无法从外部进程捕获)。
- 每次壁纸列表调用都会实时扫描创意工坊目录,因此新安装的壁纸无需重启。
- 应用壁纸时统一传递 scene/video/web 类型的 project.json 路径(官方文档支持)。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
jiumengya/dsh-wallpaper
把 Wallpaper Engine 壁纸设为应用背景并控制桌面壁纸
相关插件 · UI / 主题
破甲增强版JeffKeeping/dsh-purge-plus
dsh-purge 的非官方分支fork:适配 DeepSeek Harness 0.2.1-rc.2、破甲内核…
★ 387已汉化DeepSeek 客户端
71.9
无代码业务系统平台nocobase/nocobase
NocoBase 是什么
★ 24,804已汉化DSH
71.8
1Panel 服务器面板1Panel-dev/1Panel
全球 250 万+ 自托管用户共同喜爱。
★ 37,350已汉化DSH
71.5
工作状态行动态ccch1mneyyy/working-activity
作者:chimney@ccch1mneyyy。社区项目,非 DeepSeek 官方项目。
★ 664已汉化DSH
71.2
多模型配置管家farion1231/cc-switch
跨平台桌面一体化助手,支持 Claude Code、Codex、OpenCode、DeepSeek Harness 等工具,唯一官网 ccswitch.io
★ 151,506已汉化DSH
71.1
AI 矢量设计工具ZSeven-W/openpencil
全球首个 AI 原生开源矢量设计工具。
★ 7,027已汉化DSH
71.1
这是你的仓库?认领条目