重启换端口也不丢,动图视频壁纸一键换
28.1/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/wuweiran-web/dsh-beauty-persist.git状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:待复验
是什么
生态应用
桌面端 / Web 外壳,不以 dsh plugin add 安装
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 73 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件发起外部网络请求
查看扫描证据(共 29 处,展示前 17 条)
- 读取本地文件lib/index.js:76
const raw = readFileSync(assetsIndexPath(), "utf8"); - 写入本地文件lib/index.js:88
mkdirSync(dir, { recursive: true }); - 写入本地文件lib/index.js:91
writeFileSync(tmp, body, "utf8"); - 写入本地文件lib/index.js:93
renameSync(tmp, assetsIndexPath()); - 写入本地文件lib/index.js:95
writeFileSync(assetsIndexPath(), body, "utf8"); - 写入本地文件lib/index.js:110
mkdirSync(dir, { recursive: true }); - 写入本地文件lib/index.js:111
writeFileSync(join(dir, filename), data); - 读取本地文件lib/index.js:138
if (existsSync(file)) renameSync(file, `${file}.deleted-${Date.now()}`); - 读取本地文件lib/index.js:149
const raw = readFileSync(statePath(), "utf8"); - 读取本地文件lib/index.js:192
if (!existsSync(path)) { - 读取本地文件lib/index.js:198
const data = readFileSync(path); - 发起网络请求lib/client.js:103
fetch(STATE_ROUTE, { - 发起网络请求lib/client.js:119
const res = await fetch("/beauty-persist/wallpaper.gif", { - 发起网络请求lib/client.js:300
const res = await fetch("/beauty-persist/wallpaper.mp4", { - 发起网络请求lib/client.js:326
fetch(STATE_ROUTE, { - 发起网络请求lib/client.js:548
fetch("/beauty-persist/assets", { cache: "no-store" }) - 发起网络请求lib/client.js:567
const res = await fetch(`/beauty-persist/assets?name=${encodeURIComponent(file.name)}`, {
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 壁纸持久保存
- 支持动图视频壁纸
- 全屏皮肤中心
展开完整介绍(138 字)↓
让 DSH 桌面端壁纸持久不丢:支持 GIF 动图与 MP4 视频壁纸,内置全屏皮肤中心(上传、预览、一键应用、删除素材),重启、换端口、清缓存都不丢失。DSH 桌面端壁纸与主题在服务端持久化,支持 GIF 动图、MP4 视频壁纸,外加全屏皮肤中心(上传、预览、应用、删除)。
README
由 DeepSeek 最新模型翻译生成dsh-beauty-persist
在 DSH Desktop 重启后保留 dsh-dream-skin / dsh-liquid-glass 的壁纸与主题。
为什么需要它
DSH Desktop shell 启动其 Web 载体时使用操作系统分配的随机端口(--port 0),因此浏览器源(origin)在每次重启后都会改变。浏览器的 localStorage 是按源隔离的——像壁纸图片这样的视觉状态(由 dream-skin / liquid-glass 存储在 localStorage 中)在每次重启后都会消失,即使它从未被删除。
dsh-beauty-persist 将这些视觉状态迁移到一个服务端 JSON 文件中,该文件与端口无关。它在每次页面加载时恢复状态,并在你于 UI 中调整设置时将更改推送回服务器。
它的功能
- 宿主端(lib/index.js)
- 提供 GET /beauty-persist/state(当前持久化状态)和 POST /beauty-persist/state(替换持久化状态)。
- 提供 GET /beauty-persist/wallpaper.gif(已存储的 GIF 壁纸)和 POST /beauty-persist/wallpaper.gif(上传新的 GIF 壁纸)。
展开完整文档(README 剩余 1 节)
dsh-beauty-persist
在 DSH Desktop 重启后保留 dsh-dream-skin / dsh-liquid-glass 的壁纸与主题。
为什么需要它
DSH Desktop shell 启动其 Web 载体时使用操作系统分配的随机端口(--port 0),因此浏览器源(origin)在每次重启后都会改变。浏览器的 localStorage 是按源隔离的——像壁纸图片这样的视觉状态(由 dream-skin / liquid-glass 存储在 localStorage 中)在每次重启后都会消失,即使它从未被删除。
dsh-beauty-persist 将这些视觉状态迁移到一个服务端 JSON 文件中,该文件与端口无关。它在每次页面加载时恢复状态,并在你于 UI 中调整设置时将更改推送回服务器。
它的功能
- 宿主端(lib/index.js)
- 提供 GET /beauty-persist/state(当前持久化状态)和 POST /beauty-persist/state(替换持久化状态)。
- 提供 GET /beauty-persist/wallpaper.gif(已存储的 GIF 壁纸)和 POST /beauty-persist/wallpaper.gif(上传新的 GIF 壁纸)。
- 将持久化状态作为 window.__DSH_BEAUTY_PERSIST_STATE__ 注入到 index.html 响应中,且位于启动清单(boot manifest)之前,这样浏览器端就能在 dream-skin/liquid-glass 初始化之前同步恢复状态。
- 浏览器端(lib/client.js)
- 在页面加载时,从服务器注入的状态中恢复每一个 dsh-dream-skin: / dsh-liquid-glass: 的 localStorage 键。
- 挂钩 Storage.prototype.setItem / removeItem,并将之后的任何更改镜像回服务器(防抖处理),因此你的壁纸/皮肤选择会持续保留,无需你做任何额外操作。
- 暴露 uploadGifWallpaper(gif) 以设置动态 GIF 壁纸。
状态存储在 ~/.dsh/beauty-persist-state.json;GIF 壁纸文件位于 ~/.dsh/beauty-persist-wallpaper.gif。
安装
适用于任何已经运行 dsh-dream-skin 和/或 dsh-liquid-glass 的 profile(通常是 DSH Desktop 使用的 desktop profile)。
cd ~/.dsh/profiles/desktop
添加依赖(将仓库 URL / tag 调整为你所安装的内容)
pnpm add dsh-beauty-persist@github:/
在 package.json 的 dsh.profile.bundles 中注册该 bundle "dsh-beauty-persist",
然后重启 DSH Desktop,以便加载新的 bundle。
用法
无需任何配置。安装后:
1. 重启 DSH Desktop(加载 bundle 所必需)。
2. 在 GUI 中打开 Settings → Theme / 外观,像往常一样选择你的壁纸 / 皮肤。
3. 该选择现在已持久化到服务端——它能在重启、端口变化、浏览器缓存清除,甚至切换浏览器后依然保留。
如果你在之前会话的 localStorage 中已经设置了壁纸(现在孤立在旧端口下),要么在安装后重新选择一次,要么手动为服务器状态播种:
示例:将 data-URL 或 URL 放入状态文件json
echo '{"dsh-dream-skin:wallpaper":"https://example.com/wall.jpg"}' \
~/.dsh/beauty-persist-state.json
动画 GIF 壁纸
dream-skin 的“选择图片”流程会通过 canvas 重新编码,并将动画 GIF 压平为静态 JPEG。若要改用动画 GIF,请将其上传到此插件——浏览器会原生渲染该 GIF(它会播放),并且文件存储在服务端,因此重启后依然保留。
在 GUI 中(无需命令行): 安装后,打开设置 → 主题 / 外观——外观部分会出现一行 “GIF 壁纸上传(动图)”。
点击 选择 GIF…,选择一个本地 .gif,它就会被上传、激活并持久化。刷新 GUI 即可看到动画。
从命令行: sh 在此仓库中——脚本会自动发现 DSH Desktop GUI 端口
node scripts/set-gif-wallpaper.mjs "C:\path\to\my-wallpaper.gif"
或者,如果你的 GUI 在其他位置提供服务,则显式传入基础 URL
node scripts/set-gif-wallpaper.mjs "C:\path\to\my-wallpaper.gif" http://127.0.0.1:8080
上传后,刷新 GUI(或重启 DSH Desktop):该 GIF 会作为壁纸播放,并在重启后依然保留。随时可以通过使用不同的 GIF 重新运行脚本来更换它。
MP4 视频壁纸
CSS background-image 无法播放视频,因此 MP4 壁纸由此插件渲染为一个全视口的 图层(静音、循环、object-fit cover)。
在 GUI 中: “MP4 视频壁纸(动效)” 行(同样位于设置 → 主题 / 外观下)允许你选择一个本地 .mp4 并激活它,或移除视频壁纸。
从命令行: sh
node scripts/set-mp4-wallpaper.mjs "C:\path\to\my-wallpaper.mp4"
可选,显式指定基础 URL:
node scripts/set-mp4-wallpaper.mjs "C:\path\to\my-wallpaper.mp4" http://127.0.0.1:8080
MP4 存储在 ~/.dsh/beauty-persist-wallpaper.mp4(最大 50 MB),并在重启后依然保留。
🎨 皮肤中心(素材库)
构建你自己的壁纸库:上传一次图片 / GIF / MP4,然后随时一键切换——所有内容都存储在服务端,并在重启后依然保留。
在 GUI 中: “🎨 皮肤中心” 行(位于设置 → 主题 / 外观下)为你提供:
- 上传素材…——选择一个本地图片 / GIF / MP4,将其添加到素材库(存储在 ~/.dsh/beauty-persist-assets/,每个最大 50 MB)。
- 素材的缩略图网格——点击任意缩略图即可立即将其应用为壁纸(图片/GIF 渲染为背景图层,GIF 会原生播放动画;MP4 渲染为循环视频图层)。
- 缩略图上的 ✕ 会从素材库中删除该素材。
当前应用的素材会记录在服务端状态中,因此重启后相同的壁纸会自动恢复。
要求
- @deepseek-ai/dsh-client-runtime、@deepseek-ai/dsh-client-locale、 @deepseek-ai/dsh-client-ui-theme(标准 Web 客户端技术栈;存在于每个已发布的 Web 组合中)。
- 宿主部分需要 Node >= 18。
许可证
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
wuweiran-web/dsh-beauty-persist
重启换端口也不丢,动图视频壁纸一键换
相关插件 · 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,344已汉化DSH
71.5
终端编码代理esengine/DeepSeek-Reasonix
· 指南 · ACP · 扩展开发 · 规格 · 官方网站 · Discord · QQ
★ 36,045已汉化DSH
71.2
工作状态行动态ccch1mneyyy/working-activity
作者:chimney@ccch1mneyyy。社区项目,非 DeepSeek 官方项目。
★ 664已汉化DSH
71.2
多模型配置管家farion1231/cc-switch
跨平台桌面一体化助手,支持 Claude Code、Codex、OpenCode、DeepSeek Harness 等工具,唯一官网 ccswitch.io
★ 151,202已汉化DSH
71.1