卸载 DeepSeek Harness 后重装,数据还在吗?dsh 卸载重装与 ~/.dsh 数据迁移指南
卸载 DeepSeek Harness 不会丢数据:程序与数据分离,删程序只动 npm 包或源码仓库,配置、密钥、会话全部独立存放在 $DSH_HOME(默认 ~/.dsh)。按「备份 → 按安装方式卸载 → 确认数据保留 → 重装」四步走,重装后配置会话照常在;要换机器迁移,直接把 ~/.dsh 拷过去即可。
概览:卸载重装四步走,数据永远独立
卸载 dsh 不是删数据——程序在本体,数据在 $DSH_HOME(默认 ~/.dsh),两者互不影响。 DeepSeek Harness 的程序与数据分开存放:程序是 npm 包或源码仓库,数据目录由 $DSH_HOME 定义、默认是 ~/.dsh(来源)。所以「卸载后重装,数据还在不在」的答案取决于你有没有动 ~/.dsh。整体四步:
- 备份:先复制
~/.dsh(或至少sessions)到安全位置; - 卸载:按你的安装方式删掉程序本体;
- 确认:检查
$DSH_HOME数据目录完好、未被误删; - 重装 / 迁移:重新运行或把数据目录搬到新机器。
下面按这四步逐个拆开讲。
第一步:按安装方式卸载本体
卸载命令取决于当初怎么装的:npx 无残留、npm 全局用 npm uninstall -g、源码构建删仓库目录。 三种安装方式对应三种卸载做法:
# 方式一:npx 方式(无本地安装,无残留;可选清理 npx 缓存)
rm -rf ~/.npm/_npx
# 方式二:npm 全局安装过 dsh 命令
npm uninstall -g @deepseek-ai/dsh
# 方式三:源码构建(删除 clone 下来的仓库目录)
rm -rf ~/path/to/deepseek-harness
npx 每次运行从 npm 临时拉取、不产生持久本地安装,所以本体没有可卸载的东西,最多清一下 ~/.npm/_npx 缓存目录;源码构建的 DeepSeek Harness 没有全局副作用,删除仓库目录即完成卸载(来源)。全局安装过 dsh 的机器,which dsh 能查到命令路径,用方式二卸掉。
第二步:分清「卸载」与「清数据」
卸载只删程序本体;$DSH_HOME 下的配置、密钥、会话、profile 原样保留,只有手动删 ~/.dsh 才是清数据。 这是全文最关键的区别。数据目录里住着你的所有资产(来源):
| 文件 / 目录 | 内容 | 卸载时 |
|---|---|---|
$DSH_HOME/settings.yaml | 用户配置 | 保留 |
$DSH_HOME/.credentials.yaml | 模型密钥(只写不回显) | 保留 |
$DSH_HOME/profiles/<名字>/ | 每个 profile 的插件依赖与组合配置 | 保留 |
$DSH_HOME/sessions | 会话数据 | 保留 |
~/.dsh 整体 | 上面的总和 | 只有 rm -rf 才删 |
所以想「卸载重装、数据还在」,关键是别碰 ~/.dsh。如果某一步不小心动了,用第一步前的备份恢复:
cp -r ~/.dsh-backup/sessions ~/.dsh/sessions
第三步:重装后数据还在吗
重装只换程序本体,$DSH_HOME 原样保留——重跑 npx @deepseek-ai/dsh web 后配置、会话、插件全都在。 具体看安装方式:
- npx 重装:重新执行
npx @deepseek-ai/dsh web,web profile 会自动重新初始化,之前存的模型密钥、历史会话、已装插件都在(来源)。 - 全局重装:
npm install -g @deepseek-ai/dsh覆盖安装新版本,数据目录不受影响。 - 源码重装:重新 clone、
pnpm install && pnpm run build后启动,数据同样保留。
重装完用三步验证数据是否完整:① dsh --version 确认本体版本到位;② 启动 Web UI,看历史会话是否还在;③ 打开「设置 → 插件中心」核对已装插件——装 DSH Plugin Hub 后在插件中心看已安装列表,一键补装缺失的插件。

第四步:数据迁移到新机器
换机器迁移直接把 ~/.dsh 整个目录拷过去,配置、会话、密钥一次搬走。 迁移步骤:
# 1. 旧机器上打包数据目录(跳过 node_modules 可大幅减小体积)
tar -czf dsh-data-backup.tar.gz -C ~ .dsh
# 2. 拷贝到新机器后解压到相同位置
tar -xzf dsh-data-backup.tar.gz -C ~
两点注意:.credentials.yaml 存着模型密钥,迁移后在新机器上确认密钥仍然有效、没被安全软件拦掉;$DSH_HOME 默认是 ~/.dsh,如果你想放到别的位置,启动前设置环境变量 $DSH_HOME 指向新目录即可(来源)。profile 里记录的绝对路径(比如工作区目录)在不同机器上可能失效,迁完按需重新指定。
卸载重装的注意事项
一句话:卸载别删 ~/.dsh,重装数据就还在;想彻底重来,先备份再删。 三点提醒:
- 先备份再动手:无论卸载还是清数据,先
cp -r ~/.dsh ~/.dsh-backup,成本极低。 which dsh验证卸载:卸载后执行which dsh,无输出即程序已删干净;确认~/.dsh完好才放心重装。- 插件不用手动重装:只要
$DSH_HOME保留,插件依赖也在;个别插件不加载时,在 DSH Plugin Hub「设置 → 插件中心」一键重装即可。
来源:dsh CLI README、DeepSeek Harness 官方文档 - 配置模型、官方 Quickstart
常见问题
不会。卸载只删程序本体,数据在独立的 $DSH_HOME 数据目录(默认 ~/.dsh):配置在 settings.yaml、密钥在 .credentials.yaml、profile 在 profiles/、会话在 sessions/。只要不手动删 ~/.dsh,数据就都在。
npx 方式没有本地安装、无残留,清不清 ~/.npm/_npx 缓存都行;npm 全局安装过用 npm uninstall -g @deepseek-ai/dsh;源码构建的删除 clone 下来的仓库目录即可。三种方式都不会碰数据目录。
在。重新执行 npx @deepseek-ai/dsh web 会自动初始化 web profile,$DSH_HOME 里的配置、会话、插件依赖都在,重装后直接继续用;换新版本本体时数据同样保留。
把 ~/.dsh 整个目录拷贝到新机器的相同位置即可,配置文件与密钥都在里面;注意 .credentials.yaml 存着模型密钥,迁移后确认密钥可用,profile 里的绝对路径(如工作区目录)可能需要重新指定。
卸载只删程序本体,数据目录 $DSH_HOME 原样保留;清数据是手动删 ~/.dsh 目录,配置、会话、密钥全没。想彻底重来才清数据,清之前先备份 ~/.dsh/sessions。
来源
- dsh CLI README· deepseek-ai
- DeepSeek Harness 官方文档 - 配置模型· deepseek-harness
- DeepSeek Harness 官方文档 - Quickstart· deepseek-harness