READMESource: main@9a0dd942
dsh-turn-jump — DeepSeek Harness 会话轮次悬浮跳转条
ChatGPT 同款体验 · 右侧极简刻度线 · 悬停提问摘要气泡 · 视口联动平滑跳转
dsh-turn-jump 是为 DeepSeek Harness (DSH) Web 控制台打造的会话轮次快速跳转与导航插件。在对话视图右侧常驻显示极简刻度线,鼠标悬停时平滑展开每一轮提问的文本摘要,点击即可毫秒级平滑定位到历史消息。
✨ 核心特性
- 🎯 ChatGPT 同款极简刻度:默认在屏幕右侧居中展示精致细横线(Tick Lines),完全不挤占对话正文与侧边栏。
- 💬 智能提问摘要气泡(Hover Popover):鼠标划过刻度条时,自动浮现白底毛玻璃卡片,实时提取每一轮用户的真实发言摘要。
- 👁️ 视口与滚动实时联动:随用户浏览上下滚动,当前阅读的轮次自动加长加粗并高亮(浅色模式下呈现
#ececec浅灰胶囊选中态)。 - ⚡ 运行状态呼吸指示:处于生成/思考中的轮次带有橙色呼吸指示点,状态一目了然。
- 🚀 毫秒级平滑跳转:点击任一刻度线或气泡条目,通过
scrollIntoView平滑滚动并精准对齐该轮次首条消息。 - 🎨 主题自适应:原生适配 DSH 浅色与深色主题,浅色纯净白底黑字、深色暗灰毛玻璃。
- 🪶 零外部运行时依赖:纯基于 Cordis 框架标准套件与 React 客户端运行,体积仅 ~13KB。
📸 交互效果
| 状态 | 表现形式 | 说明 |
|---|---|---|
| 平时状态(默认) | 右侧细横线刻度条 | 极简低干扰,当前视口所在轮次加长高亮 |
| 鼠标悬停(Hover) | 浮动白底气泡菜单(Popover) | 展开当前会话各轮次的真实提问摘要,当前轮次浅灰底高亮 |
| 点击跳转(Click) | 平滑滚动对齐(Smooth Scroll) | 视口平滑移动至目标轮次,不突兀、不卡顿 |
📦 安装与使用
方式一:通过 GitHub 仓库安装(推荐)
在 DSH 环境中直接运行:
dsh plugin --profile web add github:liuGuanYi-hub/dsh-turn-jump
重启 DSH Web 服务即可生效:
dsh --profile web
方式二:本地开发模式关联(Local Link)
如果您克隆了本仓库进行本地修改调试:
git clone https://github.com/liuGuanYi-hub/dsh-turn-jump.git
dsh plugin --profile web add ./dsh-turn-jump
dsh --profile web
📂 项目结构
dsh-turn-jump/
├── lib/
│ ├── client.js # 客户端核心:刻度线渲染、Popover 气泡、文本提取与滚动计算
│ └── index.js # 宿主半边声明(纯客户端插件占位声明)
├── cordis.patch.yml # Cordis Bundle 挂载层配置
├── package.json # 插件元数据与 DSH Client 注入声明
├── LICENSE # MIT 授权协议
└── README.md # 说明文档
🛠️ 技术原理
- 浮层插槽挂载:通过 Cordis 插件生命周期向 DSH 的
shell.overlay(全屏浮层插槽)注册独立组件,与主聊天流完全解耦。 - 状态感知与文本提取:
- 订阅
sessions.binding(currentId).session会话快照,监听chat.timeline.turnOrder轮次更新; - 提取器优先解析该轮次首个节点在 DOM 中的提问文本,兜底回退至 Snapshot Node Content,确保文字摘要精准不乱码。
- 订阅
- 视口计算:监听滚动容器的
scroll事件,动态比对[data-chat-anchor-key]顶部位置与视口标记线,动态响应当前 Active Turn。
📄 开源许可证
本项目采用 MIT License 开源。欢迎提 Issue 与 PR 共建!
No comments yet. Be the first to write one.