全量与增量备份会话历史,校验完整性并支持按需恢复
29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/1 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add imtokenxinluo/dsh-session-backup该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · chat
装得上吗
实装验证未通过(unknown),装前请到仓库确认最近更新与 issue
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 35 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/10/1) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 39 处,展示前 35 条)
- 读取本地文件src/backup.js:29
try { entries = await readdir(dir, { withFileTypes: true }) } catch { return } - 读取本地文件src/backup.js:55
const raw = await readFile(path.join(target, MANIFEST), 'utf8') - 写入本地文件src/backup.js:71
await mkdir(target, { recursive: true }) - 读取本地文件src/backup.js:79
try { st = await stat(file) } catch { continue } - 读取本地文件src/backup.js:87
try { buf = await readFile(file) } catch { continue } - 写入本地文件src/backup.js:90
await mkdir(path.dirname(dest), { recursive: true }) - 写入本地文件src/backup.js:91
await copyFile(file, dest) - 写入本地文件src/backup.js:112
await writeFile(path.join(target, MANIFEST), JSON.stringify(manifest, null, 2), 'utf8') - 读取本地文件src/backup.js:131
const buf = await readFile(src) - 写入本地文件src/backup.js:134
await mkdir(path.dirname(out), { recursive: true }) - 写入本地文件src/backup.js:135
await writeFile(out, buf) - 读取本地文件src/backup.js:147
try { await stat(p); return true } catch { return false } - 读取本地文件src/archive.js:32
try { await stat(p); return true } catch { return false } - 读取本地文件src/archive.js:40
try { entries = await readdir(current, { withFileTypes: true }) } catch { return } - 读取本地文件src/archive.js:54
const parsed = JSON.parse(await readFile(path.join(archiveDir, ARCHIVE_MANIFEST), 'utf8')) - 读取本地文件src/archive.js:63
const text = decodeFrames(await readFile(file)) - 读取本地文件src/archive.js:113
try { st = await stat(file) } catch { continue } - 写入本地文件src/archive.js:135
await mkdir(archiveDir, { recursive: true }) - 写入本地文件src/archive.js:149
await mkdir(destDir, { recursive: true }) - 读取本地文件src/archive.js:154
const buf = await readFile(src) - 写入本地文件src/archive.js:155
await mkdir(path.dirname(dst), { recursive: true }) - 写入本地文件src/archive.js:156
await writeFile(dst, buf) - 删除本地文件递归src/archive.js:168
await rm(candidate.sessionDir, { recursive: true, force: true }) - 删除本地文件递归src/archive.js:172
await rm(parent, { recursive: true, force: true }) - 写入本地文件src/archive.js:198
await writeFile(path.join(archiveDir, ARCHIVE_MANIFEST), JSON.stringify(manifest, null, 2), 'utf8') - 写入本地文件src/archive.js:230
await mkdir(path.dirname(out), { recursive: true }) - 删除本地文件递归src/archive.js:234
if (purge) await rm(srcDir, { recursive: true, force: true }) - 读取本地文件src/scan.js:15
buf = await readFile(file); - 读取本地文件src/scan.js:58
entries = await readdir(dir, { withFileTypes: true }); - 读取本地文件src/dsh-archive.js:30
const doc = JSON.parse(await readFile(file, 'utf8')) - 读取本地文件src/dsh-archive.js:51
const doc = JSON.parse(await readFile(file, 'utf8')) - 写入本地文件src/dsh-archive.js:68
await writeFile(backup, JSON.stringify(doc, null, 2), 'utf8') - 写入本地文件src/dsh-archive.js:73
await writeFile(tmp, JSON.stringify(doc, null, 2), 'utf8') - 写入本地文件src/dsh-archive.js:74
await rename(tmp, file) - 读取本地文件src/dsh-archive.js:90
try { st = await stat(file) } catch { continue }
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 全量与增量备份
- sha256完整性校验
- 按需恢复会话
DeepSeek Harness 会话数据备份工具:打包 + sha256 完整性校验 + 抽样恢复加载检查。
README
由 DeepSeek 最新模型翻译生成dsh-session-backup
DeepSeek Harness 会话历史冷备份工具:全量 + 增量备份(带 sha256 manifest 与 loader-mirror 预校验),以及校验恢复。零运行时依赖。
会话历史是人与 DSH 之间交换记忆的唯一介质——备份是防"唯一记忆丢失"的最后防线。与 dsh-session-doctor 互补:doctor 管"坏了修",backup 管"坏了能回滚/防丢"。
能力
- 全量备份:扫描 sessions 根下全部会话 → 复制到目标目录(保持 /session.jsonl.zstd 结构),生成 manifest.json(id/源路径/大小/ mtime/sha256/状态)。
- 增量备份:二次运行按 manifest 的 size+mtime 跳过未变会话;源变更才重拷。
- 备份前校验:每个会话先跑 loader-mirror 校验(与加载器同规则),坏会话在 manifest 标 status: corrupt 并列出警告(不静默),但仍备份以便未来用 doctor repair。
- 恢复 restore:按 manifest 把会话恢复到目标路径,逐个 sha256 校验备份完整性;拒绝覆盖已存在文件(需 --force,防误覆盖 live 会话)。
展开完整文档(README 剩余 1 节)
dsh-session-backup DeepSeek Harness 会话历史冷备份工具:全量 + 增量备份(带 sha256 manifest 与 loader-mirror 预校验),以及校验恢复。零运行时依赖。 会话历史是人与 DSH 之间交换记忆的唯一介质——备份是防"唯一记忆丢失"的最后防线。与 dsh-session-doctor 互补:doctor 管"坏了修",backup 管"坏了能回滚/防丢"。 能力 - 全量备份:扫描 sessions 根下全部会话 → 复制到目标目录(保持 /session.jsonl.zstd 结构),生成 manifest.json(id/源路径/大小/ mtime/sha256/状态)。 - 增量备份:二次运行按 manifest 的 size+mtime 跳过未变会话;源变更才重拷。 - 备份前校验:每个会话先跑 loader-mirror 校验(与加载器同规则),坏会话在 manifest 标 status: corrupt 并列出警告(不静默),但仍备份以便未来用 doctor repair。 - 恢复 restore:按 manifest 把会话恢复到目标路径,逐个 sha256 校验备份完整性;拒绝覆盖已存在文件(需 --force,防误覆盖 live 会话)。 用法 全量备份(第二次跑自动增量) node bin/dsh-session-backup.js backup 查看备份清单 node bin/dsh-session-backup.js list 恢复全部(到新目录) node bin/dsh-session-backup.js restore 恢复指定会话 / 覆盖已有 node bin/dsh-session-backup.js restore --ids a,b --force 典型:备份整个 DSH 会话库到独立磁盘: node bin/dsh-session-backup.js backup D:/tool/dsh_data/sessions D:/session-backups 测试 npm test # 合成 fixture:全量/增量/校验/restore/拒覆盖 node scripts/verify-real.mjs # 真实会话副本验收(不碰真实数据) 安全边界 - 零运行时依赖(Node 内置 fs/crypto/zlib)。 - 备份前校验坏会话 → 标记而非静默;restore 校验 hash + 拒绝误覆盖。 - 不压缩/不加密(原样复制 zstd 产物,保持字节一致)。 - 验收全在副本上进行,不碰真实会话。 License MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
imtokenxinluo/dsh-session-backup
全量与增量备份会话历史,校验完整性并支持按需恢复
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,489已汉化DSH
73.1
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,918已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,453已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
Download DS Bot for Windows 10/11 64-bit / 下载 Windows…
★ 5,293已汉化DSH
71.2
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,797已汉化DSH
71.1
这是你的仓库?认领条目