DSH Hub

lijinhao315/dsh-question-index

dsh-client-ui-question-index

UIWeb UI0 GitHub stars· updated 2026-08-23

dsh-client-ui-question-index is a community DeepSeek Harness plugin. Read the repository README before installing.

Install

npx @deepseek-ai/dsh plugin --profile web add github:lijinhao315/dsh-question-index

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-client-ui-question-index DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/dsh-question-index.svg)](https://dshhub.dev/plugins/dsh-question-index)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from lijinhao315/dsh-question-index, cleaned of badges and images.

dsh-question-index

DSH Web 客户端插件:提问索引(Question Index)。在会话右侧悬浮展示「用户提过的问题」的按序列表,可收起;点击某条问题即可把会话滚动跳转到对应的提问位置。

A DSH client plugin that floats an ordered, collapsible list of the user's asked questions on the right side of the conversation, with click-to-jump into the flow.

What it does

  • A shell.overlay entry (root scope, floating layer) declares the session-level seat question-index.panel.
  • The panel reads the current session's chat snapshot, walks nodes in chat.order order, keeps only user / steering question nodes, extracts their text blocks ({ type: 'text' } content) and renders an ordered list.
  • Clicking an item scrolls the conversation to that question via data-chat-anchor-key inside [data-conversation-scroll] (same anchor logic as ChatView).
  • The panel collapses to a slim right-edge strip and expands again; the collapse state persists across session switches.

Features

  • Ordered question list (numbered from 1) for the active session
  • Click-to-jump into the conversation flow
  • Collapsible floating panel anchored to the right of the conversation
  • Collapse state preserved across session switches
  • Empty state: "No questions yet" when the session has no user questions
  • Localized (English / Simplified Chinese)

Install

dsh plugin --profile web add github:lijinhao315/dsh-question-index

Development

npm install
npm run build   # tsc -p tsconfig.json && tsdown

Outputs lib/index.js (node half), lib/invariant.js, lib/client.js (browser half).

Known limitations

  • Older paginated messages (hasMore / loadOlder) that are not in the loaded chat snapshot won't appear in the index.
  • Click-to-jump requires the target row to be rendered (data-chat-anchor-key present in the DOM); unrendered rows are skipped.
  • Long entries render as a single truncated line; the full text is always visible in the conversation body.

Architecture

See docs/architecture.md for how the plugin wires into the DSH shell (overlay seat, panel contribution, module-table externals).

License

MIT

Related plugins