前言¶
在使用 DSH Web 進行長對話時,模型輸出會自動貼底跟隨:回答越長,視圖會一直停在最後一行。想從頭閱讀這一輪的提問,只能逐行向上滾動;而 DSH 原生的「回到底部」只能向下。這兩個方向的需求並不互補,因此需要一個顯式的「回到問題開頭」入口。
seven0813/dsh-jump-button 插件爲 DSH Web 聊天區增加兩個浮動按鈕,分別實現「回到本輪提問開頭」和「回到最新輸出結尾」。這兩個按鈕由點擊觸發,不會改變 DSH 自帶的跟隨行爲,也不會自動跳轉。
是什麼¶
這是一個 DSH Web 客戶端插件,爲對話區提供兩個可聚焦、可觸發的跳轉按鈕。
- 定位:補全 DSH Web 在對話滾動方向上的缺失功能,不依賴服務端,純前端實現。
- 維護者:seven0813
- 解決:讓用戶在長回答中,無需反覆滾動即可快速跳轉到問題開頭或最新輸出結尾。
核心功能¶
- ↑ 回到問題開頭:將本輪最後一個提問滾動到視口頂部,保留 10px 間距,方便從頭閱讀長回答。
- ↓ 回到結尾:回到對話最新位置;若 DSH 原生存在「回到底部」,則複用該功能,並重新進入貼底跟隨。
- 按需顯示:僅在有可滾動會話時出現;在新建會話、Plugins 頁面、彈窗打開時自動隱藏。
- 不遮擋交互:按鈕固定在右下角,避開原生「回到底部」和右側輪次導航;當輪次導航較長時自動讓位。
- 流式輸出中可用:點擊 ↑ 後不會被下一個 token 拖回底部,可繼續查看已生成內容。
- 中英雙語:跟隨界面語言,包含
title和aria-label,支持 Tab 聚焦與 Enter 觸發。 - 純客戶端:無服務端、無配置項、無網絡請求,外觀跟隨 DSH 主題。
安裝與啓用¶
官方安裝命令如下:
dsh plugin --profile web add dsh-jump-buttons
安裝後刷新頁面,對話右側會出現兩個圓形按鈕。也可以在 Plugins 頁面啓用或停用。
若需從源碼安裝(用於本地開發):
git clone https://github.com/seven0813/dsh-jump-button.git
dsh plugin --profile web add link:/absolute/path/to/dsh-jump-button
卸載¶
dsh plugin --profile web remove dsh-jump-buttons
兼容性¶
- 面向 DSH Web 0.2.x
- Node.js >= 20
- 行爲依賴 DSH 當前會話區的頁面結構;宿主大改版後可能需要適配。
適用場景與注意¶
- 適合頻繁進行長對話、需要快速定位問題開頭或最新輸出的 DSH Web 用戶。
- 插件以當前 DSH 進程權限運行,安裝前建議查看源碼與許可證(MIT)。
小結¶
DSH 的理念是「一切皆插件」。seven0813/dsh-jump-button 在客戶端側補全了對話滾動方向的缺失入口,讓長回答的閱讀更可控。如需瞭解安裝與源碼,可訪問: