Back to marketplace

dsh-codex-timeline

UI & Experience

Wine-Red/dsh-codex-timeline

Codex-style turn timeline and local conversation search for DeepSeek Harness Web: low-distraction navigation rail marking user turns, with hover previews, quick jump, and search.

  • conversation
  • deepseek
  • deepseek-harness
  • dsh-plugin
  • timeline
  • web-ui
GitHub Stars
6GitHub
Views
0DSH Plugin Hub
Forks
0GitHub
Open issues
1GitHub Issues
Manifest version
0.4.1dsh-codex-timeline
Latest push
Aug 22, 2026GitHub
License
MITJavaScript
Plugin type
Host + ClientRuns in both Host and Web Client

README

View source

DSH Codex Timeline

English | 中文

CI npm license

为 DeepSeek Harness Web 长会话提供一个贴在 Chat 正文左侧、低干扰的用户 Turn 导航轨道。它只标记用户发起的轮次,能随正文滚动高亮、快速跳转,并可自动展开全部历史轮次与预览。

界面预览

轨道默认保持安静:每个已加载的用户 Turn 对应一条短横,只有当前阅读位置高亮。鼠标移入后,附近标记以阶梯状展开,便于准确选择;移出后立即恢复紧凑状态。

功能示意图与下方 DSH 实机截图中的提问、回答、指标和搜索结果均为专用测试文案,不包含真实会话内容。

下方两图截取自安装本插件的 DSH 0.1.0-rc.6,展示同一条真实轨道在默认和鼠标悬停时的状态:

功能图中的预览卡片对应实际交互:悬停可查看轮次、状态、耗时、首 token 时间、速度、提问与模型回答;搜索入口会直接展示关键词及其前后文,并可跳转到对应 Turn。

使用路径

  1. 滚动正文,轨道自动指示当前 Turn。
  2. 悬停查看两行提问与两行回答,点击或按 Enter / Space 跳转。
  3. 左侧轨道列出最近 N 轮(默认 25,可在设置 → 插件 → 插件配置中调整);更早轮次点击"加载更早"进入,或在设置中调大显示条数。

兼容性

截至当前版本(0.1.1-rc.2)兼容;请勿在其他 DSH 版本上强行安装,升级 DSH 前先卸载本插件。Node.js ^22.19.0 || >=24.0.0

安装

确认当前版本:

dsh --version

从 npm 安装到 Web profile:

dsh plugin --profile web add dsh-codex-timeline

也可以使用仓库内的版本检查脚本:

powershell -ExecutionPolicy Bypass -File .\install.ps1

安装后重启 DSH Web 进程并刷新页面。可用以下命令确认 bundle 已生效:

dsh --profile web --dump-config | Select-String -Pattern "dsh-codex-timeline|ui-conversation"

输出应包含 # == dsh-codex-timeline;内置 ui-conversation 行应为 disabled: true,并新增 codex-timeline 行,其 namedsh-codex-timeline

从旧的本地覆盖版迁移

如果曾安装过早期同名 Conversation tarball,先删除它,再安装标准 bundle:

dsh plugin --profile web remove "@deepseek-ai/dsh-client-ui-conversation"
dsh plugin --profile web add dsh-codex-timeline

卸载

dsh plugin --profile web remove dsh-codex-timeline

或运行:

powershell -ExecutionPolicy Bypass -File .\uninstall.ps1

重启后,DSH 会恢复使用自带的 Conversation UI。

功能

  • 只为真实用户 Turn 建立标记;工具调用、计划确认、追问 UI、子代理和流式 assistant chunk 不增加噪声标记。
  • 当前项随 viewport 更新;用户向上阅读时,流式内容不会强制拉回底部。
  • 鼠标悬停时标记以短横阶梯展开并临时高亮;离开后恢复正文当前 Turn。
  • 浮层显示“第 x / y 条”、时间、状态、两行用户提问、两行模型回答,以及数据可得时的本轮用时、首 token 延迟和 tok/s。
  • 点击、Enter 或 Space 跳转;方向键、Home 和 End 可移动焦点;支持 focus-visibleprefers-reduced-motion
  • 顶部三点按钮复用 DSH 正式分页流程加载更早历史;prepend 后使用稳定节点 ID 保持滚动锚点。“加载更早”会显示剩余轮次数量。
  • 左侧轨道显示会话最近 N 轮(默认 25,可在设置中调整 5–50;无需加载正文):间距沿用你设置的"标记间距",所有轮次的标记样式一致(与原来相同),已加载轮次随正文位置高亮当前阅读轮次;未加载轮次由宿主 lite=1 全量索引提供(悬停同样显示两行摘要),点击后链式加载官方历史分页并跳转;更早轮次通过"加载更早"进入。
  • 搜索按钮在浏览器本地检索已加载正文,同时通过宿主 /codex-timeline/search 路由检索完整持久化会话日志,合并展示并高亮关键词上下文;未加载的命中会链式加载官方历史分页后跳转。部署未挂载 sessionQuery 服务时自动退回仅已加载内容搜索。
  • 即使只有一两条用户消息也始终显示时间线(仅在没有任何已加载消息且无更早历史时隐藏),便于从小会话开始即使用导航与搜索。
  • 窄屏使用折叠入口,不遮挡消息、输入框或正文宽度。
  • 设置页(设置 → 插件 → 插件配置)提供启用开关和四个滑块(距左侧距离、向中部偏移、标记间距、显示轮次数量);所有偏好即时写入 DSH settings(settings.yaml),刷新、换浏览器均保持。
  • 左上角的三点/搜索控件固定不动,位置滑块只调整时间线标记列本身。

隐私

摘要、回答预览、hover/focus 状态都只在当前浏览器中从正式 Chat snapshot 计算。全量搜索通过同源宿主路由 /codex-timeline/search 读取持久化会话日志(仅按关键词返回匹配轮次的摘要与上下文窗口),不会发给模型、不会写入遥测,也不会将内容发送到任何第三方。

开发与验证

pnpm install
pnpm run check
pnpm pack --pack-destination artifacts

安装本地 tarball做 profile 契约验证:

dsh plugin --profile web add ".\artifacts\dsh-codex-timeline-0.2.0.tgz"
dsh --profile web --dump-config

lib/client.js 是为 rc.6 生成并锁定 SHA-256 的 compatibility artifact;scripts/prepare-dist.mjs 只做包名与构建路径标准化,scripts/verify-dist.mjs 检查其 slot、observer、交互与哈希契约。src/navigation-model.mjs 保留可独立测试的 Turn 投影与搜索逻辑。上游衍生代码的许可见 NOTICE

升级检查

DSH 升级时不要直接放宽 peer dependency。至少执行:

dsh --version
dsh --profile web --dump-config
pnpm run check
pnpm pack --pack-destination artifacts
pnpm run test

并重新核对:

  1. ui-conversation 配置行和 client module loader 规则;
  2. ConversationTimelineSnapshot、Chat snapshot、Turn location 与稳定节点 ID;
  3. Chat scroll owner、分页 prepend、bottom-follow 和 navigation slot;
  4. settings namespace/scope、locale 和 slot 注入契约;
  5. 暗色/亮色、窄屏、键盘、reduced motion、流式回复、工具密集 Turn、断线恢复和历史加载的真实浏览器行为。

能力不再兼容时,应发布新的独立 adapter 版本;不要让旧版本覆盖未知的 Conversation 实现。

许可证

MIT。本包含有基于 DeepSeek Harness MIT 源码构建的 rc.6 compatibility adapter,详见 NOTICE

Comments

0
Newest first