dsh purge 到底清什么?DeepSeek Harness 清数据与卸载 DSH plugin 的分界

卸载与清理发布于 2026-10-13作者: DeepSeek Plugin 插件市场
DeepSeek HarnessDSH plugindsh purgedsh-purge清理数据卸载插件$DSH_HOME
dsh purge 不是官方命令——DeepSeek Harness 官方 CLI 没有 purge 子命令,dsh-purge 只是社区 DSH plugin。这篇用一句话分辨三个同名物,再给出 purge 与卸载 DSH plugin 的分界表,以及什么时候该清数据、文件层怎么做、误清有什么后果。

dsh purge 不是 DeepSeek Harness 官方命令——官方 CLI 的入口里根本没有 purge 子命令;dsh-purge 是一个社区 DSH plugin,「清数据」意义上的 purge 指的则是删除 $DSH_HOME 下的数据目录(来源)。 搜这个词的人,十有八九把三样东西混成了一个:一条并不存在的命令、一个名字撞车的插件、一种「把数据清空」的直觉。这篇不重复卸载步骤(那些看《卸载 DeepSeek Harness 的完整命令》),只做一件事——把「purge 这类清数据操作」和「卸载 DSH plugin」的分界划清楚,再告诉你什么时候该清、文件层怎么清、清错了会怎样。想先弄懂 purge 这个概念,可对照《dsh purge 是什么》;要看插件本身,去 DSH Plugin Hub 按名字查。

三个同名物:dsh purge、dsh-purge(一个 DSH plugin)与「清数据」

dsh purge、dsh-purge 与「清数据」是三样不同的东西:dsh purge 是不存在的官方子命令,dsh-purge 是一个社区 DSH plugin(中文也常叫「DSH插件」「DeepSeek插件」),而「purge 一下数据」指的是删除 $DSH_HOME 这个动作。 三者的来历、官方 CLI 到底有哪些入口、dsh-purge 这个插件究竟做什么,都在《dsh purge 是什么》里逐条讲清了,本篇不重复。这里只记住一句:purge 不是官方命令——认准这点,后面的分界与实操才不会从错的前提开始。

purge 与卸载 DSH plugin 的分界线:清数据 ≠ 拆插件

清数据(purge)动的是数据目录里的内容,卸载 DSH plugin 动的是依赖清单与加载清单——两件事互不替代,谁也不能顶替谁。 把两者并排看,边界一目了然:

维度清数据 / purge卸载 DSH plugin
动作对象$DSH_HOME 下的内容依赖清单 + 加载清单
用什么做文件层删除(无官方命令)dsh plugin --profile web remove <包名>
影响范围会话、配置、密钥、插件依赖一起走只摘掉这一个插件
可逆性不可逆,删前必须备份可重装恢复
遗留—覆盖层、pnpm 缓存

两条最容易踩的坑,恰好互为镜像:

  1. 想摘一个插件,却去清数据:结果把会话、密钥、别的插件一起删了,代价远大于收益。摘插件只该走 remove;
  2. 想回到全新状态,却只卸插件:remove 只摘掉那一个包,settings.yaml、会话日志、别的插件全都还在,根本「清不干净」,还会残留 cordis.patch.yml 里的覆盖行。

这也是为什么「卸载 ≠ 删除会话 ≠ 清数据」是三件独立的事。分界的关键判断只有一句:你要删的是「某个插件的登记」,还是「整个数据目录的内容」? 前者走 remove,后者才是文件层删除。残留到底有哪些、怎么逐层清,见《卸载残留怎么清理》,那篇不在本篇展开。

什么时候该 purge、怎么做、误清会怎样

只有当你确定要「回到全新状态」时才该动数据目录;日常想摘掉某个插件,永远只走 remove。 清数据没有官方命令,只能在文件层操作,所以每一步都要先想清楚。按顺序来:

  1. 先定档:你要的只是「摘掉某个插件」「只清聊天记录」,还是「整机重置」?预期:三个答案对应三种操作,想清楚再动手,避免误删还想留的东西。
  2. 动手前先整体备份(唯一能兜底的一步):
bash
cp -r "$DSH_HOME" "$DSH_HOME.bak"

预期:得到一份含配置、密钥、会话与插件的完整副本,出问题可随时拷回。 3. 只想让某个 profile 回到默认:直接删它的目录,下次启动会自动重建。

bash
rm -rf "$DSH_HOME/profiles/web"

预期:dsh web 下次启动重建一个全新的 web profile,装过的第三方插件需要重装——这是「有控制地清一部分」。 4. 想整机重置:删掉整个数据目录。

bash
rm -rf "$DSH_HOME"

预期:目录消失,重装后是全新状态,模型密钥需要重新填。 5. 只清聊天记录、保留配置与插件:先停掉 dsh,再只删会话目录。

bash
cp -r "$DSH_HOME/sessions" "$DSH_HOME/sessions.bak" && rm -rf "$DSH_HOME/sessions"

预期:会话清空,配置、密钥与已装插件都不受影响。 6. 校验:echo $DSH_HOME 确认路径,ls "$DSH_HOME" 看目录还在不在。预期:结果与你第 1 步定的档一致。

