前言¶
DeepSeek Harness 的核心生態理念是「一切皆插件」。在智能體開發或調試場景中,頻繁的審批、確認計劃以及重複輸入內容需要大量的鼠標點擊操作,這容易打斷工作流。爲了減少對鼠標的依賴,提高操作效率,需要一種更精細的輸入與交互控制方式。
下面介紹 @zhangqingyu/dsh-keyboard-shortcuts,它是一個客戶端插件,通過可配置的鍵盤快捷鍵管理器,將輸入歷史回填、審批和計劃快捷鍵能力引入 DeepSeek Harness,並將配置持久化保存。
核心功能¶
該插件主要提供以下能力:
- 可配置的鍵盤快捷鍵管理器:允許在設置頁面自定義快捷鍵。
- 設置頁面綁定:提供可視化的快捷鍵錄製界面。
- 輸入歷史回填:支持使用
ArrowUp回填上一次提交的內容,使用ArrowDown向後翻或回到草稿。 - 審批與計劃快捷鍵:支持快速審批權限升級和計劃審批。
- 配置持久化:使用
localStorage存儲配置,刷新頁面後保持生效。 - 剪貼板兼容:不攔截系統的複製、剪切、粘貼操作,依賴原生 Edit 菜單修復 macOS 特殊組合鍵。
安裝與啓用¶
克隆倉庫後,使用 DeepSeek Harness 的命令行工具進行安裝。
git clone https://github.com/904915452/dsh-keyboard-shortcuts.git
cd dsh-keyboard-shortcuts
dsh plugin --profile web add "file:$(pwd)"
安裝完成後,重啓應用並刷新頁面。進入「設置」頁面,即可看到新增的「鍵盤快捷鍵」配置頁。
使用說明¶
插件在「設置 → 鍵盤快捷鍵」頁面提供可視化的快捷鍵錄製功能。點擊事件右側的按鈕,按下鍵盤組合鍵即可完成綁定。
默認快捷鍵¶
插件內置了以下事件的默認快捷鍵:
| 事件 | 默認快捷鍵 | 作用 |
|---|---|---|
| 上一條輸入 | ArrowUp |
回填上一次提交的內容 |
| 下一條輸入 | ArrowDown |
向後翻 / 回到正在編輯的草稿 |
| 允許權限升級 | Mod+Enter |
審批彈窗「允許一次」 |
| 拒絕權限升級 | Escape |
審批彈窗「拒絕」 |
| 批准計劃 | Mod+Enter |
計劃審批「確認執行」 |
| 計劃轉聊天 | Escape |
計劃審批「去聊天裏說」 |
Mod在 macOS 上代表Cmd,在 Windows/Linux 上代表Ctrl。
快捷鍵錄製與衝突處理¶
- 錄製:點擊設置頁對應事件右側的按鈕,按下目標組合鍵即可完成綁定。
- 衝突處理:多個事件可以共享同一快捷鍵(例如
Mod+Enter同時綁定「允許權限升級」和「批准計劃」)。當按下快捷鍵時,系統會按順序嘗試匹配對應事件。如果匹配到第一個事件但未找到對應彈窗,會繼續嘗試下一個事件,而不是直接放棄。
技術細節與限制¶
- DOM 結構依賴:審批和計劃按鈕的快捷鍵依賴於當前版本彈窗的 DOM 結構(如
[data-approval-key]/[data-plan-review-key])。如果應用升級導致結構變化,需要同步調整插件邏輯。 - 輸入歷史觸發條件:輸入歷史(
ArrowUp/ArrowDown)只在特定條件下觸發:- 應用處於空閒態(
phase === "plain")。 - 光標位於首行(
ArrowUp)或末行(ArrowDown)。 - 沒有打開下拉菜單(如
/候選菜單或[role="listbox"])。
- 應用處於空閒態(
- 剪貼板兼容:插件在
document層掛載捕獲階段監聽,但不會攔截composer自身的剪貼板事件,也不干擾消息上的複製按鈕,避免破壞原生複製體驗。macOS 的Cmd+C/V/X/A依賴原生 Edit 菜單修復。
結語¶
該插件通過配置持久化和精細的事件綁定,簡化了 DeepSeek Harness 中的重複操作流程。如需查看更多插件或提交反饋,可訪問 GitHub 倉庫。