dsh-purge-pro:面向 DSH 0.2.1-rc.2 的 dsh-purge 适配分支

前言

在 DeepSeek Harness(DSH)上做红队或策略评测时,常见误判是:模型「拒绝回答」其实来自宿主层的提示词改写、审批门或沙箱策略,而不是模型本身。要在本机把「宿主策略」和「模型行为」拆开观察,需要能查看补丁状态、按需应用/还原,并管理注入提示词与规则集的工具。

上游 YuJunZhiXue/dsh-purge 的 1.1.71 主要面向 dsh 0.2.0-rc.2;在 0.2.1-rc.2 上会有 4 个补丁锚点(#32 / #40 / #53 / #77)对不上,被静默标为「跳过」。维护者 feeling6667 在 GitHub 提供分支 feeling6667/dsh-purge-pro(社区目录:SkillHub 插件页),版本 1.1.72-dsh021,说明中标注适配 DeepSeek Harness 0.2.1-rc.2 与破甲内核 v3,并修正上述补丁与 dsh.client.inject 中的客户端依赖。下文介绍其定位、能力与安装用法;安装与 CLI 表述以仓库 README 为准。

这是什么

dsh-purge-pro 是装在本机官方 DeepSeek Harness 上的网络安全红队评测插件(npm 包名仍为 dsh-purge,与上游同名)。它不改 Harness 源码树,通过补丁与配置作用于本机已安装的 @deepseek-ai 包与 profile;支持官方 Web(dsh web,profile web)与官方桌面 EXE(profile desktop),两边需分开安装、分开点「应用」。

插件在会话标题旁提供 dsh-purge 侧栏,内含「清洗」与「演练台」两页:清洗侧负责补丁分组状态、应用/还原/卸载、提示词与多套规则;演练台在授权后用于本机资产、技能与环境相关能力,README 明确要求仅用于有权管理的本机、离线靶标或书面授权的演练环境。

相对上游 1.1.71 的适配点

本副本基线为上游 1.1.71,发行版本号为 1.1.72-dsh021,README 标明面向 dsh 0.2.1。相对只适配 0.2.0-rc.2 的上游版本,fork 侧说明已将失效的 #32 / #40 / #53 / #77 重新对齐,并修正 dsh.client.inject 里错误的客户端依赖。更细的改动清单与复现步骤见仓库内 适配说明-0.2.1.md。

若要自行核对仓库与安装结果,README 给出两条验证命令(需在克隆后的仓库目录执行,且已安装 Node.js ≥18;Windows 无闪窗场景 README 要求 Node ≥22):

node scripts/verify-pro.mjs --repo

装前对比「上传的」与本地副本是否一致。

node scripts/verify-pro.mjs --check

装后检查宿主相关文件是否与随包基线逐字节一致。说明文档:docs/验证-同效果.md。

核心能力(README 已写明部分)

区域 作用
清洗 分组查看补丁;应用、还原、卸载;编辑提示词;管理多套规则集
演练台 正式版内置;完成授权声明后使用;未授权时入口标「未授权」
宿主策略 调整默认文案、权限策略与工具上限;保留官方能力,不另造身份
启动时 自动检查并再应用;npm 升级覆盖 node_modules 后无需手改文件

身份与注入:在「清洗」里点「应用」才写入变更;默认身份来自插件内加密提示词(提示词框默认展示),不读取宿主磁盘上的提示词文件。定位 $DSH_HOME 的顺序为环境变量 → dsh 启动器旁的 .dsh → ~/.dsh。

写进 profile 不会立刻改宿主。按 README:dsh-purge → 清洗 → 应用;成功会重启宿主,未完成应用则不重启;重启后新开一轮对话,注入才进入当前会话。

安装与启用

环境要求:Node.js ≥18(Windows 无闪窗需 Node ≥22)。Hub 一键安装与命令行安装均使用 npm 包 dsh-purge。

Web(官方 dsh web)

dsh plugin --profile web add dsh-purge

桌面端(官方 EXE)

dsh plugin --profile desktop add dsh-purge

若当前工作目录已是 dsh-purge-pro 仓库根目录,将包名改为本地路径:

dsh plugin --profile web add .
dsh plugin --profile desktop add .

dsh 不在 PATH 时按 README「手动安装」一节操作。npm registry 不可用时,README 示例为同一 --profile 下将安装目标换成上游 tarball 地址(fork 使用者若从 feeling6667/dsh-purge-pro 获取源码,应以该仓库 README 与 SkillHub 页的安装指引为准,勿与上游 tarball 混用除非文档明确说明)。

安装完成后,按上文路径进入侧栏执行 应用,并新开对话验证注入是否生效。

典型用法

图形界面:会话标题旁 dsh-purge → 清洗 → 查看补丁组 → 应用(或 还原 / 卸载)。卸载也可在清洗页确认,或使用:

dsh-purge --uninstall

命令行与聊天指令(摘自 README):

dsh-purge --status
dsh-purge --apply
dsh-purge --revert
dsh-purge --uninstall
dsh-purge --edit
/purge status | apply | revert | uninstall | edit | help
/rules list | use <id> | create <id> | delete <id> | reset | help
/skills list | import <压缩包或文件夹> | create <id> [说明] | delete <id> | help
/rewind

插件在 cordis.patch.yml 中注册,常见配置字段包括 enabled、autoApplyOnStart、postPrompt 等(完整片段见 README)。

运行时数据目录(未设 DSH_HOME 时按前述顺序解析)可包含 prompt-inject.md、rules/、skills/、net-scope-allow.txt、redteam/ 等;Web 与桌面各用各自主目录。

适用场景与注意

适合谁:在本机已安装官方 DSH、需要在自有 Harness 环境上做策略与红队向评测、并希望与 0.2.1-rc.2 对齐补丁行为的开发者或安全研究人员。

合规与权限:README 强调插件只处理本机官方包与配置,不是公网扫描器或针对第三方站点的攻击套件;演练台与评测范围须限于合法授权环境。项目采用 MIT 许可证;借用上游思路或代码须按 README 署名要求标明来源 YuJunZhiXue/dsh-purge。插件以当前 dsh 进程权限运行,安装与应用补丁前请自行审阅源码与许可证。

生态说明:DSH 社区插件目录(如 SkillHub)为独立站点,与 DeepSeek / 幻方无官方从属关系;dsh-purge-pro 为社区 fork,不等同于上游仓库的维护状态。上游 README 曾注明维护暂停,不影响你按需选用本 fork 的 1.1.72-dsh021 进行 0.2.1 适配,但跟进未来 dsh 版本仍需以该仓库更新为准。

结尾

若你已在 0.2.1-rc.2 上遇到上游 dsh-purge 补丁被跳过的问题,dsh-purge-pro 把锚点与客户端注入依赖拉回可应用状态,并保留清洗侧栏、提示词/规则集管理与 CLI、聊天指令等既有工作流。目录与源码:SkillHub:feeling6667/dsh-purge-pro、GitHub:feeling6667/dsh-purge-pro。

羽毛球分组比赛记分
小程序二维码

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

Xiaoye