dsh-sqy-rewind:回退 DSH 会话到指定轮次

前言

在 DeepSeek Harness (DSH) 的使用过程中,有时需要撤销已发送的某一轮对话,而不希望重启整个会话或清空历史。dsh-sqy-rewind 插件提供了将当前会话回退到用户发起某一轮对话之前的能力。

它是什么

dsh-sqy-rewind 是一个 DeepSeek Harness 插件,由 LUDIWUSI12138 维护。它专注于解决会话回退的问题,属于「记忆」类别的插件。

核心功能

插件主要实现以下能力:
1. 会话回退:把当前会话退回某一轮对话发起之前。
2. 模型遮蔽:使用 surface replace 就地遮蔽历史,从模型视角看,该轮次等于没发生过。
3. 界面同步:插件会自动把被回退的轮次从界面上隐藏。
4. 日志保留:不修改 DSH 本体源码,原始日志一条不删。
5. 按轮次操作:支持按 turn 号隐藏 DOM 节点。
6. 依赖投影:依赖 turnOutline 投影。
7. 自动停止:回退操作会先停掉正在跑的一轮。

安装与启用

插件通过命令行安装,安装后必须重启 DSH 才能生效。

安装命令

dsh plugin --profile desktop add github:LUDIWUSI12138/dsh-sqy-rewind

验证安装

重启 DSH 后打开会话,在每条用户消息下面,应该能看到与「复制」并排的回退图标。

使用方法

市场安装

在 DSH 插件市场搜索 dsh-sqy-rewind 即可一键安装。

CLI 安装

使用上述命令行进行安装。

API 调用

通过 API 调用回退操作:

POST /plugins/dsh-sqy-rewind/api/rewind

Body:

{
  "sessionId": "string",
  "turn": "number"
}

界面操作

在 DSH 界面中,每条用户消息下方会出现回退图标。点击第一次会弹出提示,点击第二次确认回退。

注意事项

  1. 不可逆:回退操作不可逆。
  2. 模型痕迹:模型上下文中会留一行中文说明(例如:「用户已回退这一轮对话」)。
  3. 压缩限制:如果目标轮次的起点已经被压缩(compaction)吸收,回退会被拒绝。
  4. 边界逻辑:边界是按「模型可见顺序」找的,不是按 seq 比的。
  5. 非官方实现:按钮是 DOM 注入的,不是官方 slot。
  6. 影响范围:只影响模型历史和本插件隐藏的那些轮次。
  7. 依赖项:依赖 turnOutline 投影。
  8. 运行状态:回退会先停掉正在跑的一轮。

短结尾

dsh-sqy-rewind 为 DSH 提供了会话回退能力,在调试和交互过程中可以避免重启会话。相关代码与文档位于 GitHub:https://github.com/LUDIWUSI12138/dsh-sqy-rewind。

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

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

小夜