Introduction

The DSH plugin system emphasizes “everything is a plugin.” The community directory is an independent site, with no official affiliation to DeepSeek or High-Flyer, and it is not an official app store. For readers using DSH Web sessions, a common pain point is that when streaming responses appear character by character, code blocks, tables, and formulas may repeatedly be in an incomplete state. The page also continuously shifts downward as new text appears, causing more visual jitters for longer responses.

dsh-plugin-smooth-stream is a client-side plugin designed to address this issue. It transforms the jittery, character-by-character streaming output into a paragraph-by-paragraph, fade-in reading experience. During streaming, it smoothly follows the scroll, and the thinking block displays a real-time one-line summary.

What is This

dsh-plugin-smooth-stream is a DSH client plugin maintained by SpookySandwich, licensed under MIT. The core problem it solves is making streaming responses more stable and easier to read without altering DSH’s rendering capabilities.

It is designed for use with --profile web.

Core Features

Paragraph-by-Paragraph Presentation

Responses no longer appear character by character but are presented in batches by paragraph. Each batch fades in as a whole, and breaks are scheduled to avoid incomplete code blocks and tables, preventing Markdown from being rendered halfway.

Smooth Scrolling

During streaming output, the page smoothly scrolls to follow the latest content. If the user scrolls up, the plugin hands control back to the user; when scrolled back to the bottom, it resumes automatic following.

Thinking Summary

While the model is thinking, the thinking block displays a real-time one-line summary. At the end of the turn, this summary collapses.

Rendering and Fallback

The main content continues to use the DSH renderer, preserving code highlighting, copy buttons, tables, and KaTeX formulas. If rendering errors occur, it automatically falls back to plain text display.

The plugin adheres to prefers-reduced-motion, disabling animations and smooth scrolling when the system’s reduced motion setting is enabled.

Animations and Settings

The plugin offers eight entrance animations: fade-in, rise, emerge, sweep, focus, illuminate, diffuse, and spread.

The Smooth Stream section in the settings panel allows adjustments with persistent storage, supports real-time preview, and provides one-click reset to defaults.

Installation and Enabling

Install using the following command:

dsh plugin --profile web add dsh-plugin-smooth-stream

After installation, it takes effect in any session. The settings entry is:

Settings Panel → Smooth Stream

Typical Usage

First, ensure that Enable Smooth Stream in the settings panel is turned on. Then adjust as needed:

Enable Smooth Stream
Entrance Animation
Animation Duration
Batch Size
Smooth Scrolling Follow

The configuration items function as follows:

  • Enable Smooth Stream: Controls whether paragraph-by-paragraph streaming presentation is enabled.
  • Entrance Animation: Choose from fade-in, rise, emerge, sweep, focus, illuminate, diffuse, and spread.
  • Animation Duration: Ranges from 120–1200 ms.
  • Batch Size: Default is 500 characters, controlling the character count per batch.
  • Smooth Scrolling Follow: Controls smooth scrolling during streaming output.

Settings support real-time preview and persistent storage. The settings panel also provides one-click reset to defaults.

Use Cases and Notes

This plugin is suitable for viewing long responses in DSH Web sessions, especially those containing code, tables, or formulas. It can be enabled to reduce visual jitters caused by character-by-character output.

Before installation, note the following:

  • The plugin has been verified on dsh 0.1.0-rc.6.
  • It takes over the assistant-step slot of conversation.chat.node, making it mutually exclusive with other plugins that also take over this rendering.
  • The plugin runs with the current dsh process permissions; you should review the source code and license before installation.
  • When the system’s “reduce motion” setting or prefers-reduced-motion is enabled, animations and smooth scrolling are automatically disabled.
  • If rendering errors occur, it falls back to plain text without affecting the rest of the conversation.

Links

  • Directory page: https://www.skillhub.cn/plugins/SpookySandwich/dsh-plugin-smooth-stream
  • GitHub: https://github.com/SpookySandwich/dsh-plugin-smooth-stream