OpenViking
volcengine
Self-evolving Context Database for AI Agents. Unify Agent Memory, Knowledge RAG and Skills.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:fountunt/dsh-session-cleaner
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
Delete DeepSeek Harness sessions from a running web runtime — files, live
store, and workspace records — without restarting dsh web.
The official web API only offers workspace.archiveSession (hide); there is no
session.delete. This bundle closes that gap.
dsh plugin --profile web add dsh-session-cleaner # from npm
dsh plugin --profile web add github:fountunt/dsh-session-cleaner # from git
# or from a local checkout
dsh plugin --profile web add file:/path/to/dsh-session-cleaner
Then restart dsh web (a running instance does not hot-load new bundles).
The client half adds a 🗑 "Delete session" item at the bottom of the sidebar session row ⋮ menu — the item is skipped when the row title is ambiguous (duplicate titles).
Click, confirm, and the session is deleted and the sidebar refreshes. The item is disabled (greyed) while the session is running; sessions opened in the UI (idle agents) are stopped first, then deleted. The current running conversation can never be deleted.
The plugin registers one route on the web server:
POST /api-ext/session.delete
Content-Type: application/json
{ "sessionId": "session-1bb8d361-ea6b-4b92-bab2-c858c92e8822" }
Same-origin calls work from the browser console of the harness page:
await fetch("/api-ext/session.delete", {
method: "POST",
headers: { "content-type": "application/json" },
body: JSON.stringify({ sessionId: "session-1bb8d361-ea6b-4b92-bab2-c858c92e8822" }),
}).then(r => r.json());
Response envelope (mirrors the host's RPC style):
{ "ok": true, "value": { "detached": true, "workspaces": 1, "files": 1 } }
{ "ok": false, "error": { "code": "refused", "message": "..." } }
detached — the session was removed from the in-memory live store (this is
what makes it disappear from the sidebar immediately, without a restart).workspaces — how many workspace records the session was detached from.files — how many on-disk artifact directories were removed.session.list is served from the live SessionStore plus a disk scan. Cold
sessions get prepared into the live store while being listed, so after their
files are deleted they linger as "ghosts" until the server restarts. This
plugin removes the live entry (the store's own detach path), detaches the
session from workspace records, and deletes the on-disk artifact directory —
so the row disappears immediately and permanently.
pnpm install # peer: @deepseek-ai/cordis
node --test test/ # unit tests
MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: session-manager。