Plugin directory / Developer / dsh-session-cleanup
dsh-session-cleanup
Verified · install-tested on dsh ShiraGawaAnri
What it does
DSH 会话/归档清理插件:在 **设置** 面板里新增两个页面,用来查看并清理 DSH 的残留会话与归档会话。
Works — verified, early-stage project
DSH 会话/归档清理插件:在 **设置** 面板里新增两个页面,用来查看并清理 DSH 的残留会话与归档会话。 It installs cleanly and boots without issues in our testing. It's early-stage but functional.
“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.
README
dsh-session-cleanup
A DSH profile bundle that adds two Settings pages for inspecting and cleaning
up residual (persisted but not open) sessions and archived sessions.
Features
Settings → Sessions清理
- 刷新Sessions button
- 当前Sessions: live in-memory sessions (display only, no action buttons) with session ID / date / summary (title + first user message excerpt)
- 残留Sessions: persisted but not currently open sessions, each with a delete button
Settings → 归档清理
- 刷新归档 button
- 所有归档: all archived sessions with ID / summary / date
- Per-row delete button plus delete-all
- Live sessions show a "运行中" badge and cannot be deleted
Every deletion requires double confirmation (arm → confirm, with cancel).
What deletion does
- Refuses live (running) sessions
- Removes the persisted session log file/directory (paths come from
sessionPersistence.locate(); the client only ever submits session ids) - Detaches the session from its workspace account (durable write)
- Removes the id from the global archive set if present (durable write +
registry cache sync so later archive operations cannot resurrect it)
Deletion is not recoverable.
Installation
Prerequisites: a working DSH installation (dsh web) and pnpm on PATH
(dsh plugin forwards to pnpm).
# 1. Unzip, e.g. to D:\plugins\dsh-session-cleanup
# 2. Install into the web profile
dsh plugin --profile web add file:D:/plugins/dsh-session-cleanup
# or from the parent directory of the unzipped folder:
dsh plugin --profile web add ./dsh-session-cleanup
dsh plugin add runs pnpm in the profile directory and appends@dsh-external/dsh-session-cleanup to the profile's dsh.profile.bundles
layer — no manual cordis.yml edit.
# 3. Restart dsh web
# 4. Open Settings → Sessions清理 / 归档清理
Uninstall
dsh plugin --profile web remove @dsh-external/dsh-session-cleanup
# then restart dsh web
Notes
- Host-side deletion uses Node
fs.rm, restricted to paths returned bysessionPersistence.locate(). - The API route (
POST /_dsh/session-cleanup/api) rejects cross-site requests. - Deletion is an administrative action triggered explicitly from the Settings
page; it does not interact with DSH sandbox policies or model tool calls. - Requires host services
sessions,sessionPersistence,workspaceRegistry,storageDomain(and optionalwebServer), plus the clientslotsservice. - Zero third-party npm dependencies.
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install dsh-session-cleanup for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.
This plugin is GitHub source (not published to npm) — install it straight from the repo:
Web profile:
dsh plugin --profile web add github:ShiraGawaAnri/dsh-session-cleanup Headless (CLI) profile:
dsh plugin --profile headless add github:ShiraGawaAnri/dsh-session-cleanup Test report
Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.