dsh-snapshot
DSH 文件快照/撤销 + 会话导出插件:每次 write/edit 自动备份历史版本(每文件最多 20 版),提供 snapshot_list/snapshot_restore/snapshot_purge 与 export_session 工具
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Hyna-hla/dsh-snapshot说明文档
阅读完整 README ↗dsh-snapshot
DeepSeek Harness 宿主插件:文件快照与撤销。
- 每次
write/edit工具调用后自动备份文件历史到\.dsh-snapshots\snap-.json(每文件最多 20 版,单版 ≤ 2MB,超限靠覆写不删除); - 提供四个工具:
snapshot_list— 列出快照仓库:每个被追踪文件的版本数与最新版本时间;snapshot_restore— 把文件恢复到指定历史版本(恢复前自动再备份一次);snapshot_purge— 清空所有历史版本;export_session— 把当前会话导出为 Markdown / JSON。
安装
- 构建产物拷入 profile 的
node_modules\dsh-snapshot(或经file:依赖); cordis.patch.yml注册:
- insert:
- id: dsh-snapshot
name: dsh-snapshot
config:
maxVersions: 20
maxContentBytes: 2097152
- 重启 DeepSeek Harness(组合在进程启动时加载)。
说明
- 沙盒策略:宿主根上下文拿不到会话工作区,写入工作区时需透传
sandboxPolicy(sandboxPolicy.resolve({session}))。 - 仓库按「每文件一个 JSON(btoa 路径作文件名)」组织,靠覆写而非删除(fs 服务无 mkdir/unlink)。