dsh-meeting-coordinator:給 Agent 裝上持久會議室與會話互相喚起

在 DeepSeek Harness(DSH)的多 Agent 協作場景中,單個 Agent 長期運行容易產生上下文污染、陷入死循環或遺忘全局目標。dsh-meeting-coordinator 旨在爲這些長跑的 Agent 裝上「會議室」與「互相喚起」的能力,基於 dsh-std 元協議,提供持久化的多 Agent 協作方案。

核心概念:持久會議室與會籍

本插件的核心不是簡單的廣播,而是建立持久實體。

  1. 持久實體與會籍
    會議室是持久存在的實體,不是每次開會臨時建立。會籍是權限邊界:只有加入會議室的會話才擁有「喚起會議」的權利,也纔有資格被他人喚起。未加入的會話既不能召集,也不會被誤召。

  2. 跨工作區與主動加入
    成員可以跨工作區加入同一個會議室。會話必須主動加入會議室,入場時會預注入一段 Prompt,說明議題、在場成員及發言規則。會後,每個會話各自對會議進行壓縮,只保留與自己相關的內容,避免上下文污染。

狀態流轉與會話喚起

插件定義了 working、idle-waiting、done 三種狀態,並規定了明確的流轉邏輯。

  1. 入場機制

    • working 狀態:正在輸出或調用工具的會話,先進 awaiting-entry。宿主會在當前工作單元結束(如工具調用返回)時才允許其入場,不打斷正在進行的任務。
    • idle-waiting / done 狀態:沒有工作單元等待的會話,直接入場。
  2. 急停與還原
    散會時,所有成員會還原到被召集之前的狀態。正在跑的繼續跑,等待回覆的繼續等,已完成的保持完成。插件提供了完整的急停機制閉環,確保會議結束後 Agent 不會因狀態錯亂而失效。

主持人控場與無上下文設計

爲了防止控場邏輯被其他 Agent 的上下文帶偏,插件採用了獨特的主持人設計。

  • 無上下文主持人:主持人由召集者的模型擔任,但它沒有任何私有上下文。它只能看到羣聊記錄、成員名單以及誰還沒有說話。
  • 控場權:主持人通過 JSON 格式的控制決定(如 invite 或 adjourn)來控場。如果解析失敗,會回退到安全輪轉模式,確保會議不會卡住。

工程約束與數據隔離

在實現層面,插件堅持幾個關鍵的不變量,以保證系統的穩定性。

  1. 拒絕截斷,硬預算限制
    對於單次發言的字數,採用硬預算策略。如果字數超過限制,直接拒絕該次發言,而不是截斷。這避免了 Agent 以爲訴求已傳達但實際被截斷的隱患。

  2. 數據根獨立性
    數據存儲根目錄默認不依賴進程的 cwd(除非配置),避免因啓動目錄不同導致數據丟失或錯位。

  3. 隔離性
    進會議室時,注入的是記憶的「限長投影」而非完整上下文。進會議室後,私有上下文在會話間不流動,確保每個 Agent 只看到與自己相關的部分。

使用方式

插件提供了幾個演示腳本,用於驗證核心機制。

pnpm run demo:room
pnpm run demo
pnpm run demo:briefing-exchange

狀態與依賴

  • 依賴:基於 dsh-std 元協議(Community v0.15)。
  • 當前狀態:早期階段。核心機制已經跑通,測試覆蓋率爲 215 個,但尚未在真實生產場景中長時間運行。
  • 許可:MIT。

該插件爲 DSH 生態中的多 Agent 協作提供了結構化的解決方案,適合需要持續協作且需嚴格控制上下文污染的場景。

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

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

小夜