Introduction

The current sidebar search in DeepSeek Harness can only match session titles and metadata. When the conversation history is long or a session is unnamed, finding a specific instruction or response can be difficult. The dsh-session-search plugin solves this problem by building a full-text index locally, allowing you to search directly within message content and jump to the exact location.

Plugin Overview

This is a DeepSeek Harness plugin under the “Memory” category. It uses the MiniSearch engine to build the index on the host side, provides an Option+K command palette search experience, supports regex fuzzy matching, and can locate the specific message containing the matched text.

Core Features

  • Full-text search: Indexes the message body of every session turn, including user prompts and assistant responses.
  • Local indexing: Uses MiniSearch for host-side indexing and does not upload data.
  • Quick navigation: Open search with Option+K; after selecting a result, directly opens the session and scrolls to the target message.
  • Result grouping: Search results are grouped by session, sorted in reverse chronological order, and highlight the matched keywords.
  • Privacy protection: No network requests, no telemetry data, and all data processing happens locally.
  • Fork deduplication: Automatically handles Fork sessions to avoid duplicate indexing.

Installation and Activation

Run the following command in a terminal or command line to install it:

dsh plugin --profile web add github:ivanearisty/dsh-session-search

After installation, restart Harness. The host builds the index at startup. The plugin shows a card named dsh-session-search in “Settings → Plugins” and registers its configuration in settings.yaml.

Usage

After installing and restarting, operate it with the following shortcuts:

  • ⌥K / Alt+K: Opens the search panel.
  • ↑ ↓ or Ctrl+N / Ctrl+P: Moves up and down through search results.
  • ↵ (Enter): Opens the corresponding session and scrolls to the matched message.
  • Esc: Closes the search panel.

Notes and Configuration

  • Compatibility: The current version targets DeepSeek Harness 0.1.x (development environment is 0.1.1-rc.2) and the web profile. The runtime requires Node.js ^22.19 || >=24.
  • Index content: Only plain-text content is currently indexed. Images, tool-call parameters, and reasoning blocks are not indexed.
  • Fixed shortcut: The shortcut that triggers search (⌥K) cannot be rebound in the current version.
  • Configuration options: The following parameters can be adjusted in settings.yaml:
    dsh-session-search:
      resultLimit: 60        # Maximum number of results returned per query
      indexAssistant: true   # Whether to index assistant responses
  • Permissions: The plugin reads local session logs through Harness’s session-store service and does not send any data externally.

Summary

dsh-session-search provides DeepSeek Harness users with a lightweight, fully offline full-text search solution for sessions. It addresses the content-search limitations of the native sidebar search and is suitable for scenarios that require quickly locating specific context in long conversation histories.

Related links:
* GitHub Repository
* Plugin Directory