DSH Web 聊天区浮动跳转按钮

前言

在使用 DSH Web 进行长对话时,模型输出会自动贴底跟随:回答越长,视图会一直停在最后一行。想从头阅读这一轮的提问,只能逐行向上滚动;而 DSH 原生的「回到底部」只能向下。这两个方向的需求并不互补,因此需要一个显式的「回到问题开头」入口。

seven0813/dsh-jump-button 插件为 DSH Web 聊天区增加两个浮动按钮,分别实现「回到本轮提问开头」和「回到最新输出结尾」。这两个按钮由点击触发,不会改变 DSH 自带的跟随行为,也不会自动跳转。

是什么

这是一个 DSH Web 客户端插件,为对话区提供两个可聚焦、可触发的跳转按钮。

  • 定位:补全 DSH Web 在对话滚动方向上的缺失功能,不依赖服务端,纯前端实现。
  • 维护者:seven0813
  • 解决:让用户在长回答中,无需反复滚动即可快速跳转到问题开头或最新输出结尾。

核心功能

  • ↑ 回到问题开头:将本轮最后一个提问滚动到视口顶部,保留 10px 间距,方便从头阅读长回答。
  • ↓ 回到结尾:回到对话最新位置;若 DSH 原生存在「回到底部」,则复用该功能,并重新进入贴底跟随。
  • 按需显示:仅在有可滚动会话时出现;在新建会话、Plugins 页面、弹窗打开时自动隐藏。
  • 不遮挡交互:按钮固定在右下角,避开原生「回到底部」和右侧轮次导航;当轮次导航较长时自动让位。
  • 流式输出中可用:点击 ↑ 后不会被下一个 token 拖回底部,可继续查看已生成内容。
  • 中英双语:跟随界面语言,包含 title 和 aria-label,支持 Tab 聚焦与 Enter 触发。
  • 纯客户端:无服务端、无配置项、无网络请求,外观跟随 DSH 主题。

安装与启用

官方安装命令如下:

dsh plugin --profile web add dsh-jump-buttons

安装后刷新页面,对话右侧会出现两个圆形按钮。也可以在 Plugins 页面启用或停用。

若需从源码安装(用于本地开发):

git clone https://github.com/seven0813/dsh-jump-button.git
dsh plugin --profile web add link:/absolute/path/to/dsh-jump-button

卸载

dsh plugin --profile web remove dsh-jump-buttons

兼容性

  • 面向 DSH Web 0.2.x
  • Node.js >= 20
  • 行为依赖 DSH 当前会话区的页面结构;宿主大改版后可能需要适配。

适用场景与注意

  • 适合频繁进行长对话、需要快速定位问题开头或最新输出的 DSH Web 用户。
  • 插件以当前 DSH 进程权限运行,安装前建议查看源码与许可证(MIT)。

小结

DSH 的理念是「一切皆插件」。seven0813/dsh-jump-button 在客户端侧补全了对话滚动方向的缺失入口,让长回答的阅读更可控。如需了解安装与源码,可访问:

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

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

Xiaoye