前言¶
在 DSH 裏並行開多個對話時,側邊欄點選是最穩的導航方式,但頻繁在「剛看完的那個」和「當前這個」之間來回跳,鼠標路徑會拉長。瀏覽器裏可以用 Ctrl+Tab 在最近兩個標籤之間切換;DSH 桌面版默認沒有同樣的行爲。下面介紹社區插件 dsh-session-switch(維護者 CHENJIAMIAN),它把「當前會話 ↔ 上一個會話」的切換接到官方快捷鍵體系裏,而不是自己搶鍵盤事件。
這是什麼¶
dsh-session-switch 是 DeepSeek Harness(DSH)的客戶端類插件,npm 包名 dsh-session-switch,當前版本 1.0.0,許可證 MIT。插件列表裏顯示爲「會話快速切換」:在 DSH 桌面版按 Ctrl+Tab(Windows 默認綁定),在最近看過的兩個會話之間來回切換,不會一路翻到更早的第三、第四個會話。
- 目錄頁:https://www.skillhub.cn/plugins/CHENJIAMIAN/dsh-session-switch
- 源碼:https://github.com/CHENJIAMIAN/dsh-session-switch
核心功能¶
行爲與 README 描述一致,可概括爲下面幾條。
- 雙會話乒乓:對話 A → Ctrl+Tab → 對話 B → 再按 → 回到 A,只在二者之間循環。
- 手動換會話後仍有效:你點開別的會話後,再按快捷鍵,目標是「剛纔所在」的那一個。
- 兜底:若「上一個會話」已歸檔或不存在,或剛刷新頁面還不知道「上一個」是誰,則切到最近更新過的會話;停在空白「新會話」頁時按一次,同樣回到最近更新過的會話(空白頁不參與記憶)。
實現上不監聽頁面 keydown:向官方快捷鍵服務註冊命令 dsh-session-switch.previous,訂閱會話列表並跟蹤主視圖 retain 的會話;觸發時調用 ctx.uiWorkspace.openSession(id),與點側邊欄同一條導航路徑,草稿與歷史由宿主處理。
安裝與啓用¶
包已發佈到 npm。README 給出三種裝法,任選其一;裝完熱更新即可,無需重啓 DSH。
# 1) 直接裝 npm 包(推薦)
plugin_manager install_bundle --target dsh-session-switch
# 2) 插件市場裏搜「會話快速切換」
# 3) 想改代碼就裝本地目錄(會以 link 方式掛上,改完熱更新)
plugin_manager install_bundle --target D:\GithubRepository\dsh-session-switch
卸載:
plugin_manager remove_bundle --target dsh-session-switch
兼容性:engines.dsh 爲 >=0.2.1-rc.2 <0.3.0,開發與驗證基於 v0.2.1-rc.3。
典型用法¶
- 在 Windows 桌面版安裝插件後,保持默認 Ctrl+Tab(可在「設置 → 快捷鍵」裏改綁)。
- 在會話 A 中工作,再打開或切換到會話 B。
- 按 Ctrl+Tab,應回到 A;再按一次,回到 B。
macOS、Linux 桌面版與瀏覽器 Web 版沒有與 Windows 相同的默認組合鍵(系統或瀏覽器會佔用 Tab / ⌘+Tab);命令仍會出現在快捷鍵列表裏,需自行改綁後才能用。
| 環境 | 結果 |
|---|---|
| 桌面版 Windows | Ctrl+Tab 默認生效,可在「設置 → 快捷鍵」裏改綁 |
| 桌面版 macOS | 無默認綁定;可在快捷鍵設置裏改綁別的組合 |
| 桌面版 Linux | 無默認綁定;Tab 在保留鍵判定裏被攔,需改綁 |
| 瀏覽器 Web 版 | 無默認綁定;Tab 爲瀏覽器保留鍵,需改綁 |
適用場景與注意¶
適合經常在兩個 DSH 會話之間對照、複製或切換上下文的開發者。若你習慣瀏覽器式「只記最近一對」而不是按時間線掃列表,這個插件比反覆點側邊欄更直接。
安裝前請自行查看 GitHub 源碼與 MIT 許可證。插件在當前 DSH 進程權限下運行,與所有社區插件一樣,SkillHub 目錄爲獨立社區站點,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
dsh-session-switch 把「當前 / 上一個」雙會話切換接到 DSH 官方快捷鍵與 openSession 導航上,Windows 桌面版開箱可用 Ctrl+Tab;其它平臺需改綁快捷鍵。更多信息見 SkillHub 目錄頁 與 GitHub 倉庫。