`dsh-client-auto-retry`:DSH 回合中斷後自動發送「繼續」的客戶端插件

前言

在 DeepSeek Harness(DSH)中,一次會話回合可能因爲出錯、被中斷,或輸出達到 token 上限而沒有正常結束。這類情況下,會話本身仍然可以繼續推進,只需要向原會話再發送一句「繼續」。

下面介紹 Frog755 的 DSH 客戶端插件 @frog755/dsh-client-auto-retry。它用於在這幾類回合結束原因出現時自動發送「繼續」,不做模型或 provider 切換。

這是什麼

@frog755/dsh-client-auto-retry 是一個 DSH 客戶端插件,由 Frog755 維護,許可證爲 MIT。

它會檢測 turn/endreason.kind。當該值屬於 error / interrupted / max-tokens 時,插件會自動向同一會話發送可配置文本,默認文本是「繼續」。

插件自帶設置卡片,設置項即時生效,標記爲:

applies: "live"

它只負責自動發送「繼續」,不做模型/provider 切換。如果需要故障轉移,應該在 DSH 的模型路由配置裏完成。

核心功能

1、檢測 turn/endreason.kind 是否爲以下類型之一:

error
interrupted
max-tokens

2、自動向該會話發送可配置文本,默認發送:

繼續

3、提供寬限期、冷卻期、連續次數上限、啓動掃描等防護,避免失控循環。

4、設置項即時生效:

applies: "live"

5、不做模型/provider 切換。

6、自帶設置卡片。

安裝與啓用

下面是通過 npm 包安裝的步驟。

1、在 DSH 的 profile 目錄執行:

pnpm add @frog755/dsh-client-auto-retry

這一步會把插件包安裝到當前 profile 的依賴中。

2、編輯該目錄下的 package.json,把 @frog755/dsh-client-auto-retry 加入 dsh.profile.bundles

這一步用於讓 DSH 在加載該 profile 時識別這個插件。

3、執行:

pnpm install

這一步完成依賴安裝。

4、重啓 DeepSeek Harness,再刷新瀏覽器頁面。

Host 側插件只在進程內加載一次;Host 側 lib/index.js 改動需要重啓 DSH,只刷新瀏覽器頁面不夠。

本地 link 開發調試時,可以在 dependencies 中使用類似配置:

{
  "dependencies": {
    "@frog755/dsh-client-auto-retry": "link:C:/Users/frog/.dsh/projects/dsh-client-auto-retry"
  }
}

上面的路徑是文檔中的本地示例,實際使用時應替換爲你自己的本地插件路徑。

典型用法

設置入口是:

設置 → 通用 → 斷聯自動重試

進入後可以看到插件的設置卡片。插件觸發後會自動發送默認文本「繼續」,也可以按需要調整自動發送的文本。

幾個防護項需要注意:

  • maxConsecutive 建議保持默認 5 次以內,避免 provider 持續報錯時反覆消耗 token。
  • scanOnBoot 只掃描 freshMs 窗口內的會話。
  • 當前已針對 DSH 0.1.0-rc.7(web 端 profile;desktop runtime 同版本)編寫並驗證;不同版本/形態的 DSH 接口可能不同。

適用場景與注意

這個插件適合處理 DSH 會話中回合被中斷、出錯或達到 max-tokens 後的簡單續跑。

它不適合作爲錯誤兜底,也不負責模型/provider 故障轉移。插件會作爲 DSH profile bundle 加載,並以當前 DSH 進程的運行環境執行;安裝前應檢查源碼與許可證。

如果插件裝不上或不生效,先覈對 DSH 版本與接口是否一致,再檢查以下事項:

1、package.json 中是否已把 @frog755/dsh-client-auto-retry 加入 dsh.profile.bundles
2、是否已執行 pnpm install
3、是否已重啓 DeepSeek Harness。
4、Host 側 lib/index.js 改動後是否已重啓 DSH。

鏈接

GitHub 倉庫:

https://github.com/Frog755/dsh-client-auto-retry

社區目錄頁地址未在本次已覈實資料中確認。

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

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

小夜