DSH Plugins Marketplace

DSH Plugins

Plugins

/

dsh-section-nav

j

dsh-section-nav

Manifest valid

DSH plugin: section navigation rail and local chapter bookmarks for DeepSeek Harness chat answers

UI (client)hasBundlePatch

dsh-section-nav

English | 简体中文

A DeepSeek Harness plugin that brings the Section Nav for ChatGPT experience to the DSH web client: a lightweight section rail beside the current assistant answer, with chapter bookmarks stored locally in the browser.

This is a DSH port of Section-Nav-for-ChatGPT by scandishoper (MIT). The ChatGPT extension adapter and manifest were replaced with a DSH adapter and a dsh bundle manifest. See NOTICE and LICENSE.

Features

  • Section rail for the current answer — headings rendered in the latest/currently read assistant answer appear in a compact rail beside the transcript.
  • Reading-position tracking — the active section follows the transcript reading line, with the same hysteresis behavior as the original extension.
  • One-click section navigation — clicking a heading scrolls to it and briefly highlights the target.
  • Local chapter bookmarks — bookmark any section, reopen the bookmark drawer, and jump back later.
  • Adaptive presentation — full, compact, mini, and hidden rail modes follow the available space next to the chat column.
  • Theme following — the rail reads the host page's computed text and surface colors, so it follows DSH light/dark themes.
  • Bilingual copy — Chinese and English strings are registered through the DSH locale service.
  • No server storage — bookmarks live in localStorage under dshSectionNav.bookmarks.v1; nothing is uploaded.

Compatibility

The plugin targets the DSH web client's chat DOM contract:

  • assistant rows: [data-chat-flow-kind="assistant-step"]
  • transcript container: [data-chat-flow]
  • stable answer keys: data-chat-anchor-key / data-chat-flow-key
  • turn indexes: data-chat-turn
  • headings: h1, h2, h3 inside the answer, excluding reasoning disclosures

It is a pure browser-side plugin. The host half only mounts the Loader seat; every feature lives in lib/client.js.

The implementation has been smoke-tested against the packaged Oh-DSH 0.1.12 runtime (@deepseek-ai/dsh 0.1.2-alpha.3) and follows the current DSH client contracts used by 0.1.x web/desktop releases.

Install

From the plugin manager

Open Plugins in the DSH sidebar and use Add plugin with:

github:jolaaa999/dsh-section-nav

From the CLI

dsh plugin --profile web add github:jolaaa999/dsh-section-nav

The package commits its built lib/ artifacts, so a git install does not need a build step or an install-script approval.

From a local checkout

dsh plugin --profile web add .

Run that command from this repository's root. The package manifest declares dsh.bundle.patch, so the profile adds dsh-section-nav as a layer automatically.

Usage

  1. Open a DSH chat with an assistant answer containing #, ##, or ### headings.
  2. The section rail appears next to the transcript when there is room.
  3. Click a rail item to scroll to that heading.
  4. Click the star beside a rail item to bookmark it.
  5. Click the star/count button in the rail header to open the bookmark drawer.
  6. Use Escape, a click outside, or the close button to close the drawer.

Development

pnpm install
pnpm run typecheck
pnpm run build

pnpm run build first emits the ESM host half to lib/index.js, then builds the browser half to lib/client.js and lib/client.js.map.

Repository layout

  • src/index.ts — host half; a Loader seat with no host-side behavior.
  • src/client/index.tsx — Cordis client entry, service injection, and lifecycle.
  • src/client/sectionNav.tsx — controller: rail mount, trackers, bookmarks, route/session reset, and cleanup.
  • src/core/adapter.ts — DSH chat DOM adapter; the only file with DSH selectors.
  • src/core/* — adapted section parser, answer tracker, section tracker, rail positioning, bookmark service/resolver/recovery, and mutation watching.
  • src/client/components/* — React rail and bookmark drawer components.
  • cordis.patch.yml — DSH bundle layer that registers the plugin row.
  • lib/ — committed build artifacts used by git and tarball installs.

Configuration

There are no DSH config fields. The plugin intentionally follows the original extension's behavior and persists only bookmarks:

localStorage['dshSectionNav.bookmarks.v1']

Known limitations

  • Only h1–h3 headings are shown, matching the original extension.
  • The rail hides itself when the available space beside the chat column is too narrow.
  • A bookmark whose answer is outside the currently loaded session window is marked unavailable until that history page loads.
  • Headings inside reasoning disclosures are ignored; sections belong to the assistant's answer text.
  • No cross-device bookmark sync and no server-side storage.

Plugin marketplace metadata

Recommended GitHub repository topics:

dsh
deepseek-harness
dsh-plugin
plugin
ui
sidebar
navigation
bookmarks

The repository is intended to be discoverable by DSH plugin catalogs that scan GitHub for dsh-plugin / deepseek-harness topics and package manifests.

License

MIT. This port retains the original project's copyright and license notice; see LICENSE and NOTICE.

Comments

Loading…

Similar plugins

dsh-question-rail

by LeonSone

DSH web plugin: 模仿 deepseek 网页版界面右侧的问题条 — 右缘一条竖向问题栏,列出当前会话每一轮的用户提问,点击平滑滚动定位。DeepSeek Harness right-edge question rail.

UI & ExperienceManifest valid

★ 0

MIT

JavaScript

Sep 4, 2026

dsh plugin --profile web add dsh-question-rail

by jjxjjjjiik-bot

1:1 port of DeepSeek's official web right-side chat navigation rail (ScrollNav) as a DeepSeek Harness (DSH) plugin

Tools & CapabilitiesUI & ExperienceManifest valid

★ 32

MIT

JavaScript

Aug 26, 2026

dsh plugin --profile web add dsh-chat-timeline

by songying2024

DeepSeek Harness (DSH) left-side bookmark dock plugin

Manifest valid

★ 0

MIT

JavaScript

Aug 22, 2026

dsh plugin --profile web add dsh-bookmarks-dock

by Tabbit-Browser

Tabbit Browser plugins for Deepseek Harness

Tools & CapabilitiesUI & ExperienceManifest valid

★ 101

MIT

TypeScript

Sep 10, 2026

dsh plugin --profile web add dsh-tabbit

by xccpddym

Bubble navigation for DSH (DeepSeek Harness): a draggable accelerator ball listing all of your questions (numbered + timed), plus a full conversation outline panel with category filters. Click to jump

Manifest valid

★ 0

MIT

JavaScript

Aug 17, 2026

dsh plugin --profile web add dsh-bubble-nav

by secyborg

DSH web plugin: a Codex-style command-history rail covering the WHOLE session

UI & ExperienceManifest valid

★ 0

MIT

JavaScript

Aug 26, 2026

dsh plugin --profile web add dsh-command-rail