🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

壁纸持久化 wuweiran-web/dsh-beauty-persist

DeepSeek 客户端
wuweiran-web73 天前有提交已提供中文文档扫描:含敏感能力兼容 / 相关生态

重启换端口也不丢,动图视频壁纸一键换

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 安装
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 73 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
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
预览分享卡片长什么样 ↓wuweiran-web/dsh-beauty-persist
分享 · DeepSeek Harness Hub
wuweiran-web/dsh-beauty-persist

重启换端口也不丢,动图视频壁纸一键换

回到顶部