DSH Hub

Willmylife/dsh-dynamic-wallpaper

dsh-dynamic-wallpaper

UIWeb UI0 GitHub stars· updated 2026-08-22

DSH dynamic wallpaper plugin: 6+ animated backgrounds (particles, meteor shower, etc.), custom import, opacity/blur/speed controls

Install

npx @deepseek-ai/dsh plugin --profile web add -w

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-dynamic-wallpaper DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/dsh-dynamic-wallpaper.svg)](https://dshhub.dev/plugins/dsh-dynamic-wallpaper)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from Willmylife/dsh-dynamic-wallpaper, cleaned of badges and images.

dsh-dynamic-wallpaper

DeepSeek Harness (DSH) 动态壁纸插件:在设置页提供 8 种内置 Canvas 动态壁纸 + 自定义视频背景,支持速度、密度、遮罩透明度、模糊调节,所有配置存入 localStorage,刷新不丢失。

灵感来自 dsh-skin,采用相同的插件结构(浏览器侧实现 + cordis loader entry)。

内置壁纸

壁纸效果
粒子 (particles)漂浮连线粒子网络
流星雨 (meteors)夜空流星划过
星际穿梭 (starfield)3D 星空飞行
波光 (waves)层叠正弦波浪
雨幕 (rain)深夜落雨
气泡 (bubbles)深海上浮气泡
字符雨 (matrix)黑客帝国风数字雨
极光 (aurora)流动极光帷幕与湖面倒影

功能

  • 8 种内置动态壁纸,全部 Canvas 渲染,无外部资源
  • 自定义视频:粘贴可直接播放的 http(s) 视频网址,或导入本地 MP4 / WebM / OGV / MOV / M4V 文件作为动态背景
  • 内置免版权预设:设置面板提供海岸浪花 / 现场演出 / 数字地球三个 Pexels 视频一键试用(内容逐一核实、1080p、全部 ≤21MB)
  • 本地导入的视频保存在浏览器 IndexedDB 中,刷新或重启后自动恢复;隐私模式等存储受限环境下需重新导入
  • 切换视频时会先在后台预加载,加载成功才替换当前壁纸,失败时原壁纸保留并给出具体原因(防盗链/跨域、格式不支持、解码失败、超时)
  • 远程视频能通过格式校验不代表一定可播放:需要登录、依赖 Referer、防盗链或不允许跨域嵌入的来源可能加载失败
  • 视频画质三档:流畅(半分辨率 20fps)/ 平衡(75% 分辨率 24fps,默认)/ 高清(原始直出)——视频壁纸垫在聊天界面后可通过降采样与限帧显著降低合成开销;前两档的模糊滑杆改为更深的降采样实现,几乎零额外开销
  • 速度 / 密度 / 遮罩 / 模糊 四个滑杆实时调节
  • 动画透在主内容区和侧栏上,消息气泡保持不透明,不影响可读性
  • 页面隐藏时自动暂停动画/视频,省电
  • 配置持久化(localStorage),刷新后自动恢复

安装

dsh plugin --profile web add -w /path/to/dsh-dynamic-wallpaper
dsh web

从 npm 安装:

dsh plugin --profile web add -w dsh-dynamic-wallpaper
dsh web

安装后打开 设置 → 通用,即可看到「动态壁纸」面板。

开发

修改 lib/client.js 后重启 web 服务器,并运行零依赖的语法与绘制烟雾测试:

npm run check
npm test
dsh web

npm test 会让每种内置壁纸在标准、最高与最低密度下完成 Canvas 绘制,捕获浏览器端绘制逻辑的运行时错误。

License

MIT

Related plugins