Preface¶
If you want to change the webpage background in DSH Web without directly modifying the theme or writing styles yourself, dsh-background provides an independent entry point: fill in the absolute path of a local image file in the “Background Image” row of “Settings → General Settings → Appearance” to set that image as the webpage background, and adjust text readability through overlay intensity.
DSH’s plugin ecosystem is typically integrated in the form of standalone plugins, and the community directory is not an official app store. Below, based on the capabilities already provided by this plugin, it explains what it is suitable for, how to install it, and what the limitations are.
What is it¶
dsh-background is a DeepSeek Harness Web plugin maintained by luoyu-xingu with an MIT license. It solves the requirement of “replacing the webpage background with a local image while preserving the default appearance, light/dark themes, and text readability.”
After installation, it adds a “Background Image” row in the appearance settings, allowing you to replace the background via a local absolute path, and provides a real-time preview and a 0–100% overlay intensity slider.
Core Features¶
- Local Path Setting: Fill in the absolute path of a local image file in the “Background Image” row of “Settings → General Settings → Appearance” to fill the image as the webpage background using the “cover” method.
- Special Character Paths: Supports local image absolute paths containing special characters like spaces; the change takes effect after pressing Enter or losing focus.
- Real-time Preview: Provides a real-time preview box with the same dimensions as the default appearance controls (180 × 88, 16px border radius); when the input box is focused, the preview changes in real-time with the input.
- Host-side Image Routing: Browsers cannot directly load local file paths, so the host provides the image to the browser via the
/dsh-background/imageroute. - Persistence: Configuration is saved to the
ui-backgroundsection of$DSH_HOME/settings.yamland automatically restored after refresh or restart; when not configured, there is no background, and the plugin does not include a default image. - Follow Light/Dark Theme: The fallback color automatically follows the light/dark static palette, and a light white overlay or dark overlay is automatically applied to the light or dark theme respectively to improve text readability.
- Adjustable Overlay Intensity: A 0–100% slider is provided within the appearance row with a step of 5, defaulting to 70%, allowing real-time adjustment of overlay opacity and persistence.
- Image Format and Size: Supports
jpg / jpeg / png / gif / webp / avif / svg / bmp / ico, with a maximum file size of 25MB per file.
Installation and Activation¶
First, execute the installation command:
dsh plugin --profile web add dsh-background
After installation, you need to restart dsh web and refresh the page before you can see the “Background Image” row in “Settings → General Settings → Appearance”.
Typical Usage¶
-
Open “Settings → General Settings” and find “Background Image” below Appearance.
-
Paste the local image path in the input box; the change takes effect by pressing Enter or clicking elsewhere.
-
Drag the “Overlay Intensity” slider to balance text readability and image visibility.
-
The preview box will reflect the effect in real-time; the background is retained after refreshing the page.
-
If you don’t want to keep the background, click “Clear Background” to restore the default appearance.
Technical Notes¶
The plugin’s configuration is saved in the ui-background section of $DSH_HOME/settings.yaml. The image is provided to the browser by the host after reading the local file via the /dsh-background/image route, rather than allowing the browser to read the local path directly.
The current version (dsh 0.1.0-rc.6) settings gateway only allows browser read/write access for namespaces within a hardcoded whitelist; third-party plugin-registered namespaces will receive a settings-not-exposed rejection; the plugin now uses a custom RPC channel.
Applicable Scenarios and Notes¶
- Suitable for DSH Web scenarios requiring local image backgrounds, real-time preview, light/dark theme following, and readability overlays.
- The image must be a local file readable by the dsh process; the host provides it to the browser via
/dsh-background/image, so the path cannot be merely a remote resource accessible to the browser. - Maximum file size is 25MB per file; formats are limited to
jpg / jpeg / png / gif / webp / avif / svg / bmp / ico. - The plugin runs with the current dsh process permissions and can read local files you specify; you should check the source code and MIT license before installing.
- If you need to clear background settings after uninstallation, simply delete the
ui-backgroundsection in$DSH_HOME/settings.yaml.
Conclusion¶
dsh-background incorporates “changing the background” into the appearance row of general settings, using local paths, real-time preview, and overlay intensity to handle background personalization needs for the DSH Web interface.
GitHub: https://github.com/luoyu-xingu/dsh-background
The directory page link is not provided in this material; the community directory is an independent site with no official affiliation to DeepSeek / Hypothesis.