dsh-travel-kit:DSH 完整备份、迁移与灾备

前言

DeepSeek Harness(DSH)把用户数据集中在安装目录下的 data\dsh-home,并通过目录联接把程序默认查找的位置指过去。一旦更新把某条联接换成空目录、或把程序装到新路径,界面会像刚安装一样空白,而真实数据往往还在原处。手动拷贝文件夹无法还原「联接应该指向哪里」这一层结构,迁移和恢复容易踩坑。下面介绍社区插件 dsh-travel-kit,它把对话、工作区、插件、配置以及联接布局一起打成可校验的包,并附带可读报告。

这是什么

dsh-travel-kit 由维护者 visitor257 发布,在 SkillHub 上归类为 admin-security。定位是:对一台机器上的 DSH 做完整打包(对话、工作区、插件与配置、凭证、界面状态、目录联接结构),生成可读报告;也可从包恢复,或迁移到另一台电脑。当前 GitHub 仓库星标为 0;package.json 中版本为 0.1.4,许可证 MIT,依赖 Node >=22。

DSH 侧典型联接关系如下(资料以 Windows 路径为例):

~/.dsh                                         -> <安装>\data\dsh-home
%APPDATA%\@deepseek-ai\dsh-desktop             -> <安装>\data\electron-userdata
%LOCALAPPDATA%\dsh-dafeiyu                     -> <安装>\data\dafeiyu-runtime

本插件把「结构」写进报告与 layout/,恢复时不只知道文件在哪,还知道它们该怎么指。

核心功能

安装后提供四个工具,配套 skill dsh-travel-kit 会提示模型:先诊断再动手、恢复前先 dryRun、恢复后必须重启 DSH。

工具 作用
travel_status 查看安装/数据路径、三条联接状态、工作区与插件清单
travel_export 打包并生成 report.md 与带 SHA-256 的 manifest.json
travel_inspect 校验包完整性(文件齐全、大小一致)
travel_restore 从包恢复并重建联接(默认 dryRun,不落盘)

包结构

导出目录形如 DSH-Travel-<主机>-<时间>/:

DSH-Travel-<主机>-<时间>/
  report.md            人/agent 可读的完整说明
  manifest.json        文件清单 + 哈希 + 统计
  data/dsh-home/       对话、工作区、profile 配置、插件启用状态、凭证
  data/electron-userdata/  窗口与本地存储
  layout/layout.json   安装路径、联接映射、环境变量
  layout/plugins.json  插件清单
  layout/workspaces.json 工作区清单

不打包 dsh-runtimes(可重建,按需下载)。默认打包各插件目录下的 node_modules(资料称约 235 MB),还原后不依赖 pnpm、换盘换路径也能用;导出时可设 includeModules: false 得到约 12 MB 精简包,但还原后需联网重装插件。

0.1.3 及更早的包不含 node_modules;还原到不同路径时程序可能用 pnpm 重装,而旧包内 node_modules/.modules.yaml 记录旧机器绝对路径,可能触发 ERR_PNPM_UNEXPECTED_STORE。0.1.4 起还原时会清除该文件。

安全相关行为

  • 包内可能含明文 .credentials.yaml,不要外传;travel_export 支持 includeCredentials: false 排除凭证。
  • 恢复时会把现有数据改名留存为 dsh-home.pre-restore-<时间>,不删除原有内容。

安装与启用

官方 README 给出的安装方式为使用本插件的 .tgz 包(具体包文件名以你下载的发布物为准):

dsh plugin --profile desktop add <本包>.tgz

安装后重启 DSH 生效。插件以当前 DSH 进程权限运行;安装前应自行查看 GitHub 源码 与 LICENSE,确认符合你的安全策略。

典型用法

建议按「诊断 → 导出 → 校验 → 试跑恢复 → 正式恢复」顺序操作。

  1. 先看现状:用 travel_status 确认安装路径、三条联接是否正常,以及工作区、插件清单。
  2. 导出:调用 travel_export 生成旅行包;需要对外分享或上云时,考虑 includeCredentials: false;若接受还原后重装插件依赖,可设 includeModules: false 缩小体积。
  3. 迁移前校验:在新环境或拷贝完成后,用 travel_inspect 核对 manifest 与文件。
  4. 恢复:先用 travel_restore 的默认 dryRun 看将要写入的路径与联接计划;确认无误后再执行真正恢复,并重启 DSH。

具体参数与调用方式以插件在 DSH 内暴露的工具为准;详细字段说明见包内 report.md 与仓库 README。

适用场景与注意

适合:换机、重装 DSH、盘符或安装路径变更、需要做可验证的离线备份与灾备的桌面 DSH 用户。

注意:

  • 旅行包含敏感配置时务必本地保管,勿随意外传。
  • 社区目录 SkillHub 插件页 与 GitHub 为独立生态信息源,与 DeepSeek / 幻方无官方从属关系;安装命令须使用资料原文形式,勿自行拼接未在文档出现的 dsh plugin add github:... 写法。
  • 精简包(不含 node_modules)还原后需网络重装插件;完整包体积较大,但更适合离线、换路径场景。

结尾

dsh-travel-kit 解决的不只是「拷文件」,而是把 DSH 依赖的联接布局一并备份与恢复,并用 manifest 与报告让人和 agent 都能核对内容。需要进一步了解分类与简介时,可打开 SkillHub 目录页;实现细节与版本说明以 GitHub 仓库为准。

  • 目录页:https://www.skillhub.cn/plugins/visitor257/dsh-travel-kit
  • GitHub:https://github.com/visitor257/dsh-travel-kit
羽毛球分组比赛记分
小程序二维码

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

Xiaoye