DeepSeek Harness (dsh) follows the “everything is a plugin” philosophy. The default Web GUI interaction experience can feel cluttered when handling long-form thinking, tool-call processes, and streaming output. dsh-chat-ux aims to resolve these issues by introducing a set of UI optimizations that make the chat area smoother to browse and interact with.

Core Features

This plugin includes the following key optimizations:

  • Automatic expansion and collapse for thinking lines and process groups: Thinking processes expand and automatically collapse after they finish; tool-call processes work the same way. If the user manually expands or collapses them, the plugin no longer intervenes automatically. Both share one toggle; when turned off, manual action is required.
  • Direct display of file change lines: write and edit operations in run_code show diff lines directly in the chat area. For direct invocations, the path, input size, and +n -m parameters are displayed during streaming, and the numbers increase in real time as the content grows.
  • Enhanced animations: The input field cursor slides, triggered by typing, arrow keys, or clicking. On submission, the input field transforms into a bubble and flies into the message list.
  • Work steps default to Standard: The web interface defaults dsh’s “Work Steps Display” to “Standard” (the original default was “Detailed”), unless the user has already changed it in settings.
  • Statistics visualization: The cache hit-rate capsule below the input field displays one decimal place, and its color changes with the value (red below 90%, dark green above 99%). Context usage changes from a ring to a 16px solid pie chart, with color also changing according to the usage level.
  • Frosted glass input field: A blue gradient and blur effect are applied to the input field, send button, and plus button.
  • Input area collapse in Trajectory view: When switching to the “Trajectory” tab, the input area collapses and the records table fills the full screen; when switching back to “Chat,” it restores.

Installation and Enabling

In the dsh Web GUI, open the Plugins page, click Add Plugin, and enter the package name:

@alm-allen/dsh-chat-ux

Or install it from the command line:

dsh plugin --profile web add @alm-allen/dsh-chat-ux

You can also install it directly from the GitHub repository (the repository already includes build artifacts, so no local build is required):

dsh plugin --profile web add github:Alm-Allen/dsh-chat-ux

After installation, restart dsh or refresh the page to enable it.

Configuration

After installing the plugin, you can adjust the following toggles in the configuration row on the Plugins page:

Configuration Item Default Description
Automatic expansion and collapse On When off, thinking lines and process groups no longer expand and collapse automatically.
Cursor animation Always You can choose Off, trigger on movement, or always trigger.
Chat bubble animation On When off, there is no flight animation when submitting a message.
Hit-rate wheel On When off, value changes are replaced directly, without a bounce animation.
Context usage pie On When off, dsh’s original ring-style statistics are restored.
Frosted glass input field On When off, the input area and buttons restore their original appearance.
Real-time changed line count On Controls the real-time ticking effect of trailing numbers on file change lines.

The default setting for “Work Steps Display” is located on the plugin page; if the user has already modified it in dsh’s Settings → General, the user setting takes precedence.

Compatibility and Notes

  • DeepSeek Harness version: Developed and validated on 0.2.1-alpha.2 (Web) and 0.2.1-alpha.1 (Desktop). 0.2.0-rc.2 and earlier versions are usable, but some features in earlier versions (such as hit rate and context pie chart) may have compatibility issues. 0.1.x may not be supported.
  • Node.js version: Requires ^22.19.0 || >=24.0.0.
  • Build method: The repository includes a prebuilt dist directory, so there is no need to run npm run build.

Conclusion

dsh-chat-ux improves the reading and interaction experience of the Web GUI through refined interaction adjustments. For more details or feedback, visit the plugin catalog or the GitHub repository.