dsh-reply-forge-v2:把助手回复写入会话落盘,让后续轮次采信改写内容

前言

在 DeepSeek Harness(DSH)里调试智能体时,常见需求是「改一句历史回复,再看模型下一轮怎么接」。如果只改界面上的文字,请求上下文仍来自磁盘上的会话记录,模型读不到你的修改。社区里较早的 dsh-reply-forge(v1)走的是浏览器渲染层覆盖,适合录屏和截图,但不会动落盘文件,大模型也不会把伪造内容当真。

dsh-reply-forge-v2 是维护者 kinggod899 提供的另一条技术路线:在受控条件下改写会话落盘记录(zstd JSONL),使改写进入后续请求的上下文;同时保留「仅本机渲染」出口,刷新即可恢复显示,不破坏对话流程。本文介绍其定位、能力与在 DSH 桌面端的安装用法。插件归类为「记忆」,可在社区目录页查阅条目信息。

这是什么

dsh-reply-forge-v2 是 DSH 桌面端插件(独立仓库、独立插件 id,与 v1 完全独立,并非 v1 的功能升级)。一句话定位:就地改写会话落盘记录里的助手回复,后续轮次读到的是改写后的版本;也支持仅改本机渲染的「假伪造」,刷新后恢复,不影响流程。

仓库:https://github.com/kinggod899/dsh-reply-forge-v2
目录页:https://www.skillhub.cn/plugins/kinggod899/dsh-reply-forge-v2
当前 package 版本:2.2.1(MIT)。

与 v1 的差异

v1(dsh-reply-forge) v2(本插件)
伪造层 浏览器渲染层(localStorage 覆盖) 会话落盘记录(zstd JSONL)
模型是否可见 否 是
落盘文件 不修改 受控改写(带备份/回滚)
典型用途 录屏/演示/截图 让模型采信伪造上下文并继续对话

两个插件可同时分别安装,但同时启用会在每条助手回复下挂出两条操作条;安装脚本默认会从 bundles 摘掉 v1,需要共存时可使用 node scripts/install.mjs --keep-v1。

核心功能(已落地部分)

README 将验收标准概括为三点:DSH 桌面端加载不崩溃;伪造回复进入会话上下文并被模型采信;改写后仍可正常打开会话、流式输出,并可回滚。

截至文档标注的 2026-10-15 状态:

  • v2.0:关闭态落盘改写器(CLI),读取侧与真机重启后模型采信已验收。
  • v2.2:DSH 插件形态(UI 合一),真机重启后 UI 可用(含两条回复的伪造)。
  • v2.2.1:修复会话 id 寻址与记录缓存过期两处真机 bug,需重启 DSH 验证。
  • v2.1(运行态写入)尚未开工。

插件侧能力要点:

  1. 写入内核(session-write.mjs 等):seq+块索引/指纹双寻址、expectText 陈旧校验、剥签名、多帧重组、原子写、写后自读校验。
  2. 插件 host:声明 inject: ['webServer'],apply() 全程 try/catch,避免拖垮宿主启动。
  3. HTTP 路由:读块列表、执行写入;写路由带自定义头与参数校验,业务失败返回 200 + ok:false。
  4. 客户端:在每条助手回复下挂操作条;双出口为「仅本机渲染」与「写入会话记录」。会话 id 来自宿主渲染的 data-conversation-session(URL 中无会话 id);记录比页面旧时自动重读补定位。

另提供 CLI scripts/forge-session.mjs,支持 --dry-run、--restore、--seq、--block-index;DSH 运行中会拒绝写入。

安装与启用

官方说明使用三个一键脚本(双击即可,不执行 pnpm,只改 DSH 启动时读取的静态配置):

文件 作用
安装插件.bat 首次安装:建链接、写依赖、登记 lockfile、加入 bundles
启用插件.bat 已装但被关闭时,加回 bundles
关闭插件.bat 从 bundles 摘掉(保留链接与依赖)

改完配置后必须完全退出并重启 DSH 才生效。

资料中未提供 dsh plugin add github:... 形式的安装命令;请以仓库内上述脚本与 scripts/install.mjs 为准。

典型用法

图形界面(v2.2)

  1. 安装并重启 DSH 后,在助手回复下方使用插件操作条。
  2. 需要模型后续轮次采信时,选择 写入会话记录;仅需本机展示、不落盘时,选择 仅本机渲染(刷新后显示恢复)。

命令行改写(v2.0)

在仓库根目录使用 forge-session.mjs(具体参数以 README 为准):

node scripts/forge-session.mjs

可先 --dry-run 预览,用 --restore 回滚;通过 --seq、--block-index 定位块。DSH 进程运行中时不应执行落盘写入。

开发与自测

运行全部测试:

for f in tests/*.test.mjs; do node "$f"; done

README 记载当前 73/73 通过。

适用场景与注意

适合谁

  • 需要在同一会话里修正或替换历史助手回复,并观察模型在真实上下文下的后续行为。
  • 与 v1 的演示/截图场景互补:v2 面向「落盘 + 模型采信 + 可继续对话」。

务必注意

  1. 插件以当前 DSH 进程权限读写会话落盘数据;安装前请阅读源码与 MIT 许可证,确认接受受控改写与备份/回滚机制。
  2. 写入会话记录会改变磁盘上的会话历史,虽有回滚路径,操作前建议理解 --dry-run 与 --restore。
  3. 社区目录(SkillHub)为独立站点,与 DeepSeek / 幻方无官方从属关系;星标与版本以仓库与目录页为准(目录线索为 0 star)。
  4. v2.2.1 修复项需完全重启 DSH 后验证;v2.1 运行态写入尚未实现,勿按未发布能力规划工作流。

结尾

dsh-reply-forge-v2 把「改回复」从纯 UI 层推进到会话落盘层,使 DSH 智能体开发者在调试记忆与上下文时有一条可验收、可回滚的路径;与 v1 并存但路线独立。进一步了解设计与实证可见仓库内 PLAN.md。

  • 目录页:https://www.skillhub.cn/plugins/kinggod899/dsh-reply-forge-v2
  • GitHub:https://github.com/kinggod899/dsh-reply-forge-v2
羽毛球分组比赛记分
小程序二维码

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

小夜