ShatterDusk/dsh-porter
ShatterDusk★ 0JavaScriptLast synced: 2026-08-16
DSH session data ops: cross-root migrate (cwd convert), inspect, repair, format convert. Zero dsh dependency.
README excerpt
dsh-porter DSH(DeepSeek Harness)会话数据运维工具:跨根迁移(cwd 转化)、 workspace 归属同步 、体检、修复、格式转换、归档。 零 dsh 依赖 ,纯 Node CLI。 v0.2.0:migrate 自动同步目标端 workspace.json 归属(解决跨端迁移后"未分组"痛点),inspect 性能提升 15 倍(尾帧验证)。 背景:DSH 生态多封装共存(EAC / dsh desktop / 官方 CLI)、跨平台(WSL / Windows),会话数据( sessions/ /session.jsonl.zstd )在根之间搬运时需要 cwd 路径转化 + 格式合规重写 ——官方无此工具,本项目填补空白。 安装 需要 Node = 20.11。 命令 命令 用途 dsh-porter migrate --direction to-wsl to-win auto [--map 表] [--conflict 策略] [--copy-unchanged] [--dry-run] 批量迁移会话(cwd 转化 + 帧合规重写;无需转化默认 SKIP; v0.2.0 起自动同步目标端 workspace 归属 ——被迁移会话按新 cwd 加入对应 workspace 的 sessionIds,归档状态原样保留; --no-sync-workspace 关闭) dsh-porter inspect [--json] 体检:id/cwd/version/帧数/行数/健康状态(ok/corrupt/unknown-format) dsh-porter convert --format zstd plain [--out 目录] 格式互转(zstd ↔ 明文 .jsonl;同格式返回 noop) dsh-porter repair [--quarantine 目录] 修复:torn 截断修复(帧级最大可解前缀)/ 污染隔离 dsh-porter archive [--direction X] [--dry-run] 归档(两阶段删源协议:迁移校验 → 暂存 → --finalize 清空) 所有命令支持 --json (机器可读)与语义化退出码(0 成功 / 1 部分失败 / 2 用法 / 3 环境)。 典型用法 格式纪律(重要) DSH 会话是 多帧 zstd (第一帧必须恰一行 header,事件逐帧追加)。 禁止整体单帧重压 (会导致 dsh web 崩溃——本项目作者亲历)。详见 docs/format.md(生态内首份会话格式文档)。 测试 20 个测试覆盖全部命令(合成 fixtures,不依赖真实数据)。 文档 - SPEC.md — 规格与验收记录 - docs/format.md — DSH 会话格式文档…
View full README on GitHub →