卸载 dsh 后磁盘没释放?DeepSeek Harness 全局包、缓存与 DSH plugin 占用定位

卸载与清理发布于 2026-10-04作者: DeepSeek Plugin 插件市场
DeepSeek HarnessDSH plugin卸载 dsh磁盘占用pnpm storenpm cache
卸载 dsh 后磁盘没释放,是因为卸程序不等于清数据:全局包、npx / npm 缓存、pnpm store、profile 的 node_modules 与 $DSH_HOME 各占一块。本文用命令逐目录定位,并区分哪些能安全清、哪些清了要重装。

卸载 dsh 后磁盘没释放,根因是「卸程序 ≠ 清数据」:DeepSeek Harness 的占用分散在全局包目录、npx / npm 缓存、pnpm store、profile 的 node_modules 与 $DSH_HOME 数据目录五处,卸载只清可执行部分,缓存与共享数据原地不动(来源)。

这篇按「占用地图 → 逐目录定位体积 → 哪些能安全清」三步讲。残留清理的步骤见《DSH plugin 卸载后怎么清理残留》,本文落点是空间没释放的定位与量化。

卸载 dsh 后空间去哪了:五块占用地图

DeepSeek Harness 相关占用至少分五块:全局包目录、npx / npm 缓存、pnpm store、profile 的 node_modules、以及 $DSH_HOME 数据目录;卸载只动可执行部分,所以四块缓存与数据仍在(来源)。

对着五块占用逐项确认:

  1. 全局包 — 用 npm 装过就有全局包目录。预期:卸载后该包目录消失,若还在说明卸载没走全局包路径。
  2. npx 缓存 — 用 npx 跑过就留下缓存(常在 ~/.npm/_npx 一类位置)。预期:卸载不清它,空间原地不动。
  3. npm 缓存 — 下载过的包内容留在这里。预期:与卸载无关,永久保留到手动清理。
  4. pnpm store — 内容寻址存储,profile 依赖从中取用。预期:卸载不清它,且可能被其他项目共享。
  5. $DSH_HOME 与 profile 的 node_modules — 会话、设置、插件与依赖装在这里。预期:卸载不清理,属于要保留的数据。

关键认知:这五块里只有第 1 块会随卸载消失(而且仅当你当初用全局包方式装),其余都是缓存或数据,卸载程序没有义务、也不会去清。所以「卸载了却感觉没省空间」是正常的,要腾空间得逐块手动处理。

逐目录定位 DeepSeek Harness 的磁盘占用

定位顺序是「先问工具目录在哪 → 再量各自体积 → 排出最大的块」:用 npm config get cache 找 npm 缓存、npm root -g 与 npm prefix -g 找全局包目录、pnpm store path 找 pnpm store、ls "$DSH_HOME/profiles" 找各 profile(来源)。

按命令逐块量,别凭感觉删:

  1. 找 npm 缓存 — 跑 npm config get cache,再 du -sh "$(npm config get cache)"。预期:得到缓存目录与体积;这是最常被忽略的一块。
  2. 找全局包目录 — 跑 npm root -g 与 npm prefix -g,再量该目录。预期:确认全局包是否已随卸载移除,以及是否有其他全局包共用。
  3. 找 pnpm store — 跑 pnpm store path,再 du -sh "$(pnpm store path)"。预期:得到 store 目录与体积;它通常比单个项目大,因为跨项目共享。
  4. 找 profile 与 $DSH_HOME — 跑 ls "$DSH_HOME/profiles" 与 du -sh "$DSH_HOME"。预期:看清各 profile 的 node_modules 与数据目录各占多少。
  5. 排序列出最大块 — 把上面几个 du -sh 结果并排。预期:一眼看出空间主要被缓存占、还是被数据占,决定下一步清哪块。

第 3 步要理解 pnpm 的机制:store 是内容寻址、跨项目共享的,所以它可能被其他项目引用着,体积大不等于都能删——这直接决定下一节能清到什么程度。

哪些能安全清、哪些清了要重装、怎么确认释放

区分标准很简单:「能重新拉回来的」可清,「配置与数据」别乱删。npm / pnpm 的下载缓存可以清,pnpm store prune 可清未被引用的内容,而 profile 的 node_modules 与 $DSH_HOME 里的插件数据清了就要重装或重配(来源)。

按「可清性」分三档处理,清完都重新量体积确认:

  1. 安全清:npm / npx 缓存 — 用对应包管理器的缓存清理命令清掉下载缓存。预期:缓存目录体积下降;下次安装会重新下载,不影响已装内容。
  2. 较安全清:pnpm store 未引用内容 — 跑 pnpm store prune。预期:store 体积下降,被引用的内容保留;其他项目若仍引用,相关包不会被删。
  3. 谨慎:profile 的 node_modules 与 $DSH_HOME 插件 — 这些是要用的数据。预期:删了要重装插件或重配;决定删之前先想清楚。
  4. 清完复查 — 对每个目录重跑 du -sh,与清理前对比。预期:体积确实下降才算释放;命令执行成功不等于空间回来。

