Preface

DeepSeek Harness (DSH) adopts a plugin-based architecture, designed to extend its functionality through community plugins. When processing long conversations or history, it usually requires manual scrolling to quickly locate a specific user question, which is inefficient. The dsh-bookmark plugin solves this problem by adding navigation markers to the conversation sidebar, providing a Codex-like navigation experience.

Plugin Introduction

dsh-bookmark is a client-side plugin maintained by user leilei3167. It provides conversation navigation for the DSH Web UI, placing compact markers in the left-edge area of the conversation. Each marker corresponds to a user message or guiding message.

Installation and Enablement

Installing this plugin requires using DSH’s plugin management commands. After installation, the Web client must be restarted to load the new functionality.

The installation command is as follows:

dsh plugin --profile web add github:leilei3167/dsh-bookmark

After installation, stop and restart the dsh web process completely to ensure that the browser side receives the new client package:

dsh web

To update an installed plugin, you can use the following command:

dsh plugin --profile web update dsh-bookmark

After updating, you also need to restart dsh web.

Core Features

This plugin implements the following core capabilities:

  1. Message marking: A marker is generated for each user message or guiding message.
  2. Compact display and interaction: Markers are 12px in size, expand on hover, and present a Codex-style three-level cascade effect.
  3. Current position highlighting: Markers near the viewport anchor are displayed in black to indicate the current reading position.
  4. Hover preview: On hover, a card appears showing the user message title and a preview of the next assistant reply.
  5. Direct navigation: Clicking a marker or using keyboard shortcuts smoothly scrolls directly to the corresponding conversation turn.
  6. Session following: The plugin automatically follows the currently selected session, including saved conversation history.
  7. History loading: When viewing older sessions, the plugin loads history through the native DSH session API.
  8. Responsive layout: When the sidebar or conversation layout changes, the plugin automatically repositions itself.

Typical Usage

Using this plugin mainly involves three types of interactions:

  1. Hover preview: Hover the mouse over a marker. The marker and nearby markers expand, displaying previews of the user question and assistant reply.
  2. Click to jump: Click a marker, and the page smoothly scrolls to the corresponding user message.
  3. Keyboard navigation:
    • Use ArrowUp or ArrowDown to focus a marker.
    • Use Enter or Space to trigger the scroll or button action associated with the marker.

Notes and Use Cases

  • Runtime environment: This plugin runs entirely inside the DSH Web client and does not read API keys or send conversation content to external services.
  • Data source: Conversation data is only read from the active DSH session snapshot and rendered chat nodes, and is retained in browser memory.
  • Technical implementation: The plugin uses the [data-chat-anchor-key] and [data-chat-flow-kind] attributes to associate markers with messages. DOM selectors are used only as a compatibility fallback; the plugin does not use hashed host class names.
  • Ecosystem discovery: The repository uses deepseek-harness, dsh, and dsh-plugin as GitHub topics so that DSH plugin discovery tools can retrieve it.
  • License: The plugin uses the MIT License.

Conclusion

dsh-bookmark provides basic conversation navigation capabilities for the DSH Web UI and is suitable for scenarios that require quickly locating context within long conversations. It is recommended to review its source code and license before installation. For more details, visit the GitHub repository or the DSH community directory.