DeepSeek Harness (DSH) adopts the “everything is a plugin” philosophy, allowing client behavior and appearance to be customized through extensions. For developers who need a unified visual style or seek a specific interface experience, changing the client’s skin is a common requirement. dsh-plugin-gemini-theme provides a ready-made style override solution.

Definition and Positioning

This plugin is a style package maintained by dingyi580. It overrides the --dsw-* design tokens of the DSH Web client through a single stylesheet, changing the interface appearance without needing to modify the client source code.

Core Features

The plugin mainly resets styles for the following interface elements:

  • Conversation area and sidebar padding.
  • Sidebar capsule rows and rounded icon buttons.
  • New chat pill.
  • Hero greeting scale.
  • Input box corner radius, padding, and shadow.
  • Blue background glow behind the input box.
  • Entry animation when an empty session opens.
  • Fade-in/out effects at both ends of the scroll area.

Installation and Enablement

Installing the plugin requires using DSH’s plugin management command:

dsh plugin --profile web add dsh-plugin-gemini-theme

After installation, restart dsh web for the styles to take effect.

Typical Usage

To remove this plugin and restore the client’s default appearance, run:

dsh plugin --profile web remove dsh-plugin-gemini-theme

Use Cases and Cautions

  • No DOM interference: This plugin does not provide new DOM structures, slot occupation, or services; it exists only as a style layer.
  • Style priority: The plugin styles are loaded before the stylesheets of all feature packages, so component rules include !important.
  • Implementation mechanism: Rules match against class names compiled from CSS modules ([hash]_[local]). Using class*="_local" risks affecting other components inadvertently, so developers should constrain the selectors using tag qualifiers, :has(), etc.
  • Feature limitations: The following features are outside the plugin’s scope and retain native client behavior:
    • The session header (title, mode chips, and view tabs) remains native.
    • The hero greeting is a native client row, not carousel content.
    • The sidebar’s open state, startup posture, or width is determined by the client.
    • The top progress bar during the conversation (the plugin cannot access this DOM signal).

This plugin is licensed under the MIT License.

Summary

With this plugin, developers can quickly adjust the visual style of the DeepSeek Harness Web client to resemble Google Gemini’s appearance without modifying code. For more details and source code, visit GitHub.