第 3 档的取舍最能体现「卸程序 ≠ 清数据」:$DSH_HOME 里是会话、设置、凭据与插件,删了没有备份。想彻底腾空间就在这里下手,想保留使用状态就把这块排除在清理之外。

卸载 dsh 后清理磁盘占用的注意事项

  1. 先量后删:每块都用 du -sh 量过体积再决定,别凭感觉删大目录。
  2. 缓存可清、数据慎删:npm / npx 缓存与 pnpm 未引用内容相对安全,profile 的 node_modules 与 $DSH_HOME 属于数据。
  3. store 是共享的:pnpm store prune 只清未被引用的内容,删不动正在被引用的包。
  4. 卸载只清一块:全局包方式装的会随卸载移除,其余缓存与数据不随卸载消失。
  5. 清完要复查:重跑体积命令对比,确认空间真正释放。

清完缓存、需要把 DSH插件装回来时,用 DSH Plugin Hub 在已安装列表里按需安装,比逐个记包名重新拉更省事。

dsh-plugin-hub · 设置

来源:DeepSeek Harness 命令行 README(官方仓库)、npm Docs: npm cache、pnpm Docs: pnpm store

常见问题

为什么卸载 dsh 之后磁盘空间没有明显释放?

卸载 dsh 后磁盘没释放,是因为卸程序不等于清数据。DeepSeek Harness 相关占用分成好几块:全局包目录、npx / npm 缓存、pnpm store、profile 里的 node_modules,以及 $DSH_HOME 里的会话与设置。卸载程序通常只清可执行部分,缓存与共享数据不在清理范围,所以空间看着没回来。

怎么用命令定位 DeepSeek Harness 到底占了哪些目录?

按块定位最清楚。用 npm config get cache 找 npm 缓存目录,用 npm root -g 与 npm prefix -g 找全局包目录,用 pnpm store path 找 pnpm store,用 ls "$DSH_HOME/profiles" 找各 profile 的 node_modules;再用 du -sh 逐个量体积。macOS 与 Linux 用 du,Windows 可用资源管理器或目录属性,逐块核对哪块最大。

DeepSeek Harness 卸载后哪些缓存能安全清、哪些清了要重装?

npm 与 pnpm 的下载缓存可以安全清,清了只是下次重新下载;pnpm store 可用 pnpm store prune 清未被引用的内容,安全但会影响其他项目复用。而 profile 里的 node_modules 与 $DSH_HOME 里的插件属于要用的数据,清了就要重装或重配。区分标准是「能重新拉回来的」可清,「配置与数据」别乱删。

清完 DeepSeek Harness 残留缓存后,怎么确认磁盘真的释放了?

清完要重新量体积来确认。对每个目录再跑一次 du -sh,与清理前的数字对比;pnpm 可用 pnpm store path 再定位一次 store 体积,npm 缓存重跑 npm config get cache 确认路径未变。只有体积确实下降才算释放,光看到命令执行成功不代表空间回来了,因为部分缓存可能被其他项目引用。

pnpm store prune 会删掉 DeepSeek Harness 正在用的包吗?

pnpm store prune 删除的是 store 里没有被任何项目引用的内容,正在被 profile 或项目引用的包不会被删。它是内容寻址存储,多个项目共享同一份内容;所以清理 store 是相对安全的操作,但如果某个 profile 仍引用着包,store 会保留对应内容。要彻底腾空间,得先确认没有 profile 再引用。

相关术语

npx 缓存
npx 缓存是 npx 运行包时保存下载内容的目录(通常在 ~/.npm/_npx 一类位置),用 npx 方式运行过 DeepSeek Harness 会在这里留下内容,卸载程序不会清它。— npm Docs
pnpm store
pnpm store 是 pnpm 的内容寻址存储,多个项目共享同一份包内容;DeepSeek Harness 的 profile 依赖也从这里取用,可用 pnpm store path 定位、pnpm store prune 清未被引用的内容。— pnpm Docs
$DSH_HOME
$DSH_HOME 是 DeepSeek Harness 的产品数据根目录,默认位于 ~/.dsh,存放会话、设置、凭据与各 profile;它占空间且卸载不清理,属于要保留的数据而非缓存。— DeepSeek Harness 命令行 README
profile 的 node_modules
profile 的 node_modules 是 pnpm 把树外插件装进该 profile 时生成的依赖目录,位于 profile 内部,属于正在使用的数据,清理后相关插件需要重装。— DeepSeek Harness 命令行 README

来源