← Back to home@mengjiemy

dsh-dynamic-bg

给 DSH 铺整屏动态背景:静态图 / GIF / 视频三种都支持,配可调蒙版、模糊、不透明度与面板半透明。只改 CSS 变量、不碰哈希类名。动态背景插件(DSH plugin for dynamic wallpaper/background)

Stars
0
Language
JavaScript
Created
Oct 5, 2026
Updated
Oct 5, 2026
GitHub repo

Introduction

DSH 动态背景与特效

原名:dsh-dynamic-bg 一句话:把 DSH 那个灰底色,换成一整屏的图片 / 动图 / 视频,还能调模糊、蒙版、透明度。


它解决什么问题

DSH 默认界面是素灰色。看久了累,也没有"自己的空间"的感觉。

现有的同类插件只支持静态图片(另有一个只支持 Windows)。 这个能放视频 —— 循环播放、静音、支持倍速和拖进度条。


能放什么

类型格式
静态图jpg / png / webp / avif / bmp / svg
动图gif
视频mp4 / webm / mov / m4v

能调什么

效果范围说明
蒙版强度0–100背景上叠一层半透明,保证任何亮度的图上文字都看得清。深浅主题各一套配色
背景模糊0–40px模糊后自动轻微放大,避免边缘露白
不透明度0–100背景本身的浓淡
填充模式铺满 / 完整显示铺满会裁边,完整显示会有留白
面板半透明主区 / 侧边栏 各自调让内容区透出背景
一键压暗开关临时把背景压暗,不改上面的参数

★ 为什么它比同类"不容易坏"

DSH 界面的样式里有一堆带哈希的类名(形如 .css-a1b2c3)。 那些名字每次版本更新都会变 —— 所以直接改它们的插件,升级后经常突然失效。

这个插件的做法:只改 DSH 自己的 CSS 变量(--dsw-* 那些), 一个哈希类名都不碰。⇒ 版本升级后照样能用。


还带了什么(隐藏功能)

除了背景,代码里还有一整套视觉特效(说明文档还在补):

  • 环境文字特效:诗词雨 / 二进制雨,7 条泳道防重叠
  • 8 套文字配色:hacker-green / amber / magenta / cyan / white …
  • 输入框聚焦毛玻璃
  • 按会话独立背景(每个对话可以设不同的背景)

怎么用

  1. 装完重启 dsh web,刷新页面
  2. 在设置里找到背景设置,填一个本地文件的绝对路径(比如 ~/Movies/loop.mp4)
  3. 打开开关,按需调蒙版 / 模糊 / 不透明度

★ 也可以让 agent 帮你设 —— 它给了三个工具: dynamic_bg_set / dynamic_bg_get / dynamic_bg_off


安全边界

它读本地文件,所以做了限制:

  • ✅ 只允许媒体扩展名,其它一律 403
  • ✅ 只允许绝对路径,相对路径 400
  • ✅ 拒绝敏感目录(/etc、/System、/dev 等)
  • ✅ 单文件上限 2GB
  • ✅ 不写你的任何文件(只往系统临时目录 /tmp 写一份诊断日志,可随时删)

说明文档待补:环境文字特效的详细用法。


维护策略

这是一个个人项目,按现状发布(as-is)。

  • Issue / PR 欢迎,但不保证及时回复 —— 我有正职,这是业余时间做的
  • PR 我会看 diff 再决定要不要合并 —— 不会盲目合并(安全起见)
  • 不接受"催更" —— 有需要欢迎自己 fork 改
  • 如果你发现了好用的改进,欢迎提 PR;如果我长期没回,你完全可以 fork 走

这个项目不承诺任何 SLA。 用之前请自己评估。