Introduction

DeepSeek Harness (DSH) runs on random ports. This causes browser localStorage to become invalid after a restart, making it impossible to persist user customizations for the UI. The dsh-simplify plugin solves this problem by writing removal records to the file system, ensuring that interface configurations remain effective after restarts.

Plugin Overview

dsh-simplify is a UI simplification plugin for DeepSeek Harness, maintained by developer Anna-la and released under the MIT License.

Its core value is: after entering cleanup mode, you can right-click to remove redundant elements on the page and persist those records using the file system. Users can view an interactive preview in “Settings → Simplify” and restore removed elements as they originally were.

Core Features

1. Cleanup Mode

  • Entry: There is a text-less “Simplify” icon button at the bottom left of the homepage, above the settings button. Click it to enter or exit cleanup mode.
  • Operation: After entering the mode, hovering the mouse over page elements displays a red outline. Right-click an element to remove it; left-click, dragging, and other operations are not affected.
  • Exit: Press Esc or click the “Simplify” icon again to exit the mode.

2. Record Persistence and Revival Prevention

  • Retained across restarts: Removal records are persisted across restarts and written to ~/.dsh-simplify/records. (or a directory specified by the environment variable DSH_SIMPLIFY_DATA_DIR).
  • Real-time revival prevention: The plugin uses MutationObserver to scan page changes in real time. Only elements that are exactly the same as at the time of removal are cleared again; adjacent elements that shift due to page reflow or positional drift are not accidentally deleted.
  • Fallback mechanism: Browser localStorage is only used as a local mirror and offline fallback; records remain valid after restarts.

3. Settings and Restoration

  • View records: A new “Simplify” page is added to the settings sidebar, listing all removed elements.
  • Interactive preview: Each record includes an inline preview area. Clicking the preview lets you experience the element’s original interactions (such as switching settings pages), but does not restore its position.
  • Refresh compatibility: Even after refreshing the page, removed elements remain interactive; the plugin automatically adopts rebuilt equivalent elements.
  • Restore operation: Supports “Restore” for a single record, or selecting multiple records and choosing “Batch Restore”.

Installation and Enablement

Use the DSH command-line tool to install:

dsh plugin --profile web add github:Anna-la/dsh-simplify

After installation, restart Harness (or refresh the Web page) to apply it.

Typical Usage

  1. Click the “Simplify” icon above the settings button at the bottom left to enter cleanup mode.
  2. Move the mouse and right-click unwanted elements to remove them.
  3. Press Esc or click the icon again to exit cleanup mode.
  4. Open “Settings → Simplify” and view the removed list in the sidebar. Click preview to test functionality, or select elements to batch restore.

Use Cases and Notes

  • Use cases: Users who need to customize the DSH interface and remove unnecessary navigation bars, ad slots, or distracting content.
  • Data path: Removal records are written by default to ~/.dsh-simplify/records..
  • Environment variable: The data directory can be changed via DSH_SIMPLIFY_DATA_DIR.
  • Permission requirements: The plugin runs with the permissions of the current DSH process; it is recommended to review the source code and license before installation.
  • Sidebar adaptation: When the sidebar is collapsed, the footer buttons are aligned into a single column with other plugins, without conflicts.