dsh-session-supervisor: DeepSeek Harness 會話生命週期監督插件

前言

DeepSeek Harness 的插件化架構允許開發者擴展行爲。面對需要嚴格時間控制或異常檢測的長會話場景,手動監控往往效率低下且容易遺漏。acosmi/dsh-session-supervisor 提供了一套基於事實的生命週期監督機制,旨在解決活躍會話中的靜默超時、截止延誤及異常輪次問題。

這是什麼

這是一個面向活躍(宿主進程存活中)DeepSeek Harness 會話的、可持久、有預算的生命週期監督插件。它通過定時評估驅動,僅依據會話生命週期事實做判斷,不執行任何外部操作。

核心功能

  • 生命週期監督:支持三種監督契約——靜默檢測(連續 N 秒無事件)、截止時間檢測(RFC3339 截止已過)、異常輪次檢測(連續 K 個 turn/end 狀態爲 error/blocked 等)。
  • 持久化與排隊:當策略越界時,插件會形成可持久記錄的 incident,限制證據數量與大小,並在配置允許時向 owner 會話排隊 follow-up。
  • Guardian 工具:提供創建、列表、更新(暫停/恢復/確認/關閉)、檢查狀態的命令。
  • 只觀察不執行:無 shell 執行、無網絡請求、不 cancel Agent,確保監督者不干擾業務邏輯。
  • 冷會話恢復:支持在 resume 會話時合併過期的 deadline 並重新錨定 silence 檢測。

安裝與啓用

安裝前請確認已鎖定具體版本,不要使用 latest。

dsh plugin --profile <name> add @<publisher>/dsh-session-supervisor@0.1.0-beta.1

安裝後,插件會將配置對象整對象替換寫入 profile 的 cordis.patch.yml,請確保配置文件結構完整。

典型用法

  1. 聲明監督契約:在配置中定義 lifecycle_silence、deadline_unclosed 或 abnormal_turn_streak 等策略。
  2. 管理 Guard 狀態:使用 guardian_create 創建監督對象,通過 guardian_update 對 incident 進行 acknowledge(確認)或 close(關閉)。
  3. 手動觸發檢查:使用 guardian_check_now 進行單次評估,僅記錄真實發生的狀態轉換。
  4. 恢復會話:在 resume 會話時,插件會自動合併已逾期的 deadline,並在 silence 重新錨定後繼續監督。

適用場景與注意

  • 宿主進程依賴:計時僅在 harness 進程存活期間進行。如果宿主進程掛掉,計時停止,無法監督冷會話。
  • 通知冪等性:由於 at-least-once 投遞機制,通知可能重複。需依賴 incident id 去重。
  • Agent 不可救回:掛死的 Agent 無法被本插件救回(插件不會 cancel Agent),只能排隊 follow-up。
  • 日誌零污染:v1 版本不向會話日誌寫入任何事件,狀態存儲在獨立目錄。
  • 版本鎖定:必須按發佈逐個鎖定版本,避免兼容性問題。
  • 架構限制:單宿主、單進程架構,無多宿主協調。

結語

該插件適合需要嚴格生命週期管理能力的場景。它提供了從檢測、記錄到排隊 follow-up 的完整流程,但開發者需注意其僅觀察不執行、依賴宿主存活等特性。

項目地址:https://github.com/acosmi/dsh-session-supervisor

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

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

小夜