DeepSeek Harness Hub
← 返回列表

壁纸皮肤插件sakka6868/dsh-skin

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

把热门壁纸与视频设为界面背景,支持搜索上传

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/5 · 已提供中文文档

DSH 皮肤插件:将 Alphacoders 热门壁纸作为 DeepSeek Harness Web GUI 背景——图库、搜索、本地图片上传、浅色/深色遮罩

综合分
30.4
GitHub 分
30.4
用户评分
★ Stars
2
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add sakka6868/dsh-skin
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery@deepseek-ai/cordis@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-client-ui-theme@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-settings
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-skin-alphacoders

License: MIT
npm version
GitHub Release
Topic: dsh-plugin

DSH 皮肤插件:把 Alphacoders 热门壁纸 设为 DeepSeek Harness Web GUI 的背景,并支持 MoeWalls / Pexels 动态壁纸(视频背景)。符合 DSH 插件包规范的双半(Host + Client)Cordis 插件。

壁纸效果预览

设置面板

功能

静态壁纸(Alphacoders)

- 壁纸库:设置面板新增「壁纸」分区,浏览 Alphacoders 热门壁纸(每页 15 张、可翻页、懒加载)。
- 搜索:按关键词搜索壁纸(走 Alphacoders 官方搜索页,单页最多 30 条);清除搜索恢复热门列表。
- 一键应用:点击缩略图即应用为背景;主表面(对话区、侧边栏)经主题 token 半透明化透出壁纸;设置面板、浮层与弹层菜单保持不透明(--dsw-alias-bg-layer-2 / layer-3),文字清晰可读。

动态壁纸(视频背景,v3)

- MoeWalls / DesktopHut 双源:动态壁纸 tab 内可切换两个视频源;分类/搜索/分页浏览缩略图。
- 下载制(v3.4):点击缩略图跳转原站(moewalls.com / desktophut.com)下载视频文件,再通过「上传本地图片/视频」设为动态壁纸——插件不做在线流式播放,避免被原站限流拖慢。
- 本地上传视频(v3.4):支持 PNG/JPEG/WebP/GIF 图片与 WebM/MP4 视频;视频作为动态壁纸循环播放,文件存于 $DSH_HOME/storages/skin-alphacoders/,重启后恢复;上限 200MB。
- 无缝循环(v3.3):双  接力 + 瞬时切换(无交叉淡化),循环无停顿、无暗亮闪,效果接近 Wallpaper Engine;毛玻璃/遮罩/淡入同样作用于视频层。

视觉与显示

- 毛玻璃(v3):0~30px 背景模糊,只作用于壁纸层——界面与文字在其上层保持清晰。
- Ken Burns 微动效(v3.1):静态壁纸缓慢缩放平移,背景不再死板。
- 渐变分层遮罩(v3.1):边缘压暗 + 中间半透 + 柔光暗角 + 品牌光晕,由单一遮罩滑条驱动;浅色主题白雾、深色主题黑雾,跟随 DSH 主题(light/dark/system)。
- 换壁纸淡入(v3.1):新壁纸 0.8s 淡入,滑条/主题切换不会闪屏。
- 显示控制:四种填充方式(铺满/完整/居中/拉伸)与 0~90% 遮罩强度。

其他(v2)

- 浅深双主题壁纸:浅色与深色主题各保存一张壁纸,切换明暗自动跟随。
- 收藏:画廊卡片右上角 ☆ 一键收藏,持久化于 user-data.json,点击收藏卡即应用。
- 自动更换:定时自动换壁纸——随机(远程新鲜壁纸)/顺序(按收藏顺序轮换)/仅收藏(收藏中随机),另有「立即换一张」按钮;间隔 1~168 小时可调。
- 历史记录(v3.1):应用过的壁纸自动记录(最多 5 条,重复应用自动去重移顶),一键恢复旧壁纸。
- 持久化:偏好经 Host 的 settings 命名空间 ui-skin 写入 $DSH_HOME/settings.yaml,重启自动恢复;收藏与历史存于 user-data.json。
- 性能:背景默认使用 1920px 变体(thumb-1920-),不下载 5K/8K 原图;列表/搜索/动态壁纸均有内存 TTL 缓存。
- 干净卸载:移除插件行后 route、调度器、样式全部消失,GUI 恢复默认外观。

安装

方式一:npm 安装(推荐)

安装到 web profile(含构建产物,无需本地构建)
dsh plugin --profile web add dsh-skin-alphacoders

方式二:从源码构建安装

1. 构建本包(生成 lib/ 产物)
pnpm install && pnpm build   # 或 npm install && npm run build

2. 安装进 web profile(从本包所在目录的上级执行)
dsh plugin --profile web add "file:"

两种方式都需在 $DSH_HOME/profiles/web/cordis.patch.yml 中登记插件行:

