dsh-model-interruption-notifier:模型運行失敗後自動或手動繼續會話

前言

在 DSH 裏跑長對話或複雜工作流時,模型回合偶發失敗是常見情況。失敗會中斷當前輪次,若無人值守,任務往往停在錯誤狀態;若一直盯着界面手動重試,又會打斷開發節奏。相比單純依賴錯誤日誌後再回到會話裏手打「繼續」,把「失敗後是否繼續」做成可配置、可感知的插件行爲,更貼合日常迭代。

下面介紹社區插件 dsh-model-interruption-notifier(維護者 MeirinRuan,分類:工作流)。它在模型運行失敗且回合結束時,默認自動通過原會話消息路徑提交固定文本 繼續;也可在插件詳情關閉自動繼續,改爲右下角提醒,由你確認後再繼續。

這是什麼

dsh-model-interruption-notifier 是 DeepSeek Harness(DSH)擴展插件,當前包版本 1.1.1,許可證 MIT。插件只使用 DSH 擴展服務,不包含遊戲邏輯、公司系統集成、賬號配置或會話數據;繼續推理仍走原會話的模型服務與上下文,不增加獨立上報端點。

在 SkillHub 目錄頁 可查收錄信息;源碼與說明在 GitHub 倉庫。

核心功能

自動繼續(默認開啓)

插件詳情頁提供 Automatically continue(自動繼續)開關,保存後立即生效。開啓時,某次對話在空閒且上一輪被記錄爲失敗後,Host 會通過該會話的正常 prompt 路徑提交一條內容爲 繼續 的用戶消息。若下一輪再次失敗,在滿足條件時仍可再次觸發;文檔未提供次數上限或退避策略,持續失敗可能反覆消耗模型配額。

自動繼續可在無打開頁面的情況下運行;加載插件本身不會爲歷史失敗補發繼續。

角落提醒與手動確認

關閉自動繼續後,新的符合條件失敗會在右下角顯示提醒,包含會話標題與錯誤信息。Confirm and continue 同樣提交 繼續;選 Later 或在卡片內按 Escape 會隱藏該次失敗(至頁面重載前),後續新失敗仍可提醒。卡片不搶焦點;與同角落的待回答問題相比,待回答問題優先。

手動確認時會再次檢查失敗序號與會話運行狀態;若提交被拒絕,界面展示錯誤且不會重複發送。

觸發範圍與排除

僅當錯誤被記錄且該回合結束纔算一次「失敗輪次」。正常結束、用戶手動取消、中間請求重試不算。新的回合或用戶消息會清除當前失敗狀態。普通 fork 出的會話適用;委派子 Agent(delegated subagents)不適用。

數據與界面

失敗輪次的序號、時間、錯誤信息與錯誤碼寫入 DSH Session 投影;前端讀取會話標題與運行狀態。提醒樣式跟隨 DSH 主題。插件不注入工具、不修改 system prompt、不維護獨立憑證庫。

安裝與啓用

package.json 聲明插件面向 DSH 0.2.2-rc.1,其它 DSH 版本需自行驗證擴展 API。本地開發環境要求 Node.js ^22.19.0 || >=24.0.0,包管理器 pnpm 11.28.5。

安裝步驟建議按官方文檔走發佈包,而不是憑倉庫名拼接命令:

  1. 在 GitHub Releases 下載預構建的 .tgz(若已有對應版本發佈)。
  2. 通過 DSH 插件管理器安裝該文件,或在 CLI 中指定絕對路徑。下列示例面向 web profile:
dsh plugin --profile web add <absolute-path-to-downloaded.tgz>

歸檔內已含瀏覽器端構建產物,安裝後無需本地 pnpm build。包內 dsh.bundle.patch 掛載 Host;DSH 按清單發現 Client。禁用該 bundle 可同時停止自動繼續與提醒。

若要移除已安裝的公開包:

dsh plugin --profile web remove dsh-model-interruption-notifier

注意: 不要與舊的 @local/dsh-model-interruption-notifier 同時啓用,兩者共用同一 Host 插件 ID 與 Session 投影。啓用公開包前,應移除或禁用舊的本地面 bundle。

若使用 Desktop CLI 且 profile 爲 desktop,需先打開 Desktop 完成初始化,再完全退出 Desktop 後執行插件命令(與 web 示例同理,僅 profile 不同)。

典型用法

  1. 安裝並啓用插件後,保持詳情頁 自動繼續 爲默認開啓,在長任務或無人值守跑會話時,模型單輪失敗後可自動提交 繼續。
  2. 調試持久性錯誤、或希望看清錯誤再決定時,在插件詳情關閉自動繼續;失敗後在右下角閱讀標題與錯誤文案,再點 Confirm and continue。
  3. 需要從源碼參與開發時,在克隆後的倉庫內執行(普通用戶安裝 .tgz 可跳過):
pnpm install --frozen-lockfile
pnpm run build
pnpm test

測試覆蓋失敗輪次選擇、繼續准入、自動繼續與配置註冊等,文檔仍建議在真實 DSH 會話中聯調。

適用場景與注意

適合誰: 經常在 DSH 裏跑模型回合、且偶發 Provider 或網絡錯誤導致單輪失敗的開發者;希望默認「失敗後自動續跑」,又能在插件裏一鍵切到「先提醒再確認」的場景。

權限與隱私: 插件以當前 DSH 進程權限運行,安裝前應閱讀源碼與 MIT 許可證。會話標題與錯誤信息可能包含項目名、路徑或 Provider 診斷;對外截圖、報 bug 或演示時宜用合成會話,勿公開帶敏感內容的運行時配置或 Session 日誌。

能力邊界: 進程崩潰、網絡中斷且未形成「已記錄回合錯誤」時,插件無法介入。實時角落提醒需要已連接的頁面;同頁內的「稍後」僅在該次掛載內有效。瀏覽器外觀與真實指針交互需另行做連接瀏覽器的檢查。

配額: 自動繼續可能連環觸發並消耗模型配額;對反覆失敗的會話應關閉自動繼續並排查根因。

結尾

dsh-model-interruption-notifier 把「模型回合失敗後的繼續」收成插件內可切換的策略:默認自動發 繼續,也可改爲角落提醒手動確認,並明確排除委派子 Agent。收錄與介紹見 SkillHub 目錄,安裝與行爲細節以 GitHub 文檔 爲準。

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

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

小夜