dsh-peer-bus:DeepSeek Harness 的跨會話消息總線

在 DeepSeek Harness (DSH) 中,會話通常運行在隔離的上下文中。如果需要讓一個智能體去觸發另一個智能體執行任務,傳統的自然語言提示往往不夠精確。dsh-peer-bus 插件提供了一個跨會話的消息總線,讓獨立的會話能夠尋址並喚醒彼此。

插件概況

  • 名稱:dsh-peer-bus
  • 維護者:ybh1291747665
  • 類別:工作流
  • 許可證:MIT
  • 核心價值:在 DSH 生態中建立跨會話的通信機制,支持會話間的喚醒、詢問與回覆。

安裝與啓用

安裝插件需要使用 DSH 的插件管理命令。

dsh plugin --profile web add dsh-peer-bus

安裝完成後,需要重啓 DSH 才能生效。如果安裝過程中 pnpm 提示缺少依賴,可以忽略,DSH 的運行時環境會提供這些依賴。

典型用法

要使用跨會話通信,需要先獲取會話的標識符,建立權限,然後通過自然語言指令觸發調用。

  1. 獲取會話 ID
    在每一個需要參與通信的會話中運行以下命令,複製返回的 ID:
    /bus id
  1. 建立權限
    權限默認是拒絕的。你需要顯式授權。授權必須在接收方的會話中執行。

    假設會話 A 想要給會話 B 發消息,你需要在會話 B 中運行:

    /bus allow <A's id>
  1. 發起調用
    在會話 A 中,直接用自然語言向模型下達指令。模型會自動選擇合適的工具(如 bus_ask 或 bus_send)。

    • 同步詢問:讓 B 回答問題並在當前回合返回結果。

      Ask <B's id> what the release version is.

    • 單向發送:只喚醒 B,不等待回覆。

      Send <B's id> a message saying ….

    你不需要在提示中輸入工具名稱,模型會根據上下文自動選擇。

核心功能

插件爲模型提供了以下工具:

  • bus_send:發送一條消息,目標會話會被喚醒並運行一回合。
  • bus_ask:向目標提問,答案會在當前回合返回。
  • bus_reply:顯式地回答一個問題。
  • bus_wait:接收並處理一條傳入的消息,而不是讓它直接運行一回合。
  • bus_roster:列出當前會話能夠訪問的其他會話列表。
  • bus_status:查詢之前發送消息的狀態。
  • /bus:用於授予或撤銷權限(此命令僅限用戶使用,模型無法執行)。

注意事項

  • 權限控制:在沒有任何授權的情況下,模型無法向其他會話發送消息。必須通過 /bus allow 或配置文件授予訪問權限。
  • 安全風險:傳入的消息會被當作用戶消息處理,且模型可能會將其視爲指令。因此,開放的消息總線可能構成提示注入的路徑。建議在不需要時及時撤銷權限。
  • 跨進程通信:默認情況下,跨進程通信是關閉的。如果需要讓不同 DSH 進程中的會話互相通信,需要在兩個進程的配置中都設置 crossProcess: true。
  • 成本與性能:每一條消息都會喚醒目標會話執行一次完整的回合,這意味着每次調用都會消耗一輪上下文和計算資源。
羽毛球分组比赛记分
小程序二维码

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

小夜