中文EN

dsh-chat-index

ui装不上npmMIT

DSH Web UI 会话提问索引:右缘时间比例圆点窄条与可展开链面板,展示每次用户提问的问题与时间,含分支/子会话;点击节点跳转并高亮对应消息。

下载量 / Downloads
748
测试时间 / Tested
2026-11-07
DSH 版本 / Version
0.2.2-rc.1

安装

dsh plugin --profile web add dsh-chat-index

沙箱测试结果

阶段结果
1 安装✗
2 列装—
3 挂载—
4 启动—
第一条错误
dsh: initialized profile web at /home/node/.dsh/profiles/web

四阶段在隔离沙箱里跑:安装(有网)→ 列装 → 挂载 → 启动(后三步断网)。

README

dsh-chat-index

A per-session question index for the DeepSeek Harness Web UI (dsh web): a thin
time-proportional dot rail on the right edge of every conversation, plus an
expandable chain panel. Every user question is a node with its text and time —
including questions in branch/subagent sessions — click any node to jump to
that message and briefly highlight it.

![npm version](https://www.npmjs.com/package/dsh-chat-index)

![license](LICENSE)

![release](https://github.com/kk112222/dsh-chat-index/releases)

![CI](https://github.com/kk112222/dsh-chat-index/actions/workflows/ci.yml)


功能 / Features

  • 右侧圆点窄条(rail):每个提问一个圆点,按真实提问时间间隔分布

(顶部 = 最早,底部 = 最近);点击圆点 → 聊天区滚动定位并短暂高亮;

按住上下拖动可快速滑动,拖动时右侧浮出该提问的摘要小窗;条顶显示提问数。

  • 链面板(chain):会话标题行最右的常驻 ≡ 开关,或窄条底部 ⇱,

展开链视图 —— 每个节点显示问题摘要 + 时间;分支/子会话以子树

挂在主会话下(节点可点击,先切换到对应会话再定位高亮);✕ 收起。

  • 空会话不显示窄条,但 ≡ 始终可用(面板显示"还没有提问")。
  • 数据源:当前会话实时快照 + 持久历史(session.history 分页),换会话自动重建。
  • 纯前端实现,host 仅保留最小 loader 入口。
  • 与已有同类(dsh-question-nav、dsh-chat-rail、dsh-chat-index-rail)的差异:

链面板 + 分支会话子树 + 时间比例分布。

截图 / Screenshots

右侧提问窄条(rail) · 链面板(chain,含分支子树)

![右侧提问窄条](docs/rail.png) · ![提问链面板](docs/panel.png)

均为实际运行截图(点击图片可放大)。docs/ 下另存有两张同风格的 SVG 设计稿
(preview-rail.svg / preview-panel.svg),供文档或宣传图复用。

安装 / Install

通过 DSH 官方插件通道安装(npm 发布后可用):

dsh plugin --profile web add dsh-chat-index
手动安装(无需联网,便于本地调试):把本包放进 profile 依赖目录,并在
~/.dsh/profiles/web/cordis.patch.yml 追加:
```yaml
- insert:
- id: chat-index
name: 'dsh-chat-index'
```
无需重启服务,刷新页面即可。注意:手动通道与官方通道二选一,避免双重挂载。

使用 / Usage

1. 打开任意会话 → 右侧出现窄条(有提问时)。

2. 点圆点 / 按住拖动 → 跳到对应提问并高亮。

3. 点标题行右侧 ≡(或窄条底部 ⇱)展开链面板;点节点跳转,✕ 收起。

4. 会话内开关状态各自记忆;刷新页面后默认收起。

开发 / Development

node scripts/build.mjs        # 生成 lib/client.js(src/client/* 拼接)
node scripts/smoke.mjs        # 离线冒烟测试(模拟 DSH 模块加载器)
npm run check                 # build + 语法检查 + smoke

结构:

src/client/  客户端源码片段(纯 JS,无 JSX/TS)
             00-libs 01-style 02-utils 03-data 04-components 05-apply
lib/         发布产物(lib/index.js 宿主入口 + lib/client.js 浏览器模块)
cordis.patch.yml    DSH bundle patch(loader 挂载行)
scripts/      构建与冒烟脚本

发布 / Publishing

  • 版本:bump package.json 的 version(semver)。
  • 推送 tag(如 v0.1.1)会触发 [.github/workflows/publish.yml](.github/workflows/publish.yml)

自动 npm publish(需在仓库 Settings → Secrets → Actions 配置 NPM_TOKEN,

值 = 一个 npm Automation 令牌;令牌须带 npmjs 的 2FA 绕过能力)。

的 data/plugins/kk112222__dsh-chat-index.yml,指向本仓库,一般无需改动。

License

[MIT](LICENSE) © xiaoshuai111

以上内容来自 npm 上的 README,我们只做格式化,不改内容。

版本

npm 上共发布:2,最后更新 2026-09-13

链接

GitHub · Homepage · npm

同类插件