Themes & Appearance

dsh-ui-background

ai-yue-love/dsh-ui-background · ★ 0

ai-yue-love

Local image/video wallpaper plus a token-based frosted-glass UI for the DeepSeek Harness Web client.

License
MIT
Added
2026-10-30
Maintenance
active
Install kind
npm
npm
dsh-ui-background
Manifest status
Declared
Manifest path
package.json#dsh
Manifest checked
2026-10-30T09:38:23.230Z
Lifecycle scripts
None found

Static manifest checks report declarations only; they are not compatibility or security review.

安装

dsh plugin --profile web add 'dsh-ui-background@0.8.3'

从 npm 安装预构建包

For install and environment setup, plus plugin development tutorials, see DSH community docs ↗

README

Source README · body: en · Read Chinese README

Table of contents
  1. What it is (and why it does not stutter)
  2. Features
  3. Install
  4. When this fits
  5. Limitations
  6. Security
  7. License

Local image/video wallpaper plus a full-window frosted-glass treatment for the DeepSeek Harness Web client.

Status: 0.8.0, developed and verified against DSH 0.2.0-rc.2. Harness internals move during the RC period — re-verify after upgrading.

What it is (and why it does not stutter)

The glass is not produced by scanning the DOM. It overrides the official theme tokens:

ctx.theme.overrideTokens('dsh-ui-background', {
  '--dsw-alias-bg-base':         { light: 'rgba(255,255,255,.62)', dark: '…' },
  '--dsw-specific-sidebar-fill': { light: '…', dark: '…' },
  // plus three raised-surface / overlay tokens
})

DSH paints body, the app frame and the sidebar with those tokens, so:

  • no DOM scanning, no MutationObserver, no per-panel backdrop-filter
  • turning it off disposes the token layer — the UI returns to the shipped palette
  • the wallpaper is one position:fixed; z-index:-1 layer (pure CSS for images, a single <video> for video)

Features

  • Sources: uploaded file, or an absolute local path (read-only; never copied or moved)
  • Video wallpapers (mp4 / webm): looped, muted, paused when the tab is hidden
  • Framing: cover / contain, zoom 50–300 %, horizontal/vertical anchor, draggable preview
  • Wallpaper Engine: scans the Steam workshop folder 431960 and lists only directly playable entries
  • Recents: up to 12 entries with thumbnails and their framing, one click to restore, per-entry delete
  • Uploaded files can be deleted individually; deleting the active one turns the background off
  • Fully local: no network access, no telemetry

Install

dsh plugin --profile web add dsh-ui-background

Restart the Host afterwards. DSH builds its module resolution table at startup, so a freshly installed package cannot be imported in the running process.

Then open Settings → Background & Glass.

When this fits

  • You want a local image or video behind the UI, with the panels translucent
  • You do not want to re-frame after a switch: each history entry keeps its zoom and position

What it cannot do: render Wallpaper Engine scenes. scene.pkg needs WE's own engine; this plugin only reads image and video files.

Limitations

Limitation Why
Scene wallpapers cannot be used scene.pkg is a Wallpaper Engine format that only its engine can render
Do not use WE preview images Measured at 144–254 px; stretching to 1920 is a 7–13× upscale
Want a WE scene? take a screenshot Run WE, press Win+Shift+S, then use the paste button (1920×1080)
mkv / mov may not play Edge does not decode those containers; use mp4 / webm

Security

  • The Host reads only the single local file you configure, plus project.json / media / previews inside the Steam workshop folder
  • HTTP routes are loopback only; writes reject sec-fetch-site: cross-site
  • Uploaded file names are sanitised; path traversal is rejected
  • State lives in $DSH_HOME/storages/dsh-ui-background/ and is not removed when the plugin is uninstalled

License

MIT