前言¶
DeepSeek Harness(DSH)社區常用插件方式擴展客戶端能力。csiroqa/dsh-hotkeys 面向 DSH 的 web 使用場景,把切換會話、發送/清空草稿、停止生成、複製會話、歸檔會話等操作綁定到鍵盤,減少鼠標往返。它更適合需要在 DSH 中高頻操作會話、並希望用快捷鍵替代部分點擊動作的開發者。
這是什麼¶
- 插件:
csiroqa/dsh-hotkeys - 維護者:
csiroqa - 許可:MIT
- 安裝對象:DSH web profile
- 核心目標:爲 DSH 客戶端添加全局快捷鍵,並支持配置鍵位、
sendMode、ignoreInputs
核心功能¶
會話導航¶
- 會話切換:按側欄順序環繞切換,按住可連續切換。
- 新會話:與側欄“新建會話”同一入口。
草稿與發送¶
- 發送草稿:
send等價 composer 加速 Enter;草稿爲空且有排隊消息時,把排隊消息推入運行中的回合;發送/受理進行中自動攔截。 - 清空草稿:只清文本,保留已附加圖片。
會話管理¶
- 停止生成:停止當前會話運行中的回合;僅普通會話與 continuable 子代理可打斷;未運行時給出頁面內提示。
- 複製會話:fork 當前會話(標題遞增)並跳轉到新會話。
- 歸檔會話:調用原生
workspaces.archiveSession,將當前會話移入“已歸檔”。
/hotkeys 命令¶
在會話中輸入 /hotkeys,可列出全部 8 個動作的當前生效鍵位,包含用戶自定義覆蓋。
觸發守衛¶
- IME 組合輸入中不觸發。
- AltGr 鍵擊不觸發。
- 已被消費(
defaultPrevented)的按鍵不觸發。 - 開啓
ignoreInputs時,純按鍵組合(無 Ctrl/Cmd/Alt)在輸入框/文本域內不觸發。 - 按住不放只放行導航類動作。
- 非法/重複鍵位會在控制檯
warn,並指明動作名。
安裝與啓用¶
先準備環境:
- Node.js >= 22
- pnpm
- 本機
deepseek-harness源碼檢出(依賴以link:指向../deepseek-harness)
然後執行:
git clone https://github.com/csiroqa/dsh-hotkeys.git
cd dsh-hotkeys
pnpm install
pnpm build
安裝進 web profile。插件以 link: 指向當前倉庫目錄,因此命令使用當前目錄:
dsh plugin --profile web add link:$(pwd)
重啓 dsh web,並在瀏覽器中執行 Ctrl+F5 硬刷新。之後如果需要改源碼,重新 pnpm build 並硬刷新即可生效。
典型用法¶
1、打開任意會話,使用 Ctrl+Alt+[ / Ctrl+Alt+] 切換會話;使用 Ctrl+Alt+N 新建會話。
2、輸入草稿後使用 Ctrl+Enter 發送;使用 Ctrl+. 停止生成;使用 Ctrl+Shift+F 複製會話。
3、使用 Ctrl+Alt+A 歸檔當前會話,會話會移入側欄“已歸檔”。
4、輸入 /hotkeys 查看當前生效的全部快捷鍵。
鍵位中的 mod 在 Windows/Linux 上爲 Ctrl,在 macOS 上爲 ⌘。鍵位按 US 鍵盤佈局假設,shift 上檔字符會還原。
配置¶
鍵位、sendMode、ignoreInputs 通過 settings 命名空間持久化。
可以在 DSH 中通過“設置 > 通用 > 快捷鍵”進行可視化編輯:
- 編輯各動作鍵位。
- 一個動作支持多個鍵位,逗號分隔。
- 輸入空串可禁用該動作,並重置回默認。
- 調整
sendMode。 - 打開或關閉
ignoreInputs。
也可以編輯 $DSH_HOME/settings.yaml 的 hotkeys: 段,配置鍵位、sendMode、ignoreInputs。
注意:cordis.patch.yml 的 insert config 段不達瀏覽器半區,鍵位配置請寫 settings.yaml。
sendMode 設爲 auto 時,與 composer 加速 Enter 行爲一致。ignoreInputs 用於控制純按鍵組合是否在輸入框/文本域內觸發。
適用場景與注意¶
適合經常使用 DSH web 會話、希望減少鼠標操作的人。該插件針對 DSH 0.1.1-rc.2 源碼檢出開發驗證,並在 @deepseek-ai/dsh@0.1.1-rc.2(npm 全局/npx 安裝)環境實測可用。平臺爲 Windows / macOS / Linux,Node.js 版本要求爲 >= 22。
需要注意:
- 插件會在當前 dsh 進程權限下運行。安裝前請先檢查源碼與 LICENSE。
- 它依賴
sessions/workspaces兩個公開服務,以及一處 untyped 的conversation.input運行時面;ui-conversation缺席時相關動作靜默降級。 - 已知限制:slash 菜單打開時的拾取仲裁由 composer 私有持有,
send直接提交草稿而非拾取高亮項。 - 快捷鍵只在本機頁面上生效,DSH 默認迴環綁定,不涉及任何網絡監聽。
- 鍵位配置寫入
$DSH_HOME/settings.yaml,這是本機文件;請勿把 DSH 端口暴露到公網。
許可與鏈接¶
本項目使用 MIT License。使用、修改、引用或收錄時,請保留 LICENSE 文件與版權聲明,並標明出處(本倉庫鏈接)。
項目倉庫:https://github.com/csiroqa/dsh-hotkeys