Max-Null/dsh-chat-rail

Max-Null★ 1TypeScript最后同步: 2026-08-21

在 GitHub 打开

画卷式消息导航栏:右侧竖条 hover 展开画卷,scroll-spy 高亮居中跟随,与 better-sidebar 双面板动画同步避让

README 摘要

@max-null/dsh-chat-rail 面向 DeepSeek Harness 的 画卷式消息导航栏 :会话面板右侧的一条竖排导航,每条用户消息一个指示点,scroll-spy 跟随阅读位置,hover 展开画卷查看消息列表,点击跳转任意历史消息。 不同于市面上"面板弹出式"的导航插件,dsh-chat-rail 采用 画卷式展开 :收起时是一条干净的竖条,hover 时从右往左平滑展开,像打开画卷一样。 截图 展开态(画卷 + 消息预览 tip) 收起态(与 better-sidebar 共存) 为什么比市面上的导航栏优秀 市面上的会话导航插件(chat-timeline / milestone / msg-nav / turn-rail…)大多只做"指示条 + 点击跳转",在真实使用中有一堆体验问题。dsh-chat-rail 针对每一个问题给出了答案: 能力 市面同类 dsh-chat-rail 与侧边栏/底栏共存 ❌ 展开时与 better-sidebar 错位、遮挡 ✅ 跟随 CSS 变量动画同步避让 : --dsh-sidebar-width / --dsh-sidebar-height ,与面板共享同一 transition,右栏/底栏展开收起时导航无缝跟随,互不遮挡 展开形态 ❌ 面板突兀弹出,高度错位 ✅ 画卷式展开 :单容器从右往左平滑展开,高度天然一致 阅读位置跟随 高亮点会跑出显示区 ✅ 导航条自动滚动,高亮点持续居中 :无论会话滚到哪里,当前消息的指示点始终在导航可视区中央 切换会话定位 回到顶部 ✅ 自动定位到新会话当前阅读位置 消息预览 浏览器原生 title(与悬停双重提示) ✅ 自绘 tip 面板 :完整内容、动画结束后精准定位、无原生 title 干扰 消息信息 只有预览文本 ✅ 编号 + 相对时间 + 文本三列对齐 :编号固定宽、时间靠右,文本区域最大化且整齐 长会话跳转 干等卡死 ✅ 加载反馈 :跳转远距离消息时显示 spinner + "加载中",收起态只留图标 主题适配 部分 ✅ 全部使用 DSH 主题变量( --dsw-alias- ),浅深色无缝适配 无侧边栏兜底 ❌ 依赖特定插件 ✅ 纯 DSH 环境开箱即用,固定右缘 + 垂直居中 兼容性(重点) - 与 dsh-better-sidebar 深度兼容 :导航栏的右缘和垂直位置跟随 better-sidebar 的 --dsh-sidebar-width / --dsh-sidebar-height CSS 变量,右栏和底栏展开/收起时导航与面板 共享同一段 transition 动画同步移动 ,永不错位、永不遮挡(包括底栏右上角的收起按钮)。 - 无 better-sidebar 也能用 :变量缺失时走 CSS fallback(右缘 12px +…

在 GitHub 查看完整 README →
皮肤/UIdeepseek-harnessdsh-pluginpluginsidebar

分类