Introduction

DeepSeek Harness (DSH) supports archiving sessions, but the official UI provides no entry point to view or unarchive them. This plugin fills that gap, showing archived sessions in their original locations, making them filterable, and allowing restoration.

What It Is

This is a DSH Web plugin maintained by piaohua, License: MIT. It recreates the workspace browsing area on the browser side, adds filtering and archive actions, and solves the official issue of “no viewing entry for archived sessions.”

Core Features

  1. In-place Display and Filtering
    Archived sessions reappear at their original positions in the workspace list, with titles displayed in a darker color than non-archived sessions. The workspace view options menu gains a new “Filter Conditions” group containing “Archived” and “Non-archived” items; both can be checked simultaneously.

  2. Unarchiving Sessions
    In the row menu for an archived session, “Archive Session” becomes “Unarchive” (with a dedicated icon). Clicking it persistently restores the session.

  3. Workspace-level Archiving
    The workspace row menu gains new “Archive Workspace / Unarchive Workspace” actions. After archiving, the entire workspace group is hidden/dimmed; after unarchiving, the workspace restores to its original appearance, and the individual archival state of each session remains unchanged.

  4. Reading Archived Content
    The plugin patches and disables the rule that “archiving a session forces clearing the conversation selection,” so clicking an archived session opens and lets you read its conversation content normally.

Installation and Activation

npx @deepseek-ai/dsh plugin --profile web add github:piaohua/dsh-plugin-archive-manager

After installation, restart dsh web.

Typical Usage

  1. View Archived Sessions
    Check “Archived” in the workspace view options menu. If “Non-archived” is not checked, only archived sessions are displayed.

  2. Unarchive a Session
    Click “Unarchive” in the archived session’s row menu to restore the session.

  3. Read Content
    Directly click the archived session row to open and read its conversation content.

Technical Principles

The plugin adopts a Host/Browser separated architecture.

  • Host (process side, lib/index.js): Adds the missing official unarchiveSession method, maintains workspace-level archive state ($DSH_HOME/storages/dsh-plugin-archive-manager.json), and registers 4 HTTP routes for the browser side to call.

  • Browser (browser side, lib/client.js): Overrides the official sidebar.workspaces slot and recreates the workspace browsing area (including the filter group, darker titles, and unarchive action).

Data flow: Browser initiates request -> Host route -> unarchiveSession -> Broadcast update -> List re-renders.

Notes

  • The browsing area is a faithful reimplementation, not an official component. Future official changes to the workspace browsing area will not automatically flow into this plugin.

  • The filter state is persisted in the plugin’s own localStorage key.

  • The plugin targets DSH 0.1.0-rc.x (validated on 0.1.0-rc.6).