dsh-turn-quote:按轮次把本会话上文 @ 回输入框

前言

在 DeepSeek Harness(DSH)里长聊久了,需求常常会漂移:模型沿着后来的追问一路改方案,最初那条需求或当时达成的结论反而被冲淡了。常见补救是复制旧消息贴回去,或者靠记忆口述「还是按第二轮说的做」——既慢,也容易和原文对不上。

下面介绍客户端插件 dsh-turn-quote(维护者 bzsang,GitHub 仓库 bzsang/dsh-turn-quote)。它把本次会话前文的某一轮问答,通过 @ 或输入框旁的引用按钮,以紧凑标签形式写进当前草稿;发送时展开为引用块,把原文一并交给模型,用于「重新锚定」上下文,而不是回退或删除历史。

这是什么

dsh-turn-quote 属于 DSH 生态中的客户端类插件(纯浏览器端,Host 侧仅有空 apply)。一句话定位:按对话轮次引用当前会话自己的前文,不是按选中文字,也不是引用别的会话或别的 AI 的历史。

它与「选中一段文字再引用」类插件不同:无需手动框选,列表按 第N轮·我 / 第N轮·助手 整条引用。与会话回退类插件也不同:不撤回、不删任何一轮,只在新消息里附上那一轮的原文。

当前 package 版本为 0.1.0,许可证 MIT(© 2026 王国栋)。社区目录页:skillhub.cn/plugins/bzsang/dsh-turn-quote。

核心功能

@ 菜单中的「对话上文」

在输入框输入 @ 后,菜单顶部会出现 Earlier turns / 对话上文 分组,按时间倒序列出本会话已加载的每一轮:

  • 第N轮·我:第 N 轮你发送的内容(仅真人输入,不含系统上下文、技能目录、注入的运行时信息)。
  • 第N轮·助手:第 N 轮助手的回答(同一轮多个步骤合并为一条)。

选中后草稿里只显示一个小标签(chip),光标停在标签后,可继续写新问题;支持连续 @ 多个轮次。

引用按钮

安装并重启 profile 后,输入框左侧会出现 “ 按钮。点击可在光标处插入 @ 并打开同一套菜单,与敲 @ 等价。

发送时的展开格式

发送时,标签经官方 chip 通道序列化为引用块,例如:

【引用上文 · 第2轮 · 我】
<那一轮的原文>
【/引用上文】

(你的新问题)

过滤与限制

  • @ 后继续输入可过滤:轮次(如 2、第2轮)、说话人(我 / 助手)、或原文关键字。
  • @"..." 仍为 DSH 官方路径引用语法,本插件不处理引号形式。
  • 单条引用最多 4000 字,超出会注明省略字数。
  • 列表仅覆盖当前会话已加载的历史;尚未载入窗口的久远消息不会出现。
  • 引用内容会作为本条消息的一部分进入会话记录(对模型、回放、fork 均可见),这正是「重新提交上下文」的语义。

安装与启用

要求 DeepSeek Harness 版本:

>=0.2.1-rc.5 <0.3.0

安装命令(须指定你的 profile):

dsh plugin --profile <你的 profile> add dsh-turn-quote

装好后重启该 profile,或重启 DSH 桌面端,即可看到输入框左侧的 “ 按钮。

典型用法

  1. 发现当前讨论偏离最初需求时,在输入框敲 @(或点 “)。
  2. 在 对话上文 里选 第N轮·我 或 第N轮·助手,草稿中出现标签。
  3. 在标签后写上纠正方向或新问题,发送。
  4. 模型收到的消息中包含展开后的引用块与你的新文字,便于以原文为准继续。

若轮次较多,可在 @ 后输入 第2轮、助手 或关键词缩小列表。

实现要点(供开发者参考)

插件通过 ctx.inputTriggers.registerSource() 注册 @ 触发源,与官方 @文件 / @会话 等同菜单共存;选中项走 slash/input-insert-reference;发送时由 chip 的 codec.serialize() 展开。候选数据来自 Session Controller 已加载的事件窗口(sessions.binding(id).eventSource),无新增 RPC。

适用场景与注意

适合:长会话里需要把某一整轮问答原样拉回当前消息、纠正跑偏而不删历史的开发者或日常用户。

安全与权限(README 原文):

  • 不含网络请求、不上传数据;读到的会话内容只写回你自己的输入框与消息。
  • 插件以完整权限运行第三方代码;本包不调用系统命令、不读写工作区文件。

DSH 生态原则是「一切皆插件」;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。安装前应自行查看 GitHub 源码 与 MIT 许可证。

结尾

dsh-turn-quote 解决的是「按轮次引用本会话前文、附带发送、不破坏历史」这一具体动作。与选文引用、跨会话引用、会话回退相比,边界在 README 的对比表里写得很清楚:按轮次引用,而不是按选中文字;是引用,不是回退。

  • 目录页:https://www.skillhub.cn/plugins/bzsang/dsh-turn-quote
  • 源码与说明:https://github.com/bzsang/dsh-turn-quote
羽毛球分组比赛记分
小程序二维码

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

小夜