dshbase

Plugin directory / UI & Skins / dsh-ui-background

dsh-ui-background

Verified · install-tested on dsh ropz12138

✓ Actively maintained Builds on 9 official DSH packages Pure TypeScript

View on GitHub ↗ ← Back to plugin directory

1Stars
0Forks
0Open issues
TypeScriptLanguage
2026-08-15Last push
Cross-platformPlatform

What it does

Background plugin for deepseek harness, involves CSS overrides of some other components.

✅
Our take
Works — verified, early-stage project

Background plugin for deepseek harness, involves CSS overrides of some other components. It installs cleanly and boots without issues in our testing. It's early-stage but functional.

“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

README

@deepseek-ai/dsh-client-ui-background

English | 中文

Standalone conversation-background plugin: lets a user set a global wallpaper behind the chat column, adjust a readable wash over it, and clear it, all persisted in the user-settings document. It is a pure CSS/UI enhancement — it never edits the stock conversation shell's source; it overrides the rendered DOM by matching stable data attributes and paints the wallpaper through CSS variables on the document root.

What it does

Its node half registers the chat-background settings namespace (fields imageDataUrl, opacity). Its browser half binds that namespace, writes the current snapshot into CSS variables (--dsh-bg-image, --dsh-bg-wash-opacity) on document.documentElement, and installs one plugin-owned <style> tag with an enhancement stylesheet.

The stylesheet:

  • paints a full-bleed wallpaper behind the column content via [data-phase]::before and a readable wash via [data-phase]::after, both driven by those variables (so both light/dark palettes keep their own tint through the wash opacity);
  • turns the docked input into a floating island via [data-phase][data-phase='active'] [data-composer-seat]: it narrows the seat to the card width, centers it, and removes the stock bottom fade — so the wallpaper stays visible on both sides.

Because the rules match stock data attributes (data-phase, data-conversation-scroll, data-composer-seat), they degrade gracefully: if a future shell renames an attribute, the affected override simply stops applying (the column keeps its default tint) rather than breaking the shell.

Settings row

A General-section row (settings.general.item) offers upload, a wash-opacity slider (0–100), and clear. The file pick is a hidden input[type=file] the row's button triggers; the picked raster is downsampled to at most 2560px on the longest side and re-encoded (WebP when supported, else JPEG) before it reaches the settings document, so the settings file and the rendered column stay small.

The plugin exposes no model-visible tool: it is a pure UI/settings feature.

Installation in a Harness checkout

This repository is a source-only package: its workspace:^ dependencies are supplied by a DeepSeek Harness checkout, so it is not installed with npm. Clone this repository directly into the Harness package directory before running pnpm install:

git clone https://github.com/ropz12138/dsh-ui-background.git \
  packages/client/ui-background

Run the installer. It registers the package with the web profile, exposes its settings namespace, installs dependencies, and builds the Client artifacts:

node packages/client/ui-background/scripts/install-into-harness.mjs
pnpm dsh web

The installer is idempotent. A “Conversation background / 对话背景” row appears in General settings.

Model Experience

None, as the background is a browser/settings surface; nothing here reaches a model request.

KV Cache effect

None; this package neither assembles nor sends a provider request.

Known Limitations and Deferred Work

  • Inline data URL in the settings document — a large picture enlarges $DSH_HOME/settings.yaml; the 2560px / ~85% quality downsample bounds this rather than eliminating it.
  • Global only — the background is process-wide, not per-session; per-session backgrounds are deferred.
  • Style overrides track the shell's data attributes — because the plugin does not edit shell source, its enhancement depends on the DOM attributes it matches; a shell restructure may need a version bump of this plugin to re-target.

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-ui-background for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

Web profile:

dsh plugin --profile web add github:ropz12138/dsh-ui-background

Headless (CLI) profile:

dsh plugin --profile headless add github:ropz12138/dsh-ui-background

Test report

Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.

When to use it

Change how dsh looks or how you interact with it — a theme, a skin, or a new panel that reshapes the workspace.

Who it's for

Users who spend hours in the web UI and want it to look and feel the way they work.

For developers — extending it

Skins, panels, and theme tokens are the extension points — author a new skin, add a panel, or sync tokens with an upstream palette.

Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in UI & Skins

Browse all 7797 plugins →