dsh-backup-all:为 DSH 环境做一键全量快照与回滚

前言

在 DSH 里用久了,环境会散在多处:profile 下的 package.json、cordis.yml,node_modules 里的 registry 插件,本地 dshbox-plugins,Skill、MCP 连接、Agent Preset,以及 .credentials.yaml 和外部工作目录。手工逐项复制很难做到完整,升级 DSH、大改插件或换机器时一旦出错,代价也更高。社区插件 dsh-backup-all(维护者 luotianhao21)的定位是:把上述内容打成可回滚的压缩快照,并在设置里提供列表、导出与恢复入口;SkillHub 上归类为 admin-security。它不是只做「迁移」的专用工具,更接近在动环境之前先留一份完整现场。

这是什么

dsh-backup-all 是面向 DeepSeek Harness(DSH)的 Web profile 插件,当前 npm / GitHub 标注版本为 1.3.0,许可证 MIT。创建快照时,Host 扫描固定配置、凭据、Skill、插件与 MCP 等;AI 在可配置模型下判断哪些「插件外但运行时仍被引用」的外部数据应入包,并生成恢复计划与 RESTORE.md。恢复时先自动做「恢复前快照」,再比对差异、分批写回(覆盖前有逐文件安全备份),最后重装依赖。跨操作系统恢复列为附加能力,同系统完整回滚才是 README 中的主路径。

备份范围与打包策略

下面列出插件 README 中写明会纳入快照的内容:

  • profile 配置:如 package.json、cordis.yml、cordis.patch.yml、pnpm-lock.yaml 等;
  • 插件:registry 来源以记录为主,恢复时重装;本地 file: / link: 或无法再下载的插件代码可按策略入包;
  • Skill / Agent Preset:扫描到的条目与配置;
  • MCP 连接:连接定义与相关配置;
  • 凭据:.credentials.yaml(可在策略中关闭打包);
  • 外部数据:由 AI 结合环境清单与运行时引用发现,并经安全规则校验后纳入。

默认插件代码策略为 local-only(仅打包本地不可再下载插件),避免把能重新拉取的 registry 插件本体塞进归档。归档格式为 tar + Brotli(quality 11),包内附带 manifest.json、INVENTORY.md、RESTORE.md;README 称压缩后体积常为原数据的大约一成,全程有进度且可中断。

创建工作方式简述

创建快照:Host 扫描 → AI 选定外部数据 → 写恢复说明 → 打包为 .backup.tar.br(文件名含系统类型,如 ...-linux.backup.tar.br / ...-windows.backup.tar.br)。

恢复:自动创建恢复前快照 → AI 对比差异 → 分批写回并重装依赖 → 重启 DSH 生效。恢复前快照意味着回滚操作本身也可以再回滚。

设置页提供「Backup ALL」:快照列表、已归档、高级设置;支持卡片导出与「引入快照」导入任意 .backup.tar.br;另有后台悬浮进度球与移动端适配。快照与恢复使用可独立配置的 AI 模型(OpenAI 兼容 / Anthropic),工具调用可见、可中断。

安装与启用

前置条件:DSH 0.2.1-rc.5(或 README 所称兼容版本)、Node.js >= 22、pnpm(由 DSH 插件管理使用)。插件以当前 DSH 进程权限运行,安装前请自行查看仓库源码与 MIT 许可证。

推荐从 npm 安装:

dsh plugin --profile web add dsh-backup-all

或从 GitHub 安装:

dsh plugin --profile web add github:luotianhao21/dsh-backup-all

安装后重启 DSH,在 设置 → 插件 中确认 dsh-backup-all 已启用;设置侧栏会出现 Backup ALL。

快速开始

  1. 打开 设置 → Backup ALL → 高级设置,配置 AI 模型(Base URL、API Key、Model ID),使用「测试模型接通性」验证;
  2. (可选)在「快照策略」中调整插件代码打包范围、是否不打包凭据、跨 OS 恢复插件代码(skip / 实验性 js);
  3. 在「快照」页点击 创建新快照,经两步确认后等待完成;
  4. 需要回滚时,在对应卡片点 恢复(会先自动创建恢复前快照);
  5. 离线保管时点 导出 保存 .backup.tar.br;换环境时用 引入快照 导回。

快照策略默认值(来自 README 表格):

设置 默认 可选
插件代码本体 仅本地不可再下载 local-only / all / none
不打包凭据 关 开启后恢复需重填凭据
跨 OS 恢复插件代码 跳过 skip / js(跨 OS 时生效)

同系统恢复为完整恢复;跨系统为兼容恢复(配置/数据/凭据迁移,插件代码默认跳过,registry 插件重装)。原生插件与系统相关内容需在目标系统重建。

适用场景与安全注意

README 归纳的典型场景包括:升级 DSH 或大改插件前先快照;误删配置 / Skill / 本地插件后回滚;重装系统或换电脑前导出归档;定期留保险副本;或仅通过 INVENTORY.md / RESTORE.md 清点环境里有什么。

安全方面需特别注意:默认策略下快照可能包含 明文 .credentials.yaml,应将 .backup.tar.br 当作敏感文件保管;README 写明 Host 不会把凭据明文放进 AI prompt,但恢复或迁移后仍建议轮换 API Key 等凭据。DSH 生态理念是「一切皆插件」;SkillHub 目录站与 DeepSeek / 幻方无官方从属关系,本插件由个人维护,与 DeepSeek 官方亦无隶属关系。

参考链接

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