误清的后果按「删错一层,丢一层」来记:删 sessions 丢聊天记录;删 profiles/<名字> 丢该 profile 的全部第三方插件与本地配置;删整个 $DSH_HOME 则密钥、会话、插件一锅端,而且没有回收站。唯一能救的就是第 2 步的备份——所以「先备份再删」不是客套话,是这类操作的硬前提。

说不清该清哪一层时,先别急着删——打开 DSH Plugin Hub 的「已安装」列表,把装了哪些插件、各自什么来源和版本看清,再决定是摘某个插件、还是清整个数据目录。

DSH Plugin Hub 已安装插件列表

来源:dsh CLI README、deepseek-ai/deepseek-harness、社区插件仓库 - dsh-purge、dsh-purge 插件条目。

常见问题

dsh purge 到底清什么?DeepSeek Harness 官方真的有 purge 这个清理命令吗?

没有——DeepSeek Harness 官方 CLI 里没有 purge 子命令,dsh purge 只是一条被误传的命令。官方入口只有 dsh <名字> / dsh --profile <名字>、dsh web、dsh plugin --profile <名字> <pnpm 参数> 这几类,没有 purge、也没有 clean。所以「清什么」的答案不是某条命令,而是你手动指定要删的文件:会话在 $DSH_HOME/sessions,插件依赖在 $DSH_HOME/profiles/<名字>/node_modules,残留配置是 settings.yaml 与 cordis.patch.yml。

dsh-purge 是清理工具吗?这个 DSH plugin 会像 purge 一样帮我把 DeepSeek Harness 清干净吗?

不会——dsh-purge 不是清理工具,而是一款社区 DSH plugin,定位为破甲(jailbreak)提示词管理,改的是默认副本、权限策略与工具限制。它虽然自带 dsh-purge 命令与 /purge、/rules 斜杠命令,但那些只是插件内部的应用 / 还原补丁指令,既不碰 pnpm 缓存,也不删任何用户数据。把它当「一键清干净」来装,方向从一开始就错了。

DeepSeek Harness 清数据和卸载 DSH plugin 有什么区别?只 remove 插件能清掉数据吗?

不能——清数据动的是整个 $DSH_HOME 里的内容,卸载 DSH plugin 动的是依赖清单与加载清单,两者互不替代。摘插件走 dsh plugin --profile web remove <包名>,只摘掉这一个包;会话日志、settings.yaml、密钥与别的插件全都原样保留,还会留下 cordis.patch.yml 里的覆盖行。想彻底重置,必须在卸插件之外另行删除数据目录。

什么时候该清 DeepSeek Harness 的数据?误删 $DSH_HOME 里的会话和配置还能恢复吗?

只有你确定要回到全新状态时才该动数据目录,误删后不能恢复——它没有回收站。删之前唯一能兜底的一步是整体备份:先执行 cp -r "$DSH_HOME" "$DSH_HOME.bak",出问题把副本拷回即可。日常只想摘掉某个插件,永远只走 remove,别碰整个数据目录。

想彻底清掉一个 DSH plugin,不用 purge 的话官方支持怎么删?文件层该动哪个目录?

走官方支持的 remove,而不是文件层硬删——dsh plugin --profile web remove <包名> 会同时把包从依赖和 dsh.profile.bundles 摘掉。真要文件层兜底,只能删它所在的 profile 目录 dsh 会重建:rm -rf "$DSH_HOME/profiles/web",下次 dsh web 自动重建全新 profile,但装过的第三方插件都要重装。手删 node_modules 而不动清单,启动时仍会去找那个包并报找不到。

相关术语

dsh purge
dsh purge 不是 DeepSeek Harness 官方 CLI 的子命令,官方入口只有 dsh <名字> / dsh --profile <名字>、dsh web 与 dsh plugin --profile <名字> <pnpm 参数> 这几类,没有 purge、也没有 clean。搜索里出现的 dsh purge,要么指社区插件 dsh-purge,要么是「清数据」这个动作的口头说法。— dsh CLI README(入口模式、profile 与 dsh plugin 转发)
dsh-purge
dsh-purge 是一款社区 DSH plugin,定位为破甲(jailbreak)提示词管理插件,修改默认副本、权限策略与工具限制,并用 Rules 卡片给补丁分组。它自带 dsh-purge 命令与 /purge、/rules 斜杠命令,但那是插件内部指令,既不是宿主 CLI 子命令,也不做磁盘清理。— dsh-purge 插件条目
$DSH_HOME
$DSH_HOME 是 DeepSeek Harness 的用户数据目录,未设置时默认为 ~/.dsh,保存 settings.yaml、.credentials.yaml、sessions 会话日志与 profiles 下各 profile 的插件依赖。它是「清数据」操作的唯一目标,删除不可逆。— dsh CLI README(入口模式、profile 与 dsh plugin 转发)
dsh plugin remove
dsh plugin remove 是 DeepSeek Harness 卸载插件的命令,完整形态为 dsh plugin --profile <名字> remove <包名>,在移除 pnpm 依赖的同时把该包从 profile 的 dsh.profile.bundles 加载清单里摘掉。它与清数据的本质区别是只动一个插件的登记,不碰数据目录里的会话与配置。— dsh CLI README(入口模式、profile 与 dsh plugin 转发)

来源