Preface

DeepSeek Harness provides high customizability. Adding a custom background wallpaper to the chat interface is part of visual customization. This plugin allows uploading local images or using links, while providing transparency and mask controls.

Overview

dsh-background is a plugin maintained by lcohvne-tomorin. It allows customizing the background of DSH chat pages. It supports local uploads, links, and a “no background” mode. Settings are persisted after restart.

Core Features

  • Image sources: Supports three modes: no background, local upload (PNG·JPG·GIF·WebP, ≤20MB), and image links.
  • Image processing: Uses Canvas to automatically scale images proportionally to fit screen dimensions.
  • Visual adjustment: Provides transparency (0-100%) and dark mask (0-100%) sliders.
  • Scope: Can be switched between chat area (default) and fullscreen.
  • Persistence: Configuration and images are stored in $DSH_HOME/storages/dsh-background/ and take effect after restart.
  • Theme adaptation: Colors follow DeepSeek Harness theme tokens.

Installation and Enabling

Use the following command to install the plugin:

pnpm dsh plugin --profile web add github:lcohvne-tomorin/dsh-background#84955f4534bf3b2b7d6f300e5d8f72b9ec52a772

After installation, find the “Background” option in the settings menu.

Usage Steps

  1. Open Settings → Background and enable the background.
  2. Select “Local upload” and choose an image, or switch to “Image link,” paste the URL, and click “Download and Apply.”
  3. Drag the transparency and dark mask sliders to adjust the effect.
  4. Switch the “Scope” to chat area or fullscreen.
  5. Select “No background” or disable the feature to restore the default.

Permissions and Notes

  • Network access: Images are downloaded only in “Image link” mode (20MB limit, 20s timeout, up to 5 redirects followed), with SSRF protection.
  • File operations: Configuration and images are written to $DSH_HOME/storages/dsh-background/ and cleared upon uninstallation.
  • UI modification: Injects styles; in fullscreen mode, the sidebar becomes semi-transparent to reveal the wallpaper.
  • Privacy: Does not collect or upload any session or user data.
  • Dependencies: Requires Node.js >= 22; peerDependencies include @deepseek-ai/cordis ^4.0.1 and react ^18.2.0.

Conclusion

This plugin is licensed under the MIT license. The source code is hosted on GitHub.