欢迎光临
我们一直在努力

dsh-purge完全指南:如何给模型换破甲提示词

dsh-purge完全指南:如何给模型换破甲提示词

【免费下载链接】dsh-purge DeepSeek Harness 破甲:让所有模型都能破甲,不同模型可换不同提示词;默认提示词面向国模「小码酱」。Jailbreak for every model — swap prompts per model. 求 Star 收藏 ⭐ 如要二开,请查看署名要求部分 【免费下载链接】dsh-purge 项目地址: https://gitcode.com/GitHub_Trending/ds/dsh-purge

dsh-purge 是装在本机 DeepSeek Harness 上的破甲插件:把宿主的默认身份包装拆掉,注入一套自己能控制的干净提示词,还能按模型切换规则集。本文拆加密槽、身份清洗、分模型规则集三个机制,再给出从安装到真正生效的完整路径。

dsh-purge 清洗页:补丁应用状态、shim 与备份情况,破甲应用后的第一屏

先划边界:它是,它不是

它是针对你自己机器上已安装官方 Harness 的本机评测插件。它不是公网扫描器。它也不是针对第三方系统的攻击工具。所有补丁与提示词注入只发生在你本机的文件里。

为什么需要它:模型拒绝时,这句话是谁说的

同一个问题,换个模型,开场白、人设、拒绝话术全变。因为 Harness 不只转发问题,它在运行时改提示词、加审批门、固定会话格式。只看「模型答不答」,很容易把宿主拦截误判成模型拒绝。核心矛盾就在这:壳和模型不分家,任何评测都不可信。

核心机制拆解:破甲是怎么做到的

加密槽:默认提示词锁在表里,运行时才还原

为什么提示词要绕一圈?像把一份文件装进保险箱运输:发版时内容变成密文存进表,包里不裸奔。lib/default-prompt-inject.md 被明确排除在 npm 包之外,构建脚本 scripts/embed-default-prompt.mjs 把它 AES-256-GCM 加密、按 96 字符切块灌进 lib/asset-table.js;运行时由 lib/table-read.js 解密还原:

const decipher = createDecipheriv("aes-256-gcm", mixKey(MASK), Buffer.from(IV, "base64"));
// 表里全是密文,解密 + 解压后才是可读提示词

你没自定义过,应用时写入的就是这份内置默认;改过之后,你的文件不会被覆盖。

dsh-purge 提示词编辑框与自己的服务器:破甲注入的默认提示词和本地靶场白名单

身份清洗:宿主身份句被逐句摘除,新人设只挂一次

「破甲后不再自称 DeepSeek 的 AI 助手」,这个行为从哪来?像翻修二手房:不砸墙,只把上一任的铭牌一块块摘掉,水电(工作目录)照留。动手的是 lib/identity.js 里的 stripHarnessPersona,它握着一份宿主默认身份句清单,逐条删除或降级,工作目录信息保留。

壳剥掉后要补新人设,默认值写在 lib/core.js 的身份锁里:

You are the operator persona in prompt-inject (Little Code Sauce / LCS unless
that file names someone else). When asked 你是谁 / who are you, answer with that name only.

三句话讲完:默认人设是「小码酱」(LCS),你在 prompt-inject.md 里另起名它就换名;被问「你是谁」只答这个名字。

还有个老坑:提示词若不去重,每轮组装都会再叠一份副本。所以装配是幂等的——leadWithInject 先用去重匹配器把旧文里的既有副本抠干净,再把提示词挂到最前,多轮对话后身份句始终恰好出现一次,长度不漂移。

规则集:换模型就换一套,启用写入 rules/ 互不干扰

一套话术为什么通吃不了?国模和海外模型对人设、语气、拒绝边界的敏感度不同。插件把提示词做成可切换的多套规则集:国模默认套就是小码酱,别的模型再建一套。启用哪套写进 $DSH_HOME/rules/,由 lib/rules.js 管理,聊天里三条命令就够:

/rules list # 列清单
/rules use <id> # 切换
/rules create <id> # 新建

dsh-purge 规则集页面:多套 AGENTS.md 规则集列表,按模型切换破甲提示词

从安装到生效:一条 clone,一次应用

  • 找到真正在用的 $DSH_HOME:按 DSH_HOME 环境变量 → 启动器旁的 .dsh → ~/.dsh 的顺序确认。
  • git clone https://gitcode.com/GitHub_Trending/ds/dsh-purge "$DSH_HOME/plugins/dsh-purge",目录名必须是 dsh-purge。
  • 给正在用的 profile 的 package.json 追加两处(先备份):dependencies 加 "dsh-purge": "file:../../plugins/dsh-purge",dsh.profile.bundles 末尾追加 "dsh-purge"。
  • cd "$DSH_HOME/profiles/web" && pnpm install,只装依赖,别动别的文件。
  • 「装好」节点:完全退出宿主(托盘也要退),重开后会话标题旁出现 dsh-purge 按钮。
  • 点按钮 → 清洗 → 应用,成功后官方桌面端会自动重启一次。
  • 「真正生效」节点:新开一轮对话,发 /purge status,能打出你的 DSH_HOME 和补丁列表才算注入进了会话。
  • 多入口各一行:Web 走上面步骤,桌面把 web 换成 desktop 再走一遍,CLI 用 dsh-purge –apply。完整手动步骤见 README.zh-CN.md。

    三个最容易踩的坑:应用、分端、版本档

  • 应用不等于生效。 点应用只把补丁写进磁盘,当前进程还是旧的;重启宿主、新开一轮对话,注入才进会话。
  • Web 和桌面是两份。 两个 profile 分开装、分开应用,在 Web 里点应用不会动桌面,点错端只会发现按钮不出现。
  • 版本要对档。 1.1.78 只适配 DSH 0.2.x,宿主还是 0.1.x 就得回 Releases 找 1.1.39 及更早的版本;补丁对不上只会显示跳过,不会乱改文件。
  • 安全边界与合规:哪些目标能碰,哪些不能

    破甲的对象只限你有权管理的本机官方 Harness,演练台只用于本机、离线靶标或已书面授权的演练环境。网络侧的硬门在 lib/net-scope.js:开源版攻击任务默认全拦,只放行本机回环与 RFC1918 私网,域名先解析再判,hosts 指到公网也会拦。项目按 Apache-2.0 现状提供,全部输入输出后果由使用者独立承担。

    下次模型再拒绝,别急着猜:先跑 /purge status 核对补丁状态,再看这轮的身份句来自壳还是模型——这是可以核对的事实。

    【免费下载链接】dsh-purge DeepSeek Harness 破甲:让所有模型都能破甲,不同模型可换不同提示词;默认提示词面向国模「小码酱」。Jailbreak for every model — swap prompts per model. 求 Star 收藏 ⭐ 如要二开,请查看署名要求部分 【免费下载链接】dsh-purge 项目地址: https://gitcode.com/GitHub_Trending/ds/dsh-purge

    创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

    赞(0)
    未经允许不得转载:171主机测评 » dsh-purge完全指南:如何给模型换破甲提示词
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址