dsh-indexbookmark:DSH Web 界面對話問題索引插件

在 DSH Web 界面進行長對話交互時,快速定位歷史提問是一個常見痛點。dsh-indexbookmark 插件通過在輸入框右側添加索引按鈕,解決這一需求。它由 cuhaitiang0405-collab 維護,開源 MIT 協議。

核心功能

問題索引
插件會列出當前會話中所有的 user 或 message,按時間順序排列並附帶全局序號。

點擊定位
點擊列表中的任意條目,對話界面會自動滾動定位到對應消息,並閃爍高亮 1.6 秒。

搜索過濾
面板內置搜索框,支持大小寫不敏感的子串匹配。標題欄會實時顯示當前命中的數量與總數。

視圖分頁
支持自定義每頁顯示條數(10 / 30 / 50 條)。翻頁控件採用 ‹ 1/3 › 格式,提供全局編號。

懶加載與分頁
面板僅在打開時拉取數據,單次最多加載 200 條消息。對於更早的消息,可通過“加載更早的問題”按鈕按需加載。

會話級內存緩存
同一會話在 60 秒內重複打開,面板會直接從內存讀取,實現零請求、零處理的開屏體驗。緩存採用 LRU 策略,上限保留 5 個會話。

交互與適配
面板展開/收起帶有淡入淡出動畫。點擊面板外部或按下 Esc 鍵可收起面板。面板內的滾輪事件被獨佔,不會觸發頁面滾動。主題適配方面,所有樣式變量均基於 DSH 主題變量(--dsw-alias-*),支持亮暗色自動切換。界面文案支持中英文隨界面語言切換。

安裝與啓用

在安裝前,請確保環境已安裝 dsh 命令行工具和 pnpm(dsh plugin 依賴 pnpm)。

dsh plugin --profile web add github:cuhaitiang0405-collab/dsh-indexbookmark

安裝完成後,重啓網頁版 DSH 即可生效。

dsh web

使用步驟

  1. 打開任意包含歷史消息的會話。
  2. 點擊輸入框右側的 ☰ 按鈕,面板向上彈出。
  3. 在搜索框輸入關鍵詞過濾問題,點擊列表中的條目,對話會自動滾動定位並高亮。
  4. 若消息較多,可在面板底部調整每頁條數,或點擊“加載更早的問題”。
  5. 點擊面板外部區域或按 Esc 鍵關閉面板。

適用場景與注意

該插件適合需要頻繁回顧和跳轉長對話中特定提問的開發者。插件以當前 dsh 進程權限運行,安裝前建議檢查源碼與許可證。

已知限制

  • 定位使用文本前綴匹配(前 40 字符),若前綴完全相同,可能定位到較早的一條消息。
  • 索引僅收錄來源爲 append(追加)的消息,與對話實際渲染一致。
  • 搜索功能僅覆蓋當前已加載頁面的問題。
  • 緩存爲瀏覽器內存級,刷新頁面(F5)後緩存會清空。

目錄與源碼

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