前言¶
DSH Web 客戶端裏,會話越長,展開的可摺疊區塊越多:Think 思考行、工具卡片、命令卡片、上下文注入行等會持續累積。逐個點擊標題收起不太方便;當區塊滑出當前視口後,還需要先滾動回去。
dsh-sticky-disclosure 是一個 DSH Web 客戶端插件,用來把當前會話裏所有已展開的可摺疊區塊一次性收起,並支持自定義快捷鍵。
這是什麼¶
dsh-sticky-disclosure 由 Han-1413141 維護,許可證爲 MIT,屬於 DSH 的客戶端插件。
它解決的問題很簡單:當 DSH Web 會話中積累了多個展開區塊時,不用逐個收起,一次操作即可全部收起。
主要面向使用 DSH Web、會話中經常包含 Think、工具調用、命令執行或上下文注入內容的開發者。
核心功能¶
dsh-sticky-disclosure 提供以下能力:
- 一鍵收起會話裏所有展開的可摺疊區塊,包括 Think 思考行、工具卡片、命令卡片、上下文注入行等。
- 聊天區右下角常駐「全部收起」按鈕,並顯示即時計數。
- 展開區塊滑出屏幕時,標題會自動釘在會話頂部;點擊頂部 chip,即可收起原區塊。
- 支持自定義快捷鍵,默認
Ctrl+Alt+C,macOS 爲⌘⌥C,設置後會持久保存。 - 使用應用
--dsw-*設計令牌,自動跟隨深色 / 淺色主題。 - 純 DOM 實現,不動應用代碼;卸載後即全量還原。
安裝與啓用¶
先確認環境滿足要求:
- Node.js ≥ 20
- DeepSeek Harness,且帶有
dsh plugin命令
如果尚未安裝 DeepSeek Harness,可執行:
npm install -g @deepseek-ai/dsh
然後使用下面的 PowerShell 腳本安裝插件:
irm https://raw.githubusercontent.com/Han-1413141/dsh-sticky-disclosure/main/install.ps1 | iex
安裝完成後,啓動 DSH Web:
dsh web
插件集合變化在重啓時生效。插件 bundle 按 no-cache 提供,如果修改了 lib/client.js,刷新頁面即可看到變化,不需要重啓服務。
驗證插件是否進入配置,可執行:
dsh --profile web --dump-config | findstr sticky-disclosure
頁面加載後,聊天區右下角出現「全部收起」按鈕,即表示插件已激活。
典型用法¶
收起所有展開區塊¶
激活後,可以有兩種方式收起當前會話中的全部展開區塊:
- 點擊聊天區右下角的「全部收起」按鈕。
- 按下自定義快捷鍵,默認爲
Ctrl+Alt+C,macOS 爲⌘⌥C。
按鈕旁邊會顯示即時計數,方便確認當前會話中還有多少個展開區塊。
如果某個展開區塊已經滑出屏幕,插件會把它的標題釘在會話頂部。點擊該 chip,即可收起對應區塊。
修改快捷鍵¶
默認快捷鍵是 Ctrl+Alt+C,macOS 爲 ⌘⌥C。
如果默認組合鍵與現有快捷鍵衝突,可以按下面步驟修改:
- 點擊「全部收起」按鈕旁的 ⌨ 齒輪按鈕,打開設置面板。
- 點擊「設置」,進入快捷鍵捕獲狀態。
- 直接按下新的組合鍵。新組合鍵必須包含
Ctrl/⌘/Alt之一,例如Ctrl+Shift+K。 - 按下後立即生效,並持久保存到瀏覽器
localStorage。
快捷鍵設置僅保存在瀏覽器 localStorage 中,不會上傳。
如果捕獲期間想取消,可按 Esc。如果想恢復默認快捷鍵,可點擊「恢復默認」,回到 Ctrl+Alt+C。
也可以通過調試句柄編程設置:
window.dshStickyDisclosure.setHotkey({ ctrl: true, shift: true, code: "KeyK" })
上面示例將快捷鍵設置爲 Ctrl+Shift+K。
更新與卸載¶
更新插件:
dsh plugin --profile web update dsh-sticky-disclosure
卸載插件:
dsh plugin --profile web remove dsh-sticky-disclosure
卸載後,插件對頁面注入的內容會被還原。
適用場景與注意¶
適合這類使用場景:
- 長時間使用 DSH Web 對話。
- 會話中經常展開 Think、工具卡片、命令卡片等區塊。
- 需要快速收起所有展開內容,繼續閱讀後續輸出。
- 希望用快捷鍵而不是鼠標完成批量收起。
使用前需要注意:
- 該插件只覆蓋會話聊天流,範圍是
[data-conversation-scroll]內的內容;軌跡視圖不在覆蓋範圍內。 - 插件依賴
data-open/data-disclosure-rowDOM 契約。如果上游應用升級後改變了這些內部結構,需要同步更新選擇器。 - 插件會隨 DSH Web 啓動並進入插件集合,因此會隨當前 DSH 進程環境運行。安裝前建議先檢查源碼與 MIT 許可證。
- 快捷鍵只保存在瀏覽器
localStorage,不會上傳。
倉庫¶
GitHub:https://github.com/Han-1413141/dsh-sticky-disclosure