Introduction

When using the DeepSeek Harness (DSH) Web client, the default base background is often plain and monotonous. The dsh-client-background plugin takes over this layer, replaces the base background with curated random images from Unsplash, and displays the images behind semi-transparent surfaces.

What It Is

This is a DSH Web client plugin maintained by imcp-pro. It aims to provide a dynamic, customizable background layer for the Web interface, without relying on any front-end framework, and implemented using only native browser APIs.

Core Features

  • Curated wallpaper carousel: Built with 100 curated wallpapers, with configurable intervals for automatic switching.
  • Runtime control: The background effect can be enabled or disabled through the settings panel without uninstalling the plugin.
  • Client update checking: The plugin periodically polls the GitHub repository, detects new versions, and prompts the specific update command.
  • Framework decoupling: The visual effects rely only on global browser variables (document, Image, and setInterval), resulting in low impact on the host framework.

Installation and Enabling

Before installing, ensure that the web profile for dsh has been configured and that the profile includes the web-app bundle.

Official installation command:

dsh plugin --profile web add github:imcp-pro/dsh-client-background

Note: When installing from GitHub, the prepare script builds the lib/ directory during installation. If you use pnpm ≥ 10, you may encounter the ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED error. In this case, add the allowBuilds key generated in the error message to ~/.dsh/profiles/web/pnpm-workspace.yaml.

Configuration and Usage

After installation, configure it through the settings panel:

  1. Open Settings → Plugins → Plugin list.
  2. Expand Wallpaper background (under Global plugins).
  3. Adjust the following fields:
Field Default Value Description
Enable background on Runtime toggle; disables the effect without uninstalling the plugin
Rotation interval 20 Interval for automatically changing images (seconds)
Check for updates off Whether to enable automatic update checking
Check interval 21600 Interval for update checks (seconds)

Changes take effect immediately after saving.

Notes

  • Instant switching: Image switching refreshes immediately, without fade-in/fade-out animations, though a preloading mechanism reduces flicker during loading.
  • iOS Safari compatibility: On iOS Safari, the background-attachment: fixed style is ignored, so the image scrolls together with the page content.
  • Update mechanism: Update checking is a purely client-side behavior. The browser directly compares the commit on GitHub’s default branch with the commit hash embedded at build time, and does not modify the running installation instance.
  • Theme adaptation: The plugin automatically follows DSH theme switching (semitransparent white in light mode and semitransparent black in dark mode), although dark mode usually provides better visual contrast.

Summary

This plugin adds visual richness to the DSH Web client in a lightweight way, making it suitable for developers or users who want to quickly customize the interface style.