During agent development in the DeepSeek Harness Web GUI, working with long conversation streams often makes it difficult to quickly locate a specific turn, view message send times, and manage conversation progress. The dsh-conversation-nav plugin addresses these issues by introducing a Codex desktop-style left-side navigation bar.

This is a pure client-side plugin maintained by Jaeger0624. It provides Codex-style conversation turn navigation for the DeepSeek Harness Web GUI. The plugin mounts a vertical “piano-key rail” on the left side of the conversation area, with each user message corresponding to a tick. It supports hovering to view details, clicking to jump, and persisting turn markers.

Core Features

  • Piano-key rail: A vertical tick column on the left side of the conversation area. Each user message (including steering) maps to one tick, and long conversations automatically compress spacing.
  • Hover steps and detail card: When hovering over a tick, a detail hover card is displayed, containing a message summary, model response preview, send time (in date format), turn duration, and output token count.
  • Click to jump: Clicking a tick smoothly scrolls to that turn, and the target row is briefly highlighted. For rows not yet mounted due to virtual scrolling, the plugin estimates proportionally and uses bounded retries as a fallback.
  • Current turn tracking: While scrolling, the tick for the turn currently being read is automatically dark highlighted.
  • Multi-color turn markers: Right-clicking a tick cycles through marker colors (amber/red/blue/green), and you can add a note in the hover card. Mark data is saved in the browser’s localStorage and is not lost after refreshing the page.
  • Theme adaptation: Supports light and dark theme switching, and is compatible with the prefers-reduced-motion reduced-motion preference.

Install and Enable

Use the official CLI to install this plugin:

dsh plugin --profile web add github:Jaeger0624/dsh-conversation-nav

Typical Usage

  1. View details: Hover over a tick on the left side of the conversation to view the message summary, model response preview, and time, duration, and token metrics.
  2. Jump to location: Click a tick, and the page smoothly scrolls to that turn, briefly highlighting the row.
  3. Mark and note: Right-click a tick to cycle through marker colors; click “☆ Mark” in the hover card or add a note.

Technical Implementation and Notes

  • Tech stack: A pure client-side plugin, zero dependencies, a hand-written single-file bundle, and no build steps.
  • Data source: Directly reads the official ctx.sessions session snapshot.
  • Mounting: Mounted in the official shell.overlay slot (a click-through layer; pointer-events are handled internally).
  • Persistence: Mark data is stored in localStorage under the key dcn:marks:<sessionId>.
  • Note: This plugin runs on the client side and does not involve backend permissions. It is recommended to review the source code and license (MIT) before installing.

This plugin, implemented purely in the frontend, lowers the barrier to managing long conversations. For more details, see the plugin catalog page or source repository.