kezboardpj/dsh-chat-nav

kezboardpj★ 2JavaScript最后同步: 2026-08-22

在 GitHub 打开

README 摘要

dsh-chat-nav 对话问题导航 — 为 dsh(DeepSeek Harness) 开发的 Web UI 客户端插件:聊天视图左侧一条导航栏,每根横条对应一条真实发送的用户问题,悬浮有波浪反馈与内容预览,点击平滑跳转到对应消息,长会话自动补齐历史。 dsh(DeepSeek Harness,GitHub)是一款"万物皆插件"的 DeepSeek 智能体框架。本插件是它的第三方插件,从 ZCode 桌面端的同款功能移植而来。 功能特性 - 问题导航栏 :对话列左侧一条悬浮竖轨,每条真实已发送的用户问题一根横条(排队介入的消息也会收录);当前视口内的问题条自动高亮,并保持居中 - 悬停波浪 :横条按与指针的距离伸缩(2.6 / 1.7 / 1.25 倍),150ms 缓动,跟随系统「减少动态效果」设置自动关闭动画 - 内容预览 :悬停弹出预览卡,提问最多 2 行、回答最多 3 行;未开始回答 / 正在作答时显示占位文案 - 点击跳转 :平滑滚动定位到对应消息;目标在更早页(未加载)时自动逐页补拉后再精确锚定,锚点挂载超时兜底 - 历史补齐 :会话打开后后台逐页拉取全部更早历史(50 条/页),失败按 250ms / 1s 退避后终止;页面上滚到接近顶部时也会主动预取更早内容 - 可自定义 :设置 → 通用设置 → 「横条长度 / 条目间距」,实时生效并持久化 安装 需要先安装并运行 dsh(Web UI profile)。 安装后重启 dsh(客户端 bundle 在启动时加载)。 使用 打开任意会话,发送至少两条消息后,导航条出现在对话列左侧: - 悬停横条查看该问题与回答的预览 - 点击横条跳转到对应消息 - 当前阅读位置的高亮自动跟随 定制外观:设置 → 通用设置 → 「对话问题导航」,可调整横条长度(8–48px)与条目间距(6–40px),修改即生效。 实现说明 纯客户端插件(浏览器半),宿主半为零依赖占位: - 通过 shell.overlay 插槽挂载到 dsh Web UI,定位跟随对话区域(侧边栏/对话分界线右侧) - 数据来自 ctx.sessions 会话快照( chat.nodes ),跳转/滚动基于稳定 DOM 属性( [data-conversation-scroll] 、 [data-chat-anchor-key] )与官方同款 flowTop 几何方案 - 无状态管理框架依赖:localStorage 持久化配置,SnapshotStore 订阅驱动更新 与 ZCode 原版对照 特性 ZCode(原版) 本插件 悬停波浪 距离 → scaleX 2.6/1.7/1.25/1 同参数移植 预览裁剪 220 字符 / 2 段 + 省略号 同规则 预览布局 提问 2 行 / 回答 3 行 同 跳转 直滚 → 补拉 → rAF…

在 GitHub 查看完整 README →
Agent/智能体conversation-navigatordeepseek-harnessdshdsh-plugindsh-plugin-marketdsh-pluginsweb ui

分类