DSH Session Manager in Action: Built-in Archive Panel, Bulk Select & Workspace Grouping
A frame-verified record of dsh session management in DeepSeek Harness: how the built-in archive panel restores or permanently deletes chats, how a community plugin sweeps them in bulk, and how sessions group by workspace — every screenshot deep-links to its second in the source video.
Last updated: 2026-10-07

Conversations pile up fast in DeepSeek Harness: one workspace per project, a few stray chats, and sooner or later the question is which of the three clean-up surfaces to reach for. This guide walks all three on real screens — the desktop's built-in archive panel, a community bulk-select plugin, and the web UI's per-row actions — with every screenshot linked to the exact second of the recording it came from.
Want to pick a plugin before you practice? The curated directory of community session managers lives in DSH Session Manager: Clean Up, Archive & Export Chats
The short version
- ▸Deleting and archiving are built into DSH Desktop: the session-row menu for a quick delete, Settings → Archive management to restore or purge for good.
- ▸Bulk operations need a community plugin: dsh-session-multiselect adds checkboxes, Shift+click ranges and grouping by workspace.
- ▸Same name, two things — the plugins-panel row that says DSH Desktop built-in is not the dream12347/dsh-session-manager plugin (★68).
- ▸Rename sessions with a shared prefix and they cluster under their workspace — the zero-plugin cleanup move.
The walkthrough: nine verified steps
Know what manages your sessions
- 1
See where sessions live: the workspace sidebar
DSH Desktop files every conversation under a workspace with a relative timestamp on the right — 26 minutes, 47 minutes, 1 day, 2 days. In this frame the dsh workspace holds two active sessions, ungrouped strays sit near the bottom, and Temporary sessions plus Settings anchor the column. This tree is the map every later step operates on.

Workspaces are the filing system: every conversation sits in a group, with a relative timestamp on the right.Watch at 0:22 - 2
Set what new sessions inherit
General settings decide the starting point of every new session: an Agent preset (Minimal_win here), the permission mode (Full access), language and appearance. The fine print matters — running sessions keep the preset they started with, so changes never rewrite history. If Enter sending mid-task bothers you, the queue-instead-of-send behavior lives on this panel too.

Defaults apply to new sessions only — running ones keep the preset and permission they started with.Watch at 1:35 - 3
Read the plugins panel before installing a session manager
This frame settles the naming trap: the dsh-session-manager row describes itself as conversation delete-and-archive management built into DSH Desktop — the session-row delete button plus the archive management panel in settings. It sits among community entries like better-sidebar and plugin-market, which are the kind you actually install. About nineteen community plugins share this name; not one of them is this row.

Read the row description before installing anything: this one says DSH Desktop built-in.Watch at 1:45
Archive and bulk-clean for real
- 4
Restore or purge: the built-in archive panel
Settings → Archive management lists ten archived conversations with the same two buttons on every row. Restore sends a chat back to its original workspace and order; Delete removes the session log and attachments permanently — the header says exactly that, and adds that deleting a running session is refused. No recycle bin, no undo: this panel is the entire safety net.

Restore is safe to experiment with; Delete removes session logs and attachments with no undo.Watch at 2:35 - 5
Bulk-select with Shift+click ranges
The built-in panel works one conversation at a time. For sweeping dozens, the community dsh-session-multiselect plugin opens this dialog: Group by workspace is on, Show archived is off, and the counter reads 1 of 8 selected. The tooltip spells out the speed trick — Shift+click selects a range in display order — while red Delete and Archive wait at the bottom.

Shift+click takes a whole range in display order — the fastest way to sweep a workspace.Watch at 0:45 - 6
Check whole workspaces from their group headers
The same dialog, grouped view: sessions cluster under workspace headers with live counts like 0/2 and 0/1, a search box filters by title or path, and Select all / Invert sit beside it. The tip line confirms the three moves — click a row to toggle, Shift+click for a range, click a workspace header to check the whole group — and the status line reminds you that archiving only hides a chat inside this plugin.

