Preface

When running long conversations in DeepSeek Harness (DSH), assistant replies often contain multi-level Markdown headings. Once the body text scrolls, it’s hard to recall “what was discussed in that section.” Relying on the browser’s built-in table of contents, manually browsing the DOM, or copying the entire text afterward for organization all fail to keep pace with streaming generation.

dsh-outline is a client-side plugin for the DSH Web GUI: it attaches a real-time outline tree to the right side of the conversation page,串联 user questions and reply H1–H6 headings, updates synchronously during streaming output, and allows clicking nodes to jump to the corresponding text section. The interaction design is ported from maintainer urzeye’s Ophel browser extension, packaged and published according to DSH’s official plugin conventions.

What It Is

dsh-outline (GitHub: urzeye/dsh-outline) is maintained by urzeye, currently at npm version 0.1.6, under the MIT license. It is classified as a client-side plugin and visible in the SkillHub directory page: urzeye/dsh-outline.

The core problem it solves is the lack of a structured navigation system that synchronizes with content and allows clickable jumps within long conversations, as opposed to a static table of contents generated afterward.

Core Features

Real-Time Outline

The outline is built from the conversation event stream: user questions serve as top-level nodes, with Markdown headings from assistant replies nested underneath, without DOM scraping. It updates in real-time with tokens during streaming generation; refreshes, reconnections, and historical pagination are automatically rebuilt by the DSH runtime.

Clicking a node scrolls the view to the corresponding text position and highlights the current reading location.

Hierarchy and Views

  • A hierarchy slider controls expansion depth (0–6 levels), nodes can be individually expanded/collapsed, with support for expanding/collapsing all nodes at once
  • Keyword search (with match count), favorite conversations by session, and a “Show only favorites” mode
  • One-click copy of the outline, return to top/bottom

Panel Form

The panel is presented as a shell.overlay floating layer: a trigger bar on the right edge shows a preview on hover, can be fixed for permanent display, dragged to move, and does not compress the chat area.

Theme and Internationalization

Follows DSH theme variables and dark/light mode; interface text switches between Chinese and English based on DSH language settings.

Environment Requirements

  • DeepSeek Harness Web GUI installed
  • Node.js ≥ 22.13 (only required for local development and building)

Installation and Enabling

The installation command is forwarded via dsh plugin to pnpm within the profile directory. A restart of dsh web is required after installation — the plugin’s host part loads when DSH starts.

dsh plugin --profile web add dsh-outline@latest

If already installed, include @latest; using the bare package name will keep the old version from the lockfile and won’t auto-upgrade.

Install from Tarball

You can run pnpm pack yourself or download from GitHub Releases:

dsh plugin --profile web add ./dsh-outline-0.1.6.tgz

Local Path Installation (Development/Debugging)

cd /path/to/dsh-outline
pnpm install
pnpm build
dsh plugin --profile web remove dsh-outline   # Uninstall if previously installed from npm
dsh plugin --profile web add /path/to/dsh-outline

After the first installation (and any host component change), a restart of dsh web is required. Open any conversation page, hover over the outline trigger bar on the right edge, and confirm the panel appears.

Uninstallation

dsh plugin --profile web remove dsh-outline

Typical Usage

  1. Start dsh web and open any conversation page.
  2. Hover over the outline trigger bar on the right edge of the conversation page to preview the outline panel.
  3. Click the trigger bar or the pin button in the upper-right corner of the panel to fix it permanently; drag the title bar to move the panel (dragging automatically fixes it).
  4. Inside the panel: click nodes to jump to text; use the top slider to adjust expansion depth; nodes offer expand/collapse and favorite buttons inline; keyword search is supported.

Use Cases and Notes

Who It’s For

  • Developers who frequently run long conversations or technical documentation-style replies in DSH Web GUI
  • Users who need to review chapter structures and quickly jump around during streaming generation

Usage Notes

  • The command must include --profile web, otherwise it won’t be added to the Web GUI profile.
  • If the panel doesn’t appear: check the dsh web terminal for plugin loading errors; confirm the installed version is as expected (local path vs. old npm version).
  • README note: If using DeepSeek Harness via a browser, the maintainer recommends trying Ophel first, which offers more comprehensive features and a smoother experience; dsh-outline is for integration within the DSH plugin ecosystem.
  • The plugin runs with the permissions of the current dsh process; before installation, review the source code and MIT license to confirm the source is urzeye/dsh-outline.

SkillHub is an independent community directory with no official affiliation with DeepSeek /幻方.

Conclusion

dsh-outline consolidates “user questions + Markdown headings” into a real-time outline, attached to the right side of the DSH conversation page, updating synchronously and enabling click-to-jump navigation, suitable for structural navigation in long conversation scenarios.