Introduction

When managing sessions directly in the DeepSeek Harness (DSH) sidebar, users often encounter pain points such as overly long lists, disorganized archives, and stuck sessions that are difficult to handle. This plugin injects into the native interface and provides a set of batch operations and state-control capabilities for sessions. It does not build a separate interface but is integrated directly into the official DSH UI.

Plugin Information

  • Name: dsh-manage-sessions
  • Maintainer: hoyyang
  • Category: Client
  • License: MIT

Core Features

This plugin provides the following capabilities in the DSH sidebar:

  1. Session Management Popover: an entry to the right of the “Workspaces” title in the sidebar; when opened, it groups and manages sessions by workspace.
  2. Batch Archive and Restore: select multiple sessions in the popover to archive them to the archive bucket with one click or restore them from the archive bucket.
  3. Batch Permanent Delete: select multiple cold sessions for permanent deletion; the operation enforces a second confirmation and lists blockers beforehand.
  4. Session Force Stop (Two-Stage): for stuck sessions, the title bar provides a segmented force-stop group: ⟳ Auto-Revive (keeps queue), ⏻ Stop Offline (keeps log history).
  5. Workspace Row Copy Path: hover over a workspace row in the sidebar; a copy button appears to the left of ⋯ and +, allowing one-click copying of the absolute path.
  6. Double-Click Rename: double-click a session item in the sidebar to open the official rename dialog directly.
  7. Session Detail Panel: view an individual session’s context pressure, token usage, and execution statistics.

Installation

Zero configuration and ready to use out of the box. Run the following command to install:

dsh plugin add dsh-manage-sessions

Typical Usage

  1. Start of Day: open the Session Management Popover and scan the running sessions left over from last night by workspace.
  2. Clean Up the List: archive exploratory sessions after they finish, leaving only active work in the main list.
  3. Path Jump: hover over a workspace row, copy the absolute path, and paste it directly into a terminal to cd into it.
  4. Rename Management: double-click a session item to rename it, clearly mark its purpose, and avoid naming disasters like “New Session (3)”.
  5. Handle Stuck Sessions: front-end debugging crashed AgentLoop? Click ⟳ in the title bar to force-stop and auto-revive, allowing queued messages to continue being consumed.
  6. Offline Batch Processing: for batch jobs where you do not need results immediately, use ⏻ Stop Offline, then manually restore them later.
  7. Batch Cleanup: select cold sessions inside the archive bucket and perform permanent deletion.

Notes

  • Version Requirement: this plugin only supports DSH 0.1.5-rc.1; other versions have not been tested.
  • Permanent Delete Dependency: the permanent delete feature depends on a set of core compatibility patches. The plugin automatically prompts during installation. After upgrading or reinstalling DSH, the patches need to be re-applied.
  • Ungrouped Bucket Limitation: the “Ungrouped” bucket has no path and does not provide the copy feature. If it is still missing after refreshing the sidebar or restarting DSH, please file an issue.
  • Uninstall with Zero Residue: after uninstalling the plugin, all injected buttons, observers, and toasts disappear, and the official DOM is restored byte-for-byte.

Summary

This plugin enhances the native interface and resolves everyday pain points in DSH session management. It is suitable for developers who need to frequently manage multiple sessions, clean up history, or handle stuck session scenarios.