dsh-vault:DeepSeek Harness 的数据备份与恢复插件

前言

DeepSeek Harness(DSH)的聊天记录、工作区数据、设置和凭据通常保存在本地 ~/.dsh 中。当需要重装、迁移,或本地数据被清空后,缺少独立备份会让恢复变得困难。

dsh-vault 是 DSH 生态中的一个社区插件,用于把关键数据备份到 ~/.dsh 之外,并在数据疑似被清空时给出告警、支持按范围恢复。它由 feiyang-dev 维护,许可证为 MIT。在 DSH 的插件机制中,dsh-vault 可作为社区插件挂载到 web profile。

这是什么

dsh-vault 的 npm 包名为 @feiyang666/dsh-vault,主要提供三件事:

  • 备份:把 DSH 关键数据复制到独立备份目录
  • 清空检测:启动时比较备份与当前会话数,疑似清空时红色告警
  • 恢复:通过设置页或 backup_vault 工具按范围恢复

备份目录格式为:

~/.dsh-backups/<timestamp>/

该目录位于 ~/.dsh 之外。恢复操作会覆盖当前数据,执行前需确认备份时间点。

核心功能

备份管理页

安装并重启后,Web Settings 中会提供 Backup Manager

在该页面可以:

  1. 查看备份目录、上次备份时间、备份数量、数据完整性
  2. 执行 Back Up Now
  3. 按范围恢复:Allchat history onlyworkspace settings only
  4. 删除备份,删除前需要确认

备份内容

默认备份 DSH 的以下数据:

~/.dsh/sessions/
~/.dsh/storages/
~/.dsh/settings.yaml
~/.dsh/.credentials.yaml
~/.dsh/.anonymous-user-id
~/.dsh/profiles/

如果已安装 dsh-usage-plugin,其用量数据也会一并备份和还原,包括:

usage-records.json
pricing.json

.credentials.yaml 中可能包含 API keys,因此备份目录需要妥善保管。

清空检测

插件启动时会比较备份中的会话数与当前会话数。若疑似数据被清空,会给出红色告警。

backup_vault 工具

插件注册 backup_vault 工具,支持以下动作:

status
backup
list
restore
delete
make_script

其中:

  • restore 需要 namescopescope 可为 allsessionsdata
  • delete 需要 name
  • make_script 用于生成 restore-latest.ps1

安装与启用

桌面端安装

打开 DeepSeek Harness Desktop,按以下路径操作:

Install PluginsRecommendedData VaultInstallRestart Service Now

命令行安装

在已有 dsh 的环境执行:

dsh plugin --profile web add @feiyang666/dsh-vault

如需启动 Web UI:

npx @deepseek-ai/dsh web

默认地址:

http://127.0.0.1:3080

重命名说明

项目已从旧名称迁移到 dsh-vault

  • GitHub 仓库:feiyang-dev/deepseekharnessdesktop-vaultfeiyang-dev/dsh-vault
  • npm 包:@feiyang666/deepseekharnessdesktop-vault@feiyang666/dsh-vault

旧 GitHub URL 会 301 跳转到新地址。旧 npm 包不再维护。安装或升级时请使用新包名:

dsh plugin --profile web add @feiyang666/dsh-vault

典型用法

在设置页中操作

  1. 打开 SettingsBackup Manager
  2. 点击 Back Up Now 创建一次备份
  3. 在备份历史中选择一次备份
  4. 选择恢复范围:Allchat history onlyworkspace settings only
  5. 如需删除旧备份,执行删除并完成确认

通过 backup_vault 工具操作

可以向助手提出类似请求:

  • “检查 dsh-vault 备份状态”
  • “立即备份 DSH 数据”
  • “列出所有备份”
  • “从指定备份恢复聊天记录”
  • “删除指定名称的旧备份”
  • “生成离线恢复脚本”

工具参数可写成:

backup_vault action=status
backup_vault action=backup
backup_vault action=list
backup_vault action=restore name=<备份名> scope=all|sessions|data
backup_vault action=delete name=<备份名>
backup_vault action=make_script

scope 的含义:

  • all:全量恢复
  • sessions:聊天记录
  • data:工作区设置/数据

离线恢复

如果已生成恢复脚本:

  1. 退出桌面应用
  2. 运行 ~/.dsh-backups 下的 restore-latest.ps1

如果没有使用脚本,也可以手动复制:

~/.dsh-backups/backup-<timestamp>/
→ ~/.dsh/

恢复聊天记录前最好退出桌面应用,因为 DSH 运行期间聊天记录文件可能被锁定。

适用场景与注意

dsh-vault 适合以下场景:

  • 需要把 DSH 的聊天记录、工作区数据、设置和凭据备份到 ~/.dsh 之外
  • 需要在数据被清空后尽快恢复
  • 已安装 dsh-usage-plugin,希望一并备份用量数据

使用前注意:

  • 插件以当前 dsh 进程权限运行,安装前建议检查源码与许可证
  • 运行环境要求 Node.js >= 18
  • 备份目录包含 .credentials.yaml,可能包含 API keys,避免暴露给不可信位置
  • 恢复会覆盖当前数据,先确认备份时间点
  • 旧 npm 包不再维护,请使用新包名

链接

  • GitHub:https://github.com/feiyang-dev/dsh-vault
  • 目录页:https://www.skillhub.cn/plugins/feiyang-dev/dsh-vault(该地址来自插件目录线索,未在本次抓取资料中确认)
羽毛球分组比赛记分
小程序二维码

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

Xiaoye