DSH Plugins Marketplace

DSH Plugins

Plugins

/

Development & Infrastructure

/

dsh-archive-sessions

j

dsh-archive-sessions

Manifest valid★ 2

Archived-session manager: an "Archived Sessions" settings page that lists archived sessions and lets you restore or permanently delete each one (two-step confirmation).

UI (client)hasBundlePatch

dsh-archive-sessions

Archived-session manager for DeepSeek Harness.

在 DSH 设置界面新增“归档会话”页:列出所有已归档会话,支持恢复与永久删除(删除前二次确认)。

Adds an “归档会话” (Archived Sessions) settings page that lists archived sessions and lets you restore or permanently delete each one (with an in-page confirmation step).

Features

  • Lists archived sessions that still have a durable log on disk (disk is the source of truth — no ghost rows from the in-memory session store).
  • Shows title, creation time, working directory and whether the session is currently open in memory.
  • Restore: moves a session out of the archive set; it reappears in the sidebar.
  • Permanently delete: removes the session's durable log file and detaches it from workspace accounting. Requires a two-step in-page confirmation.

Install

Requirements: a DeepSeek Harness desktop / web profile (the “web” profile on this machine) with the plugin market runtime.

# from a GitHub checkout (once the repository is listed in the marketplace
# registry) or directly from the repository:
dsh plugin --profile web add github:<owner>/dsh-archive-sessions

To build it from source and install locally, place the package into the active profile's dependency set (pnpm install file:/git target), then make sure the row below is present in the profile's bundle patch layer:

# cordis.patch.yml
- insert:
    - id: dsh-archive-sessions
      name: dsh-archive-sessions

After install/update, restart the app (or let the market hot-reload the client bundle) and open 设置 → 归档会话.

How it works

LayerFileRole
Hostsrc/index.jscordis plugin; registers same-origin HTTP routes /plugins/dsh-archive-sessions/{list,restore,delete} and implements all logic
Web clientlib/client.jsregisters the settings.section page “归档会话” and talks to the host routes
Bundle rowcordis.patch.ymlinserts the plugin row into the profile layer stack

Design notes / caveats

  • No platform “delete session” service exists. The session log backend is append-only and every list is derived from what is on disk. Permanent deletion therefore removes the session's own artifact (session.jsonl[.zstd] under the jsonl persistence backend) plus workspace accounting. The id stays in the archived set as a tombstone so the still resident in-memory session stays hidden from the sidebar during this run; after an app restart nothing references it.
  • In-memory resident sessions. Sessions that were opened during the current app run keep a live agent in memory. Deleting such a session is allowed only when the agent is idle; a running agent is asked to stop first (up to ~4s).
  • Full-access file removal. The sandboxed default shell cannot delete files inside the app's own data directory, so deletion runs through the shell with an explicit danger-full-access policy. Read the code before installing; use at your own risk.
  • Restore of a deleted session is rejected: its log is gone.
  • Verification status: developed and battle-tested as a session-scoped dynamic plugin (see docs/dynamic-plugin-source.js). The installable static package in this repo follows the published plugin layout (dsh.client metadata, bundle patch, window.__ModuleLoader__ client bundle, same-origin host routes). Load-time dependency wiring should be verified in the target profile before publishing updates.

Reference: run it as a dynamic plugin (no install needed)

If you want the same feature immediately in the current DSH session without installing anything, paste the code from docs/dynamic-plugin-source.md into a Cordis dynamic-plugin definition, or ask your agent to create it with the plugin id prefix archv (as was done during development).

Repository layout

src/index.js                  host half (HTTP routes + logic)
lib/client.js                 web client half (settings page)
cordis.patch.yml              profile bundle row
docs/registry-submission.md   how to request listing on awesome-dsh-plugin
docs/dynamic-plugin-source.md reference dynamic-plugin source (dev version)

License

MIT — see LICENSE.

Comments

Loading…

Similar plugins

dsh-archive-manager

by jasonrale

Archived-session manager for DSH Web UI: reopen an archived session and keep chatting, unarchive it back in place, or hard-delete a session — grouped panel with message search and native view sync.

Sessions & MessagesManifest valid

★ 6

↓ 419/wk

MIT

JavaScript

Aug 17, 2026

dsh plugin --profile web add dsh-archive-manager

by MS666666

Archive manager for DSH Web: list archived sessions in the Settings page and delete them for real, including their log, archive marker, and projection cache.

Tools & CapabilitiesDevelopment & InfrastructureManifest valid

★ 1

↓ 124/wk

MIT

JavaScript

Sep 28, 2026

dsh plugin --profile web add dsh-archive-manager-plus

by wuxiangru915

Session manager for the DSH Web UI: browse all and archived sessions, restore/unarchive, delete with two-step confirmation, and preview conversation content from the Settings panel.

Sessions & MessagesManifest valid

★ 0

MIT

JavaScript

Sep 7, 2026

dsh plugin --profile web add @dshwp/dsh-session-manager

by joyboy-yy

Keeps archived sessions out of the DSH conversation list and adds a panel to restore them or delete them permanently - session log, archive and pin records, and projection cache.

Sessions & MessagesManifest valid

★ 0

MIT

JavaScript

Oct 16, 2026

dsh plugin --profile web add dsh-archive-purge

by Zephyr-vibe

DSH Session Manager: manage conversations, archive/restore, delete safely, open record folders.

Sessions & MessagesManifest valid

★ 21

↓ 66/wk

MIT

JavaScript

Aug 21, 2026

dsh plugin --profile web add dsh-archived-sessions

by z953218350

Codex-style archived session manager for DSH Web UI — view, search, restore, and delete archived sessions from the settings page

Sessions & MessagesManifest valid

★ 12

MIT

JavaScript

Aug 31, 2026

dsh plugin --profile web add @mlgbnb/dsh-archive-manager