omdsh-dev/dsh-session-health ↗★ 7
@deepseek-ai/dsh-session-health
DSH 会话健康检查器:对多帧 zstd 会话日志进行帧级损坏、截断或空数据检测
AI 分析
专门用于扫描和诊断 DSH 历史会话日志(zstd 格式)是否损坏或异常中断。适合在系统异常崩溃后,需要恢复或排查历史对话数据完整性的用户。
安裝
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:omdsh-dev/dsh-session-health說明文件
閱讀完整 README ↗一次性任务(headless)profile —— dsh run 默认使用 headless
dsh plugin --profile headless add "C:/path/to/dsh-session-health"
包内 `dsh.bundle.patch` 会在安装后自动把插件加入 profile 的 layer stack(row id:`tool-session-health`)。插件缺失的 peer 依赖(`cordis`、`@deepseek-ai/dsh-tools`)由 profile 的 healed `profiles/node_modules` 回退安装提供。
> ⚠️ web 与 headless 是**不同 profile**:web 安装不会自动覆盖 headless;`dsh run` 默认使用 headless profile。Windows 路径使用正斜杠(`C:/...`)。
### 验证安装
```sh
dsh --profile web --dump-config | grep tool-session-health
运行验证
dsh run "使用 session_health 工具扫描会话目录健康状态"
手动安装与旧版本兼容
仅适用于不支持 Profile Bundle 的旧快照或插件开发调试环境(本地 junction/symlink、手动编辑 profile 层)。
测试
node /node_modules/vitest/vitest.mjs run tests
zstd-scan.spec.ts:官方压缩器生成帧的边界/多帧/not-zstd/截断/保留位 + 真实会话差分(大/中/小文件与官方scanZstdFrames逐帧一致;只读本机会话,不入库)files.spec.ts:两级目录枚举、stray/jsonl 识别、路径围栏(穿越/符号链接/越界拒绝)、会话 id 解析、只读保证report.spec.ts:错误/可疑计数分桶、suggestions 模板、空结果、deep 降级标注register.spec.ts:注册契约(AUDIT-CROSS-02 风格)
已知限制
deep依赖动态 import 官方解码器:在 profile 运行时若无法解析该包,明确降级为帧级扫描(报告标注deep: "unavailable")- 事件批次估算 = 帧数 - 1(每批至少 1 帧;不是精确事件数,报告已注明估算)
许可
MIT