Click a workspace header to check the whole group; the counts update as you tick.Watch at 1:00
Install the plugin, tidy the web UI
- 7
Install the multi-select plugin yourself
The author's own install card is the whole procedure: run one command in the plugin directory — quote it with add . when the path contains spaces — confirm dsh-session-multiselect lands in the profile bundles, then fully quit and reopen DSH Desktop. The multi-select entry appears on the left of the session toolbar after the restart. The card also declares the terms: MIT license, no host-side code, no build step.
$dsh plugin --profile web add .
One command in the plugin folder, then a full quit and reopen — the entry appears on the session toolbar.Watch at 1:48 - 8
Web UI: check a session before you touch it
Session hygiene is not desktop-only. In the web UI, hovering the Beijing weather query row raises a card with the session's name, its last-active time (37 minutes ago) and an idle status dot, next to the ellipsis button that opens row actions. The composer underneath shows the session's own scope: Workspace Write permission on DeepSeek-V4-Flash.

The web UI keeps the same hygiene: check when a session was last active before you touch it.Watch at 2:30 - 9
Group by renaming: the zero-plugin cleanup
The result frame: two conversations renamed to the same title now sit together at the top of the weather workspace — one just updated, one 38 minutes old — above the older queries. The main pane shows why the check was worth it: an answered forecast with a summary, a trend section and cited sources. Rename-and-cluster is the one cleanup move that needs no plugin at all.

Rename-and-cluster: the one cleanup move that needs no plugin at all.Watch at 3:20
Session manager questions, answered
The built-in vs community confusion, the archive round-trip, and how this page splits duties with the collection.
Is the dsh session manager a plugin or built into DSH Desktop?
Both exist, and they are different things. Delete-and-archive management is built into DSH Desktop — the plugins panel proves it, describing the dsh-session-manager row as DSH Desktop built-in: the session-row delete button plus the settings archive panel. Separately, a cluster of about nineteen community plugins uses the same name; the head by stars is dream12347/dsh-session-manager (★68, checked 2026-10-07), which adds recycle-bin deletes, statistics and drawer features. This page walks the built-in panel first, then a community plugin for bulk operations.
Where do archived conversations go, and how do I get one back?
Into the archive panel: Settings → Archive management in DSH Desktop. Every row offers Restore, which returns the conversation to its original workspace and order, and Delete, which removes the session log and attachments permanently. The panel's own header warns that a deletion is unrecoverable and that deleting a running session is refused — so Restore is safe to experiment with, Delete is not.
How do I delete many sessions at once?
The built-in panel handles one row at a time, so bulk cleanup needs a community plugin. The recording on this page uses dsh-session-multiselect: tick Group by workspace, take a whole range with Shift+click in display order, or click a workspace header to check the entire group, then hit Delete or Archive. Install it by running dsh plugin --profile web add . in the plugin folder, then fully restart DSH Desktop.
Can I delete a session while its task is still running?
No. The archive panel states it outright: deleting a running session is refused. Stop or finish the task first, then delete or archive the conversation — the bulk plugin's delete runs into the same rule.
How is this page different from the session-manager collection?
The collection (/collections/session-manager) is a curated directory: what the community session-manager plugins do and how they are starred, so you can pick one. This page is the hands-on record: real screens of the built-in archive panel and a bulk plugin operating on real sessions. Use the collection to choose a plugin; use this guide to see the moves before you run them.
Does the desktop archive panel exist in the web UI too?
No — archive management is a DSH Desktop settings page. The web UI exposes session actions per row instead: hover a session for its last-active card, use the ellipsis menu to delete it, or rename sessions so they cluster under a workspace. If you want the panel's safety net before a mass delete, back sessions up first — the export guide covers archiving per isolated lane.
Related guides
The neighboring axes: the plugin directory, export, replay, and the other half of session bloat.
DSH Session Manager: Clean Up, Archive & Export Chats
Session manager plugins for DeepSeek Harness — delete, archive, restore, move and export dsh sessions from a panel instead of the file system.
Read the guideBack up and migrate dsh sessions: the isolated-lane walkthrough
Clone your dsh install into an isolated lane with its own home and port, verify the copy with a self-check, upgrade it in place, and archive conversations per lane — 7 frame-verified screenshots.
Read the guideReplay & review your dsh sessions
Open the trajectory viewer, read structured receipts, locate failures by turn and branch a new chat from any step — illustrated walkthrough
Read the guideContext compaction & long tasks
How the 80% trigger, /compact and tool-result pruning keep long sessions from falling apart
Read the guideSources & credits
All frames come from the three screen recordings credited above, cropped to remove watermarks, title bars, taskbars and burned-in subtitles. The second video's branded packaging segments were excluded except its install card, kept as command evidence; the third video's tutorial-document half was never framed. View counts are yt-dlp API values, and repository facts were re-checked against the GitHub API on 2026-10-07.
