hemo94931/dsh-timeline

hemo94931★ 0JavaScript最后同步: 2026-08-14

在 GitHub 打开

README 摘要

dsh 会话时间轴插件(Session Timeline) 在 dsh WebUI 会话消息列右缘渲染一条竖直 时间轴 :每条 用户消息 (首轮消息 + steering 追问)一条短横线 刻度 ,悬浮显示消息摘要与序号( 3 / 12 ),点击 跳转 到对应消息(位于视口顶端 + 短暂高亮),▲▼ 按钮逐条导航, 当前刻度 随滚动高亮。颜色使用 dsh 主题令牌,深浅色自适应。 文件结构 - src/model.js — 纯逻辑模型(刻度布局 / 摘要截断 / 导航 / 当前位置插值),不依赖 DOM,可单测 - src/shell.js — DOM 薄壳(选择器读取、scrollTop 写入、React 渲染、监听器生命周期) - build.js — 构建脚本:内联 model + shell → client.js (动态插件函数体)与 lib/client.js (常驻 bundle) - client.js — 构建产物:动态 Cordis 客户端插件的完整函数体( 勿手改 ) - lib/index.js / lib/client.js — 常驻安装包形态:node half(空 apply)+ lazy-CJS 浏览器 bundle( 勿手改 ) - cordis.patch.yml — profile 补丁层:把 ui-timeline 插入浏览器插件花名册 - package.json — 含 dsh.client (web 平台)与 dsh.bundle.patch 声明 - test/model.test.js — 纯逻辑单测(node:test,零依赖) 开发 安装 常驻安装(推荐) 包内的 cordis.patch.yml (经 package.json 的 dsh.bundle.patch 声明)会把 ui-timeline 行插入浏览器插件花名册, 下次启动 dsh web 自动加载 ,无需任何手动激活。卸载: dsh plugin --profile web remove @hemo94931/dsh-timeline 。 注意: dsh plugin add 需要系统装有 pnpm( npm i -g pnpm )。 临时激活(动态插件) 动态 Cordis 插件不随进程重启存活。在任意 dsh 会话中对 agent 说: 故障排查 - 启动报 failed to apply loader entry ... (@hemo94931/dsh-timeline): styles is not defined :常驻 bundle( lib/client.js )过期,缺静态环境的 React / styles prelude。 node build.js 重新构建即可(详见 build.js 注释:静态 loader ent…

在 GitHub 查看完整 README →
工具/开发deepseek-harnessdsh-plugin

分类