DeepSeek Harness Hub
← 返回列表

聊天滚动节奏TheGoodMorty/chat-pace

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

为 DeepSeek Harness Web UI…

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/19 · 已提供中文文档

DeepSeek Harness Web UI 的可配置聊天自动滚动

综合分
30
GitHub 分
30
用户评分
★ Stars
0
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add TheGoodMorty/chat-pace
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/19(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

chat-pace

为 DeepSeek Harness Web UI 提供的可配置聊天自动滚动——智能体输出永远不会比你阅读的速度更快地飞过。

新增五种滚动模式、屏幕控件、全局热键、完整设置页面,以及按会话记忆阅读位置。它与内置的跟随逻辑协同工作而非取而代之,因此任何模式都可以安全地保持开启。

安装

dsh plugin add TheGoodMorty/chat-pace

然后重启 DSH 服务器(组合配置在启动时读取)并刷新页面。控件会出现在输入框工具栏、输入框停靠区、会话标题栏,以及 设置 → Chat Pace 下。

模式

| 模式 | 行为 |
|---|---|
| Follow | 内置默认:立即跳转到最新输出。 |
| Smooth | 让最新输出保持在视野内,以可配置的 px/s 速度滑动。 |
| Paced | 逐段阅读:滑动到每个已稳定的文本段,暂停 sectionHeight / screenHeight × seconds-per-screen 的时长,然后继续。较高的段落会在暂停期间缓缓穿过自身。在文本段之间,视图会实时跟随工具输出;而当文本段正在写入时,视图保持不动,让文本在折叠线下方未被阅读地到达。稳定时已完全可见的段落会被跳过——它们是在你眼前流式呈现的。 |
| Step | 不自动滚动;每次按下(按钮或热键)前进一段,可选动画。 |
| Hold | 视图被固定;新输出永远不会移动它。 |

“输出段”是指每条已稳定的助手消息(状态为 settled/interrupted 的
assistant-step);工具结果和命令行可以选择加入。

Paced 阅读暂停被限制在可配置的最小值和最大值之间
(最高 80 秒),因此单个超大段落永远不会让视图冻结数分钟,而
较高的段落会以阅读速度缓缓穿过其文本,而不是静止
不动。

控件

- 输入框工具栏 — 暂停/继续、下一段,以及模式菜单(始终可见)
- 输入框停靠区 — 实时状态行和阅读暂停进度条
- 会话标题栏 — 模式菜单按钮
- 设置 → Chat Pace — 所有选项:模式、滑动速度、每屏阅读秒数、暂停限制、段落类型、行为开关、会话打开位置,以及带冲突检测的热键录制器
- 全局热键(默认):F9 暂停/继续,Ctrl+ArrowDown 下一段,Ctrl+ArrowUp 上一段,Ctrl+End 跳转到最新

用户的滚轮/触摸输入会立即从任何自动滚动模式手中夺回控制权;一个可选开关会在你滚回底部时自动恢复。

设置持久化在 localStorage(dsh-chat-pace-settings-v1)中。

会话打开位置

“当会话打开时”(设置 → Chat Pace)决定你打开或切换到某个对话时它落在
哪里:顶部、底部,或我上次离开的位置。每个会话的最后阅读位置会按会话
记忆
在 localStorage(dsh-chat-pace-scrollpos-v1)中,无论此设置如何——
以行锚点加偏移量的形式保存,因此它能经受内容增长和窗口
调整大小——所以之后启用“Where I left it”仍会恢复你在开启它之前
离开的会话。恢复通过定时器运行(而非
requestAnimationFrame),如果你在恢复过程中触碰视图,它会立即让出,
并在 UI 自身的布局恢复面前保持其位置长达
12 秒。

它如何与已发布的跟随逻辑共存

已发布的 ChatView 在读者位于底部时,会在内容增长时吸附到底部,
并在滚动事件显示读者移动时脱离。chat-pace 能识别这些吸附
(伴随 scrollHeight 增长且近期无用户输入而到来的贴近底部的跳变)
并恢复读者的锚点行;该恢复对已发布的处理器来说读作读者移动,因此
它会自行脱离。平滑/有节奏的运动以引擎编写的 scrollTop 值逐帧写入——
对已发布代码而言是普通读者滚动——因此两者永远不会在同一帧上
冲突。读者意图通过滚动视口上的
滚轮/触摸/指针/滚动键监听器来跟踪。

支持

一个最小的只读诊断句柄在页面控制台中暴露为
window.__chatPaceDebug:引擎状态、实时设置(通过 getSettings()),
以及最近引擎决策的有界环形缓冲区(scrollLog)。如果出现异常,
该日志是定位问题的最快方式。

许可证

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群