dsh-chat-toc (DSH 对话目录与原生小地图增强)
English · Español
DSH Web GUI 的对话导航与大纲增强插件:深度赋能官方原生 Turn Rail 导航轨,告别冗余平行的第二条轨道,100% 融入原生界面。提供悬停卡片双向预览(用户提问 + AI 核心回答)、单条收藏与金光高亮、跨会话持久化、右上角原生扁平小工具栏(搜索 / 收藏过滤 / Markdown 大纲导出)。
功能特性
界面预览
1. 悬停卡片(提问 + AI 核心回复预览,内嵌收藏与复制,右上角扁平工具条):
悬停卡片预览
2. 开启顶部 ⭐ 收藏过滤(已收藏刻度呈金色粒子长条高亮闪耀,未收藏线条淡化):
全轨收藏高亮
环境要求
- 最低版本要求:DSH 宿主 ≥
0.1.5-rc.2(@deepseek-ai/dsh-client-runtime / dsh-client-locale / dsh-client-ui-chat ≥ 0.1.5-rc.2)。peerDependencies 已声明为 >=0.1.5-rc.2 <0.3.0。
本插件依赖以下官方 DOM 契约,它们自 0.1.5-rc.2 起才齐备:
data-chat-flow-kind / data-chat-turn / data-chat-anchor-key(轮次与消息行的权威判据)
data-chat-flow-kind="text" 与 "reasoning" 的区分(用于只取回答正文、跳过思考过程)
- 刻度按钮
aria-label 内的轮次号(chat.turnNavigation.jump)
*_bubble / *_previewPrompt / *_previewResponse(提问文本与官方预览兜底)
- 已验证版本:
0.1.5-rc.2、0.1.6-alpha.1/2、0.2.0-rc.1(当前最新)。
- 兼容官方
0.2.0-rc.1 的破坏性改版:官方在该版删除了 markPosition 类名并把刻度改为虚拟化渲染。本插件已改为以刻度按钮自身为锚点,新旧两代通用;并因虚拟化改为每次重新读取,绝不缓存刻度元素引用。
- 接入方式:以官方数据属性(
data-chat-*)与 aria-label 为主要判据,不依赖易变的 CSS Module 哈希;仅在确有必要时使用「哈希前缀 + 下划线」形式的类名子串。
- 依赖:纯前端增强,无需任何其它插件,无宿主侧服务,无需额外配置。
安装方式
dsh plugin --profile web add dsh-chat-toc
安装或更新后,刷新 dsh web 页面即可无缝体验。
本地开发时可用 dsh plugin --profile web add link:/path/to/dsh-chat-toc 以链接方式安装,修改源码后 npm run build 并刷新页面即可生效。
反馈
使用中遇到问题或有功能建议?欢迎到 GitHub Issues 提交反馈,感谢支持!
License
MIT