前言¶
在 DeepSeek Harness(DSH)桌面客戶端裏,右側欄常同時開着多個面板標籤——預覽、工具頁、文檔等。默認情況下,Ctrl+W(macOS 爲 ⌘W)的語義是「關窗口優先級最高」:焦點在右側欄面板內時會關掉當前標籤,但焦點在中間的會話區時往往會直接關掉整個窗口,標籤頁卻還在。只想關掉正在看的那個標籤時,操作反直覺,也更容易誤關窗口。下面介紹社區維護者 Aily-DSH 的客戶端插件 dsh-sidebar-tab-close,它調整快捷鍵優先級,並補上雙擊標籤關閉的鼠標操作。
這是什麼¶
dsh-sidebar-tab-close 是純客戶端插件:不寫配置文件、不佔端口、不改 app.asar,運行時通過官方 ctx.sidebarRight 服務打補丁;禁用或卸載後即恢復 DSH 原生行爲。倉庫:GitHub - Aily-DSH/dsh-sidebar-tab-close;社區目錄頁:skillhub.cn。當前 package 版本爲 0.1.1,許可證 MIT。
它解決什麼問題¶
DSH 原生邏輯可以概括爲:
- 焦點在右側欄面板內 → 關閉該標籤頁
- 焦點在會話區 → 直接關閉整個窗口,標籤頁不動
本插件把優先級倒過來:只要右側欄展開且存在可關閉的標籤頁,Ctrl+W 就關閉當前活動標籤;沒有可關標籤時才退回關窗口。同時支持 雙擊右側欄標籤頁 直接關閉。與原生一致:canCloseTarget 判定不可關的標籤(例如唯一的引導頁)仍然不可關。
核心功能¶
Ctrl+W(macOS⌘W)優先關閉右側欄當前標籤頁- 雙擊右側欄標籤頁關閉該頁;雙擊標籤內的關閉按鈕等控件不會誤觸發
- 異常時吞掉錯誤並退回 DSH 原生行爲,不拖垮界面
- 附帶影響:焦點在會話區時,
page.close之外的page.*(如Ctrl+R/page.refresh)會解析到當前標籤頁目標,原本可能被忽略的操作最多變爲刷新當前標籤,README 說明不會造成新的破壞
環境要求¶
- DeepSeek Harness >= 0.2.1-rc.5(需帶 dockkit 右側標籤欄的 Web GUI)
- 僅在 桌面客戶端 中
Ctrl+W語義由 DSH 處理;Web 頁面裏由瀏覽器自行處理快捷鍵 - 分類:客戶端;無宿主邏輯、無配置文件
安裝與啓用¶
Windows 示例(路徑按本機 DSH 安裝位置調整):
cd "/d/Program Files/DeepSeek Harness/resources/runtime/cli/bin"
./dsh.cmd plugin --profile desktop add "git+https://github.com/Aily-DSH/dsh-sidebar-tab-close.git"
本地開發可改用 file: 指向克隆目錄(安裝命令以 README 爲準,勿憑插件名拼接錯誤 URL):
dsh plugin --profile desktop add "file:/D:/path/to/dsh-sidebar-tab-close"
裝完後必須重啓一次 DeepSeek Harness 客戶端:客戶端插件的 injections 在宿主啓動時計算一次,不重啓不會加載。
典型用法與驗證¶
經過上面的安裝與重啓,可按 README 步驟自測:
- 打開會話,讓右側欄出現至少兩個標籤頁
- 把焦點點回會話區(中間),按
Ctrl+W→ 當前標籤頁關閉,窗口仍在 - 關到只剩一個不可關的標籤,再按
Ctrl+W→ 恢復原生行爲(關窗口) - 雙擊任意標籤頁本體 → 直接關閉
行爲對照表(摘自官方文檔):
| 場景 | 行爲 |
|---|---|
| 側欄展開、有可關標籤、焦點在會話區 | 關閉當前活動標籤頁 |
| 側欄展開、焦點在面板內 | 關閉當前活動標籤頁(與原生一致) |
| 側欄展開、唯一標籤不可關 | 退回關窗口 |
| 側欄收起 | 退回關窗口 |
| 雙擊標籤頁本體 | 關閉該標籤頁 |
適用場景與注意¶
適合經常在 DSH 桌面端開多個右側欄標籤、希望用 Ctrl+W 和雙擊快速關頁、又不想改客戶端安裝包的用戶。插件與 DSH 進程同權限運行,安裝前建議瀏覽倉庫源碼並確認 MIT 許可證是否滿足你的合規要求。
已知限制(資料原文):
- 僅作用於右側欄(dockkit 標籤條);左側工作區、底部面板不在範圍內
- 雙擊關閉依賴標籤元素的
data-dockkit-tab/data-sidebar-right-tab;若 DSH 改動 DOM 標記,雙擊可能靜默失效,Ctrl+W仍走服務層 - 與其它同樣包裝
focusedTarget的插件疊加時,後加載者生效
卸載:
dsh plugin --profile desktop remove dsh-sidebar-tab-close
重啓客戶端後恢復原生 Ctrl+W 行爲。
結尾¶
dsh-sidebar-tab-close 用最小侵入的方式,把「關標籤」放在「關窗口」之前,並補上雙擊關標籤,適合日常在右側欄多開面板的 DSH 桌面用戶。詳情與 issue 見 GitHub 倉庫,目錄索引見 SkillHub 插件頁。