dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
让 Harness 里的助手"什么都不懂"且拒绝干活:每次提问后,思考内容变成「我不懂啊……」,回答变成「我不帮你做。」这类短句,所有工具调用都被拒绝,所以它什么也做不了。
plugins/dsh-dumb-mode(就是本目录)~/.dsh/profiles/desktop(desktop profile)
package.json 依赖:"dsh-dumb-mode": "file:D:/Users/陈柏昊/Documents/deepseek-harness/default-workspace/plugins/dsh-dumb-mode"dsh.profile.bundles 末尾加了一项:"dsh-dumb-mode"node_modules/dsh-dumb-mode 是指向本目录的 junctioncordis.patch.yml 提供:id dsh-dumb-mode,并写一行应用日志到 ~/.dsh/dumb-mode.logtext-delta 被替换成一句短句、其余同类型分片丢弃,tool-call-delta 等原样透传注意:pnpm 的 file: 依赖把本目录拷贝到了 profile/node_modules/dsh-dumb-mode,那里是独立副本。改完本目录的源码后,要重跑一次 pnpm install(或手动复制文件过去)再重启 DSH,改动才会生效。
| 位置 | 原本 | 装上之后 |
|---|---|---|
| 思考(Think 折叠区) | 一大段推理 | 我不懂啊…… / 这题我不会。 / 不知道呀。 随机一句 |
| 回答正文 | 完整答案 | 我不知道鸭。 / 这个我不知道鸭。 / 我也不知道鸭。 随机一句 |
| 工具调用 | 正常 | 全部拒绝(ctx.tools.guard() 对每个调用返回拒绝原因),所以任务一件也做不了 |
refuseTasks: true(默认)时,插件注册一个全局 tool guard:任何工具调用都会被拒绝,模型拿到的结果是「装傻模式已开启:我不执行任何操作。」ctx.systemPrompt.section() 注入一段指令,让模型一开始就不去尝试调用工具,省 token。refuseTasks: false。这时工具恢复可用,只是文字被换掉。agent.ctx 上的 tools.restrict()。@deepseek-ai/dsh-llm,它把 stream() 开成 llm/stream waterfall:监听器拿到 (options, next),next() 返回原始 chunk 流,监听器可以返回包装后的流。isAgentLoopRequest(options) 时用它;取不到时退化为「请求带 toolHistory」),因此会话标题生成、上下文压缩摘要这类内部调用保持正常。reasoning-delta 与第一段 text-delta 被替换成一句短语,同类型后续 delta 直接丢弃;tool-call-delta、block-start/end、usage、finish 原样透传。在 profile 的 cordis.patch.yml 里按 id 覆盖(顶层覆盖写法,不是 insert):
- id: dsh-dumb-mode
config:
enabled: false # 临时关掉
refuseTasks: true # 拒绝一切工具调用;设 false 只改文字、恢复干活
refusalReason: "装傻模式已开启:我不执行任何操作。"
refusalPhrases: ["我不会这些东西。", "我不知道鸭。", "我不懂鸭。"]
kaomoji: ["(・_・;)", "(´・ω・`)", "( ̄▽ ̄;)"] # 随机追加的颜文字,留空数组则不追加
instruction: "" # 注入 system prompt 的指令,留空不注入
rewriteAnswer: true # 关掉就只改思考
rewriteReasoning: true # 关掉就只改回答
answerPhrases: ["我不知道。", "这个我不会。"]
thinkingPhrases: ["我不懂啊……", "不会不会。"]
logFile: C:/Users/陈柏昊/.dsh/dumb-mode.log # 留空则不写日志
cordis.patch.yml 加- id: dsh-dumb-mode
disabled: true
package.json 的 dsh.profile.bundles 里删掉 "dsh-dumb-mode"(会热重排,立即停用);dependencies 里删掉对应行,并删掉 node_modules/dsh-dumb-mode 这个 junction;注意:已经被改写的会话不会恢复,历史里存的就是那些短句。
isAgentTurn 排除逻辑去掉即可。这个目录本身就是可直接发布的包:package.json 在仓库根、dsh.bundle.patch 指向 cordis.patch.yml,不需要构建。
发布:
cd dsh-dumb-mode
git init -b main
git add -A && git commit -m "feat: dsh-dumb-mode 0.1.0"
# 在 GitHub 新建空仓库 dsh-dumb-mode,然后:
git remote add origin https://github.com/crychic-Mortis/dsh-dumb-mode.git
git push -u origin main
记得把 package.json 里的 OWNER 改成你的 GitHub 用户名。
别人从 GitHub 安装:
dsh plugin --profile desktop add github:crychic-Mortis/dsh-dumb-mode
# 也可以锁分支或标签:
dsh plugin --profile desktop add github:crychic-Mortis/dsh-dumb-mode#v0.1.0
安装逻辑等价于 pnpm 从 git 拉包:把仓库克隆进 profile、加依赖 + bundle、应用 cordis.patch.yml。要发新版本,改 version 后打 tag 再 push。