yth1120/dsh-web-workbench--packages-client-ui-timeline ↗★ 0

@deepseek-ai/dsh-client-ui-timeline

DeepSeek-style 'questions you asked' nav for the dsh web chat: a fixed rail on the chat's right edge that expands to real user messages and jumps to them 适合长对话中快速定位历史提问的用户,悬停展开问题列表。

パッケージ
@deepseek-ai/dsh-client-ui-timeline
互換性
未検証
Harness ピア範囲
workspace:^
Cordis ピア範囲
workspace:^
バージョン
0.1.1-rc.1
ライセンス
MIT
最終更新
2026/08/24

同名パッケージの別リポジトリ

インストール

検証済み bundle がないか、互換性チェックに失敗しています。先にリポジトリの説明を読んでください。 README 全文を読む ↗

ドキュメント

README 全文を読む ↗

@deepseek-ai/dsh-client-ui-timeline

English | 中文

Conversation history timeline for the dsh web GUI: a DeepSeek-style "questions you asked" card pinned to the active conversation's visible chat area (vertically centered, 24px from the right edge, beside the scrollport). It rests as a narrow rounded rail showing only right-edge tick marks — the newest question is brand blue while the others are gray; hovering or focusing expands it to ~300px, revealing right-aligned question rows oldest on top and newest on the bottom, with truncated text and the full message on the native hover title. The current reading position is bold black (brand blue when it is also the newest). The card scrolls internally with the wheel but shows no scrollbar. Clicking a row scrolls the conversation to that message (data-conversation-seq anchor); scrolling the conversation moves the black-bold row to the question currently in view.

The nav occupies ui-conversation's conversation.chat.overlay seat, a session-scoped additive overlay rendered outside the scrolling transcript, so the rail stays fixed while the conversation scrolls (click-through wrapper; occupants opt into pointer events). The rail reads only the in-window node list, so earlier history pages in through the conversation's own loadOlder path.

Extension point

conversation.chat.overlay is a general conversation-surface overlay seat: any package can register a badge, scroll nav, or status strip there, and the overlay wrapper stays click-through unless the occupant opts in. The data-conversation-seq anchor is a generic conversation-surface contract: any surface can locate a node's row.

Model Experience

None, as the tab renders browser-side conversation nodes for a human; nothing here reaches a model request.

KV Cache effect

None; this package neither assembles nor sends a provider request.

Known Limitations and Deferred Work

  • In-window history only — the rail shows the loaded node window; paging in older turns happens through the conversation's existing load-older gesture, not through the rail itself.
  • Jump is DOM-anchored — scroll-to-row resolves the node's data-conversation-seq row in the active conversation; rows outside the mounted window cannot be targeted.