dsh-keep-going: 恢復 DSH 重啓後的中斷會話

前言

在使用 DeepSeek Harness (DSH) 時,如果執行了網關重啓操作,其他正在進行的對話會停止,歷史記錄保留但工作中斷。你需要找到每個對話並手動輸入“continue”才能繼續。

dsh-keep-going 插件利用 DSH 保存的會話歷史,在網關重啓後自動恢復未完成的工作。它不需要瀏覽器重新打開每個對話,也不侷限於通過插件請求的重啓。

這是什麼

這是一個由 Carrick-K7 維護的 DSH 工作流插件(MIT 許可證)。它的核心價值是:網關重啓不應讓所有未完成的對話停留在等待狀態。

核心功能

插件提供以下能力:

  1. 恢復中斷會話與歷史:利用持久化的會話記錄恢復未完成的工作。
  2. 保持活躍目標運行:重啓後自動接續正在執行的目標。
  3. 保留等待用戶回答的問題:等待用戶回覆的對話在重啓後保持等待狀態,不自動模擬回答。
  4. 僅觸發一次:插件在每次進程重啓後運行一次,隨後進入休眠。
  5. 過濾無效任務:不處理存檔會話、暫停、被阻止或已完成的目標。
  6. 不處理工具錯誤與已完成任務:工具錯誤或已取消的任務不會被重新啓動。

安裝與啓用

該插件僅通過 GitHub 分發,未發佈到 npm。

安裝命令如下:

dsh plugin --profile web add git+https://github.com/Carrick-K7/dsh-keep-going.git#0.2.6

安裝完成後,必須重啓 DSH 進程以激活恢復功能。

典型用法

插件提供了以下命令來管理重啓和恢復狀態:

  • restart_harness:等待正在運行的工作,保存新接收的消息,然後請求 DSH 正常退出。
  • /restart:與 restart_harness 行爲一致,但保留髮出命令的對話作爲調用者。
  • keep_going_status / /keep-going:檢查當前對話的恢復進度和問題,包括未回答的問題。
  • keep_going_clear_goal:移除已停止(暫停、被阻止或完成)的目標,保留其歷史記錄爲墓碑,並清除其恢復記錄。

恢復行爲說明:
* 恢復後,活躍目標會被重新觸發一次,交給 DSH 的目標驅動程序處理。
* 等待用戶回答的問題不會被自動回答,需要你在對應對話中手動回覆。
* 安全批准(approval)不會被重放,需要通過 DSH 正常機制重新批准。

適用場景與注意

  1. 分發渠道:僅通過 GitHub 倉庫分發。
  2. 環境依賴:需要 DSH 提供原生會話、持久性查詢、目標驅動程序等核心服務,否則屬於部署錯誤。
  3. 運行機制:插件以當前 DSH 進程權限運行。它不會重新啓動已完成的任務或存檔會話。
  4. 重啓方式:必須通過服務管理器(如 systemd)重啓 DSH,插件本身不負責啓動替代進程。

結語

dsh-keep-going 爲 DSH 提供了自動化的任務恢復能力,避免了因網關重啓導致的對話中斷。通過簡單的配置和命令,可以顯著減少維護成本。

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

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

小夜