dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
会话清道夫:在 DSH 设置中扫描、查看并安全清理本机 AI 终端会话历史(Claude Code、Codex CLI、WorkBuddy、DSH),隔离优先、带 SHA-256 清单与一键整批恢复,彻底删除需输入确认短语。
Scan, view, and safely clean local AI terminal session histories — Claude Code, Codex CLI, WorkBuddy, and DSH itself — from a dedicated card in the DSH Web UI (Settings → 会话清道夫 / Session Sweeper).
| Session list | Message preview |
|---|---|
| Recycle bin | Settings |
DELETE; it leaves an audit tombstone only.| Guard | Behavior |
|---|---|
| Quarantine-first | Default clean moves artifacts to ~/.hist-sweeper/recycle/<batchId>/ — always restorable |
| Active guard | Sessions modified within guardHours (default 24) are skipped unless you explicitly include them |
| Current session | The session served by the running DSH process is never cleanable |
| Lock detection | Files that cannot be opened are skipped without aborting the batch |
| Audit log | Every operation is appended to ~/.hist-sweeper/recycle/log.jsonl and shown in the Recycle tab |
| Scope | Touches nothing besides session artifacts — never configs, credentials, memory, or todos |
From a packed tarball (no build scripts, lib/ is prebuilt and committed):
dsh plugin --profile web add ./dsh-session-sweeper-1.0.0.tgz
From git (lib/ is committed, so no prepare build permission is needed):
dsh plugin --profile web add github:HrxSpace/dsh-session-sweeper
Restart dsh web afterwards and open Settings → Session Sweeper.
Both options can be overridden on the plugin row in your profile's
cordis.patch.yml:
| Option | Default | Meaning |
|---|---|---|
guardHours | 24 | Active-guard window in hours |
recycleDir | ~/.hist-sweeper/recycle | Quarantine destination |
Test hooks (not for daily use): DSH_SWEEPER_HOME / DSH_SWEEPER_RECYCLE
redirect the scanned home and recycle root — used by the test suite to run
against synthetic trees.
dsh plugin --profile web remove dsh-session-sweeper
The recycle directory and audit log survive uninstalling (they are your
recovery path); delete ~/.hist-sweeper manually once you no longer need
them.
~/.claude/projects/**, ~/.codex/sessions/** (incl.
archived_sessions), ~/.workbuddy/projects/**, ~/.dsh/sessions/**/sweeper/api/*) on the DSH web
server; cross-origin requests are rejected# build (any tsdown ≥0.22 works; lib/ output is committed)
npx tsdown
# tests (node:test + tsx, zero package installs)
node --import tsx/esm --test tests/sweeper.test.ts
# dev instance with the local build overlaid
pnpm dsh --profile web --patch ./cordis.dev.yml --port 3180 --no-open
MIT