Introduction

The philosophy of DeepSeek Harness (hereinafter referred to as DSH) is “everything is a plugin.” This design provides sufficient flexibility, but it also leaves a barrier on the interface: within a single task, the model continuously calls a chain of tools, causing a long list of tool cards to scroll through the native interface, where terminology, parameters, and statuses are mixed together. Beginners who want to get started quickly find it hard to read what “actually happened in this turn” from the mess; experienced users, on the other hand, need complete information and don’t want the interface simplified. The native interface only offers one way to read it, so two groups of people have to compromise on the same presentation.

dsh-prism addresses this: it adds two modes to the DSH Web UI, “Simplified” for those who want convenience, and “Native” to give veterans the original experience, with one-click switching and no trace left when uninstalled. Below are the features, installation, and usage instructions.

What is it

dsh-prism is a DSH client-side plugin maintained by KhalilYamber, licensed under MIT, with the current version being 1.2.0 (2026-08-18). In one sentence: a DSH interface dual-mode plugin that simplifies/natively switches tool cards with one click, lowering the barrier to entry for DeepSeek Harness. It defaults to Native mode, where the product interface is presented as is; when switched to Simplified mode, the plugin takes over the interface. The switch takes effect immediately without refreshing the page.

Core Features

Bottom-Left Floating Entry

After starting the Web UI, a floating button appears in the bottom-left corner displaying the current mode. Clicking the menu allows switching between “Simplified” and “Native,” and includes a “Hide Complex Tools” toggle switch. The switch takes effect immediately without refreshing.

Simplified Mode: Tool Calls Formed into Collapsible Groups

The core of the Simplified mode is the collapsible group. Grouping rules: All tool calls within a single user turn and before the model’s formal response are counted as one group. When collapsed, it only displays a single line of statistics: “N tools · M thoughts”, with a group status at the end: ✓ Completed, ● Running, ✕ Error.

Documented Panel and Delivery Documents

Clicking the statistics row expands a documented panel divided into three sections: 1. Title area: displays “N tools called in this turn · M thoughts”; 2. List area: one line per tool, showing category icon + plain language action/parameter summary + status icon; 3. Description area: supplementary explanations. Clicking a specific line further expands the “Delivery Document” details for that tool: results are first desensitized, then rendered according to a Markdown subset, supporting tables, code blocks, headings, lists, bold text, inline code, and commit hash highlighting; any parsing failure falls back to plain text.

Hide Complex Tools

Within the Simplified mode panel, 21 advanced tools (Goal/Plan, Sub-agent orchestration, Background tasks, Plugin system) are collapsed into a single line of plain language summary by default, which can be clicked to view details. This behavior is controlled by the “Hide Complex Tools” switch in the menu; it is enabled by default and can be turned off at any time.

Plain Language Text and Bilingual Interface

The plain language text comes from a rule table of 33 tools; for example, pwsh is displayed as “Executing a command on the computer.” Starting from v1.0.0, 19 tools without native cards are handled by plugin cards; starting from v1.1.0, all tools within the collapsible group—including those with official product-level cards like read, write, and web_search—are uniformly rendered according to plain language rules, while in Native mode they remain the original product cards. The interface text follows DSH’s interface language (Simplified Chinese / English), and switching the language in settings takes effect immediately without refreshing. This is a feature added in v1.2.0.

Data Masking

The detail display in Simplified mode implements three layers of data masking: - Path-type parameters only show the file name (basename for file_path); - Sensitive parameter names like token, secret, password, api_key, and authorization are never displayed; - Common key formats in result text (e.g., sk-xxx, Bearer xxx, key=xxx) are replaced with placeholders. The detail panel only shows the plain language summary and the masked results, without exposing the original parameters.

Native Mode and Design Principles

Under Native mode, the plugin does not register any tool cards and renders the product’s original appearance as is. The switch takes effect immediately. Several design principles run through the implementation:

  • Pure Presentation Layer: Only changes the interface presentation; the input/output received by the model remains exactly the same as the native version, not affecting the agent’s work;
  • In-Memory Switching: The mode state exists in memory; refreshing the page returns it to Native mode; after uninstalling the plugin, the interface returns to the factory state, with no configuration pollution or residue;
  • Follow Theme: Uses the official --dsw-alias-* design variables for all elements, adapting to light and dark themes.

Implementation Note: The Simplified mode groups tool calls by shadowing the product’s built-in ToolCallTree renderer in the conversation.chat.node slot with priority: -1, while Native mode does not register anything at all. All client logic is centralized in lib/client.js, so changes take effect immediately upon page refresh.

Installation

The only prerequisite is having DeepSeek Harness installed (Node.js 22.19+ or 24+). The plugin itself declares two peerDependencies: react ^18.2.0 and @deepseek-ai/cordis ^4.0.1.

The plugin is not published to npm and is distributed via repository cloning or Release artifacts. First, clone the repository:

git clone https://github.com/KhalilYamber/dsh-prism.git

Then install it via local path, replacing <local_repo_directory> with the path just cloned:

npx -y @deepseek-ai/dsh plugin --profile web add ./dsh-prism

This step installs the plugin into DSH with the web profile. If you don’t want to clone the repository, you can also download the packaged artifacts directly from GitHub Releases. After installation, start the Web UI, and a floating entry will appear in the bottom-left corner.

Typical Usage

After the above steps, the plugin is ready for use. The daily operations are as follows:

  1. Start the Web UI and click the floating button in the bottom-left corner (which shows the current mode);
  2. Select “Simplified”: Tool calls in a single task are grouped into collapsible groups; collapsed view shows a single line of statistics; click to expand the panel to view the plain language summary and Delivery Document details for each tool;
  3. Toggle “Hide Complex Tools” in the menu as needed (only works in Simplified mode);
  4. Select “Native” when you want to see complete information and restore the full native interface;
  5. Refresh the page to return to Native mode.

Use Cases and Notes

Suitable for:

  • Users just starting with DSH: Simplified mode condenses tool calls in a task into a single line of statistics, which can be expanded row by row if details are needed;
  • Scenarios requiring demos or process review: The documented panel and Delivery Documents are easier to read than raw tool cards;
  • Experienced users are unaffected: It defaults to Native mode, and switching to it involves no changes.

Notes before use:

  1. The plugin runs with the permissions of the current DSH process; check the source code and license before installing any third-party plugin. dsh-prism is MIT licensed, and the implementation is concentrated in a single file, lib/client.js, making it easy to read;
  2. The mode is not persisted: Returning to Native mode on refresh is a deliberate design; if you want to consistently use Simplified mode, you need to switch back each time you open the page;
  3. Simplified mode only changes the interface you see; the input/output received by the model is exactly the same as the native version and will not affect the task result.

Conclusion

dsh-prism does not change how DSH works, only how humans read the interface: beginners see plain language collapsible groups, veterans get the full native presentation, with one-click switching between modes and no residue after uninstall. If you are being discouraged by the learning curve of DSH, or want to provide a gentler entry point for newcomers on your team, you can start from the two links below:

  • GitHub Repository: https://github.com/KhalilYamber/dsh-prism
  • Community Plugin Directory Listing: https://www.skillhub.cn/plugins/KhalilYamber/dsh-prism (Independent community site, not affiliated with DeepSeek)