dsh-session-tools
DiscoveredDSH Session & Data Safety Toolkit: Session Health Check & Safe Truncation / Session Real Validator / Workspace Data Validation. Verify before touching chat records or configuration data (DSH session & data safety toolkit: session doctor, real validator, storage schema check)
DSH 会话与数据急救包
原名:
session-doctor+session-oracle+validate-storage一句话:动 DSH 的聊天记录或配置数据之前,先用这三个工具验一遍 —— 因为弄坏了找不回来。
为什么需要它
DSH 的聊天记录不是普通文本文件,是多帧压缩的特殊格式。 不懂这个格式就动手改,结果是会话直接从侧栏消失。
这三个工具,每一个都是被一次事故逼出来的。
三个工具
一、session-doctor —— 会话体检 + 安全截断
它干什么
- 给会话文件做四项体检
- 需要截断时,只按"帧边界"切,绝不重写内容
为什么必须"按帧"
我当时的做法:解压 → 裁掉尾巴 → 重新压缩成一个整块
结果:会话从侧栏消失(DSH 认不出这个结构了)
正确做法:只在【帧和帧之间】切,其他一个字节都不动
★ 关键安全设计:它从不覆盖原文件,截断结果写到新文件。
二、session-oracle —— 会话"真校验器"
它干什么:用 DSH 自己的代码去读会话文件,报的错跟客户端一字不差。
为什么需要
客户端报「历史加载失败:… is corrupt」—— 看不出具体哪里坏
自己写个校验器 —— 我的校验规则可能跟 DSH 的不一样,验过了也没用
⇒ 只有走 DSH 自己的读路径,才能问出真话
★ 用法:改会话文件之前先跑它。没通过就别上线。
三、validate-storage —— 工作区数据校验
它干什么:用 DSH 自己的 schema 校验 ~/.dsh/storages/ 下的数据。
为什么需要
我按"字段名"重建了工作区注册表,把 createdAt 写成了数字
⇒ 但 DSH 要的是 ISO-8601 字符串 ⇒ 整个工作区列表打不开
教训:★「备份了 + JSON 合法」≠ 合规
判据必须是 DSH 自己的 schema,不是我造的
★ 一个容易踩的坑:同名字段在不同地方规则相反
- 工作区里的
createdAt要是字符串 - 会话缓存里的
createdAt要是数字
⇒ 所以它按域加载规则,不搞"一套规则通用"。
适合谁
- 遇到会话损坏 / 聊天记录打不开的人
- 想手动改
~/.dsh/storages/的人 - 做 DSH 数据相关工具的人
⚠️ 使用前提
这三个工具都依赖 DSH 客户端内部的代码结构。 ⇒ DSH 版本升级后可能失效,到时需要更新。
当前状态:三个都能用,正在把它们依赖的"从 app.asar 抽代码"逻辑抽成共享模块。
怎么装
# 方式一:不装,直接用
npx dsh-session-tools doctor <会话文件>
# 方式二:装到全局
npm i -g dsh-session-tools
dsh-session-tools doctor <会话文件>
三个子命令
dsh-session-tools doctor <会话文件> # 会话体检(要截断会写新文件,从不覆盖原文件)
dsh-session-tools oracle <会话文件> # 用 DSH 自己的代码验(报错与客户端一字不差)
dsh-session-tools validate <域> # 用 DSH 自己的 schema 校验 storages
⚠️ 重要前提
这三个工具都依赖 DSH 客户端内部的代码结构(会从 app.asar 里读框架自己的包)。
⇒ DSH 版本升级后可能失效,到时需要更新。
安全设计
doctor从不覆盖原文件 —— 截断结果写新文件- 三个都不写任何配置文件
validate按域加载规则 —— 同名字段在不同地方规则相反,不能一套规则通用
许可
MIT
维护策略
这是一个个人项目,按现状发布(as-is)。
- Issue / PR 欢迎,但不保证及时回复 —— 我有正职,这是业余时间做的
- PR 我会看 diff 再决定要不要合并 —— 不会盲目合并(安全起见)
- 不接受"催更" —— 有需要欢迎自己 fork 改
- 如果你发现了好用的改进,欢迎提 PR;如果我长期没回,你完全可以 fork 走
这个项目不承诺任何 SLA。 用之前请自己评估。
Comments
Loading…
Similar plugins
by omdsh-dev
DSH 会话健康检查插件:多帧 zstd 会话文件的帧级扫描诊断(torn/损坏/空会话检测),零依赖只读,注册 session_health 工具
★ 9
MIT
TypeScript
Aug 21, 2026
dsh plugin --profile web add @deepseek-ai/dsh-session-healthby lanlandeli
DeepSeek Harness 会话管理插件|归档与恢复、批量操作、工作区分组、子代理关系、活动详情、记录目录与安全文件清理
★ 2
↓ 47/wk
NOASSERTION
TypeScript
Aug 18, 2026
dsh plugin --profile web add dsh-conversation-managerby kinyokun
DSH 会话日志导入插件:解析 /export 的 zip/jsonl,结构真实性验证 + SHA-256 指纹校验,同步模型/预设/权限等状态,导入/删除实时推送免刷新
★ 6
↓ 143/wk
MIT
JavaScript
Sep 11, 2026
dsh plugin --profile web add dsh-session-importby jh1016248
DSH(DeepSeek Harness)插件:会话标题栏一键导出当前会话 —— 「保存 MD」下载纯净 Markdown,「保存 HTML」下载带左侧目录、表格与代码块渲染的网页。自动过滤模型思考过程与工具调用记录,只保留用户与助手的正文,适合归档、分享与撰写报告。安装:dsh plugin --profile web add dsh-save-session
★ 0
↓ 690/wk
MIT
JavaScript
Sep 11, 2026
dsh plugin --profile web add dsh-save-sessionby neufagents
Runtime health check for DeepSeek Harness: session-library scan + crash-tail inspection. Read-only.
★ 0
MIT
TypeScript
Sep 18, 2026
dsh plugin --profile web add dsh-healthcheckby Han-Yao94
会话身份、会话自动上线、会话日志按钮、会话间通信 + 全局提示词/重启服务这类工作台工具
★ 4
↓ 1k/wk
MIT
JavaScript
Oct 5, 2026
dsh plugin --profile web add dsh-session-toolkit