Introduction

DeepSeek Harness adopts a plugin-based architecture, aiming to improve development and usage efficiency through componentized extensions. As the number of sessions grows, managing long conversation histories, organizing tag systems, and handling archived data often becomes cumbersome and error-prone. DSH Session Manager aims to provide a standardized session governance solution for DeepSeek Harness Web, addressing issues such as disorganized session structure, missing history records, and accidental deletion risks.

Plugin Overview

This is a session governance plugin for DeepSeek Harness Web: it organizes Sessions by tags, manages the archival lifecycle, and keeps long conversation collapsing and turn navigation intact.

  • Maintainer: 6jeffr3y
  • License: MIT

Core Features

Session Lifecycle Management

It provides unified archiving, archive view, restoration, favorites, and title navigation. By managing these states centrally, it significantly reduces the time spent repeatedly searching for history in long session lists.

Multi-Tag Organization

It supports adding multiple tags to a Session and reusing existing tag taxonomies. Users can search by title, path, or tag to organize their knowledge base more flexibly.

Strict Tag Relationship Graph

It builds a strict “tag—session” relationship graph. Connections are established only for exactly identical tags; archived and untagged sessions do not appear in the graph, avoiding groundless relationship inference. The graph supports zooming, canvas dragging, view reset, and direct navigation by clicking a session node.

Safe Deletion

It implements strict deletion logic. Permanent deletion requires the session to already be archived, not running, and confirmed a second time. The deletion scope is explicit and only cleans up the Session JSONL, corresponding projection cache, Workspace membership, archive records, and tags/favorites saved by this plugin. The plugin does not delete the MemOS database, Agent memory and Skills, other Sessions, plugin/model configurations, or cross-session shared attachment objects.

Full Long-Conversation Navigation

By invoking DSH’s public Session.loadOlder() method, it sequentially loads earlier history pages of the current session. The completed history window allows native “Tool Call · Message” process blocks to collapse stably and enables the user input turn markers on the right side to accurately locate the corresponding input.

Multi-Model Natural Titles

For non-DeepSeek assistant models such as GLM, where a limited title token budget can cause the model to output only reasoning while omitting body text, the plugin provides a configuration option to improve title generation.

Installation and Enablement

Before using this plugin, ensure DeepSeek Harness is installed and the runtime environment is Node.js ^22.19.0 || >=24.

  1. Install the plugin:
    dsh plugin --profile web add github:6jeffr3y/dsh-session-manager#v0.1.0
  1. Restart the Web profile: The new plugin takes effect only after restarting the Web profile.
    dsh web
  1. Uninstall the plugin:
    dsh plugin --profile web remove dsh-plugin-session-manager
  1. Install a local checkout: For debugging or using local modifications, install the current directory directly.
    dsh plugin --profile web add link:$PWD

Configuration

The plugin’s default configuration is located in the cordis.patch.yml file:

Option Default Description
stateDir '' Plugin state directory. If left empty, $DSH_HOME/session-manager is used as the default path.
improveNonDeepSeekTitles true For title models that support this capability, disable reasoning output to obtain more natural title body text.
autoLoadFullHistory true Automatically load earlier history pages of the current session to complete navigation.

Data and Deletion Scope

Please note the following details regarding the scope of permanent session deletion:

  • Prerequisites: Permanent deletion only supports Sessions that are already archived, currently not running, and use standalone JSONL artifacts. Sessions still mounted by the Host but already stopped are placed into a pending deletion queue and are deleted before the next DSH startup restores the session. Sessions currently generating a reply are explicitly refused deletion.
  • Content to be deleted: Session JSONL, corresponding projection cache, Workspace membership, archive records, and tags/favorites saved by this plugin.
  • Content not deleted:
    • MemOS database or ~/.dsh/memos-plugin/
    • Agent memory and Skills
    • Other Sessions
    • Plugin and model configurations
    • Cross-session shared attachment objects

Notes

  • Version compatibility: The current version is developed and tested against DeepSeek Harness 0.1.2-alpha.1. Because DSH is in a pre-release stage, Workspace or Session internal interfaces may change. If the plugin encounters data modifications in unknown formats, it will fail explicitly rather than proceeding silently.
  • Supply chain security: When installed from GitHub, the plugin directly uses the lib/ directory committed in the Release and does not execute installation-time build scripts. If you need to pin the supply chain content, replace the version tag with a specific commit SHA.

Conclusion

DSH Session Manager provides a complete session governance workflow from tag organization to safe deletion, suitable for users who need to maintain a large number of historical conversations. For more technical details and source code, see the GitHub repository.