dsh-esc-stop:在 DSH Web GUI 中用兩次 Esc 停止生成

前言

DSH 的插件生態允許把常見操作拆到小插件裏。對 dsh web 這類 Web GUI 來說,停止當前對話生成通常需要把鼠標移到停止按鈕上。dsh-esc-stop 把這件事壓縮成鍵盤動作:在會話內連按兩次 Esc,即可停止當前回合。它複用 GUI 停止按鈕背後的 session.cancel 路徑,因此不需要額外配置停止邏輯。

這是什麼

dsh-esc-stop 是一個 DeepSeek Harness Web GUI 插件,倉庫 owner 爲 142475,許可證爲 MIT。它的目標很小:讓 dsh web 在已有會話中可以用快捷鍵停止當前生成。

該插件只適用於 web profile(dsh web)。tui 和 headless profile 有自己的停止鍵,不適合用這個插件替代。

核心功能

  • 在會話內任意位置連按兩次 Esc,兩次間隔需在 400ms 內。
  • 觸發後停止正在運行的回合。
  • 與內置停止按鈕等價,通過 session.cancel 取消當前回合。
  • 待處理的 inbox 消息保留,之後按 FIFO 恢復。
  • 忽略 e.repeat;單擊、長按或單次按住 Esc 不會觸發。
  • 兩次 Esc 間隔超過 400ms 時重新計時。

安裝與啓用

先確認你在 web profile 目錄,例如:

~/.dsh/profiles/web

在該目錄執行安裝命令:

dsh plugin --profile web add git+https://github.com/142475/dsh-esc-stop.git

然後編輯該 profile 的 package.json,在 dsh.profile.bundles 數組中加入 "dsh-esc-stop":

{
  "dsh": {
    "profile": {
      "bundles": [
        "dsh-esc-stop"
      ]
    }
  }
}

重啓 dsh web 後,插件即可生效。package.json 中聲明瞭 node >=22,並聲明相關 peerDependencies,因此安裝前確認當前 dsh web 環境能加載這些依賴。

典型用法

1、啓動 dsh web 並打開一個會話。

2、當回合正在運行時,在會話內任意位置連按兩次 Esc。

3、如果兩次按鍵間隔超過 400ms,會重新計時,不會觸發停止。

4、無會話的首屏(hero)沒有可停止內容;監聽在會話打開時生效。

適用場景與注意

這個插件適合在瀏覽器裏使用 DSH web,且希望減少鼠標移動來停止生成的人。它不改變 DSH 的會話、權限或配置模型,只增加一個停止快捷鍵。

使用前注意:

  • 僅適用於 dsh web 的 web profile。
  • 插件會加入當前 dsh 的 web profile,並隨當前 dsh 進程運行,因此安裝前應檢查源碼與 MIT 許可證。
  • session.cancel 取消的是當前回合;待處理 inbox 消息仍按 FIFO 保留和恢復。
  • 快捷鍵只對“正在運行的回合”生效,不適合在無會話首屏使用。

結尾

dsh-esc-stop 的價值很具體:把停止當前生成從按鈕操作變成兩次 Esc,並保持與 GUI 停止按鈕一致的行爲。

社區目錄頁:
https://www.skillhub.cn/plugins/142475/dsh-esc-stop

GitHub:
https://github.com/142475/dsh-esc-stop

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