dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
Permanently delete DSH sessions from the sidebar with a themed confirmation dialog and no page reload.
Permanently delete a DeepSeek Harness (dsh) session from the sidebar — with a proper confirmation dialog and no full-page reload.
DSH ships *archive*, not *delete*. This plugin fills that gap: it removes the session record, detaches it from every workspace, closes any live handle, and deletes the on-disk log directory.
Modal primitive and design tokens.Esc, backdrop click, and an explicit close button.sessions.refresh().api-session/removed, so other open tabs drop the row as well.Light · Dark ·
# from npm (once published)
dsh plugin add dsh-plugin-session-delete
# directly from GitHub
dsh plugin add github:wooxi/dsh-session-deleteRestart the DSH web service after installing. The package declares a dsh.bundle patch and ships client.js prebuilt, so no build step or build approval is required.
To uninstall:
dsh plugin remove dsh-plugin-session-delete>=0.2.1-rc.1 <0.3.0-0dsh.client.platform: "web")>=20Host (index.js) registers POST /api/dsh/session-delete. The route:
/^session-[A-Za-z0-9._-]+$/) and confirms the session exists.session/disposed, so the projection cache and search index follow.api-session/removed.Client (src/client.jsx) adds the menu item and renders the dialog through the shell.overlay slot. The menu closes before the dialog opens, so the dialog is owned by the overlay and survives menu unmounting. After a successful delete it calls ctx.sessions.refresh(), then either keeps the workspace (via uiWorkspace.openWorkspace) or clears the main view.
Workspace deletion wraps ctx.workspaces.delete. When the workspace still owns sessions, the wrapper opens a cascade confirmation before the official deletion runs. Confirming deletes each session through the same host route, refreshes the session list, and then calls the original workspaces.delete — so the folder stays in place while the sessions themselves are gone.
POST-only, same-origin, and uses the host's existing cookie authentication. No token is stored by the plugin.npm install
npm run buildnpm run build bundles src/client.jsx into the browser module envelope dsh expects (client.js). The host entry is plain ESM and is not bundled.
MIT