$DSH_HOME/profiles/web/cordis.patch.yml
- insert:
- id: skin-alphacoders
name: 'dsh-skin-alphacoders'
config:
cacheTtlMs: 3600000      # 可选:列表缓存 TTL(毫秒)
requestTimeoutMs: 20000  # 可选:抓取超时(毫秒)
localMaxBytes: 209715200 # 可选:本地上传上限(字节,默认 200MB)

重启 dsh web 生效;设置面板 → 「壁纸」分区即可使用。

提示:开发迭代时,可用目录联接把 profile 的 node_modules/dsh-skin-alphacoders 指向源码目录(pnpm 的 file: 依赖默认硬链接复制,修改源码后需要重建联接或重新 add)。

架构

┌─ Host 半(node)─────────────────────────────────────────────┐
│  alphacoders:fetch + 解析 popular-wallpapers?page=N         │
│  (服务端渲染的 schema.org ImageObject,15 条/页)            │
│  moewalls(v3):REST 列表/分类 → Chrome 抓取降级 → HTML 页   │
│  详情按页面 URL 解析;视频经本地代理 + 磁盘缓存(LRU 10)     │
│  desktophut(v3.5):Node 直抓分类/搜索页,wallpaper-card │
│  卡片解析;视频走原站下载制(播放需本地上传)               │
│  内存 TTL 缓存(列表 6h、详情 6h、分类 24h)                 │
│  ctx.settings.register('ui-skin', SkinSettingsSchema)        │
│  user-data.json(收藏 ≤200、历史 ≤5,原子写入)              │
│  自动更换调度器(setTimeout 链,按模式选池)                 │
│  HTTP route(经 ctx.webServer):                            │
│    GET  /skin-alphacoders/wallpapers?page=N | ?query=Q       │
│    GET  /skin-alphacoders/moewalls/{categories,list,detail,video} │
│    GET  /skin-alphacoders/desktophut/list                    │
│    GET  /skin-alphacoders/settings | POST(字段白名单 patch)│
│    GET  /skin-alphacoders/user-data                          │
│    POST /skin-alphacoders/favorites(+ /favorites/remove)   │
│    POST /skin-alphacoders/history/remove                     │
│    POST /skin-alphacoders/theme / auto-change/now            │
│    POST /skin-alphacoders/local(图片/视频上传)              │
│    GET  /skin-alphacoders/health                             │
└──────────────────────────────────────────────────────────────┘
同源 fetch(无 CORS 面)
┌─ Client 半(浏览器)─────────────────────────────────────────┐
│  skin-store:GET/POST settings route 的本地快照 + 订阅        │
│  user-data store:收藏/历史快照                              │
│  双主题镜像:theme/change 时把当前主题槽同步到扁平字段         │
│              (带 fromTheme 标记,不产生历史记录)            │
│  background:body::before 壁纸层 + ::after 渐变遮罩层         │
│              + 视频接力层(双  瞬时切换,无暗亮闪)    │
│              + ctx.theme.overrideTokens 表面半透明            │
│              (签名去重防 theme/change 重入风暴)             │
│  settings.section「壁纸」:静态库 + 动态库 + 上传 + 收藏      │
│  + 历史 + 自动换 + 主题 tab                                  │
└──────────────────────────────────────────────────────────────┘

为什么不用 settingsScope 传输

api-proxy 的 settings 协议是 Host 白名单(locale、ui-theme 等),仓库外插件注册的 namespace 只会得到 settings-not-exposed。因此本插件在 Host 侧仍用 SettingsScope.update 持久化(owner seam 无白名单限制),浏览器侧改为经自己的 HTTP route 读写,持久化文档仍是 $DSH_HOME/settings.yaml 的 ui-skin 分节。

配置

| 字段 | 默认 | 说明 |
|---|---|---|
| cacheTtlMs | 3600000 | 壁纸列表页内存缓存时长(毫秒) |
| requestTimeoutMs | 20000 | 抓取远程站点的超时(毫秒) |
| localMaxBytes | 209715200 | 本地上传(图片/视频)大小上限(字节) |

版权与合规

- 壁纸版权归原作者与 Alphacoders / MoeWalls / DesktopHut 所有;本插件仅供个人使用,不批量下载或再分发壁纸。
- 请在网络策略允许访问上述站点与其图片/视频 CDN 的环境中使用。

验证

e2e/verify.mjs 是 Puppeteer(连接本机 Chrome)端到端验证:需先按上述步骤装好插件并启动 dsh --profile web --port 3090(测试实例可用 E2E_URL 环境变量覆盖端口),再执行:

node e2e/verify.mjs

覆盖(70 项断言):画廊渲染、收藏往返、双主题独立壁纸、明暗联动、刷新持久化、历史恢复(含去重)、自动更换、毛玻璃/滤镜增强/Ken Burns/渐变遮罩、搜索、动态壁纸列表/分页/跳转原站、本地上传(图片与视频)、动态壁纸无缝接力、本地壁纸清理、收藏/历史持久化、无页面错误。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群