在 DSH(DeepSeek Harness)開發中,當 Connection 和 Typert Gateway 分工負責通信與邏輯時,構建雙向服務調用往往需要額外的適配層。the-binding-of-dsh 插件旨在彌合這一缺口,讓兩者能夠直接協作。
這是一個 DSH 插件,由 CH4ACKO3 維護。它的核心價值在於讓 DSH Connection 與 Typert Gateway 支持雙向服務調用,從而簡化了多端通信的集成工作。
核心功能¶
插件提供了以下能力:
- 定向調用:支持針對已連接的瀏覽器或 Node peers 進行定向的 Host-to-Client 調用。
- 雙向網關:實現對稱的 Typert Gateway 調用,支持雙向服務交互。
- 生命週期管理:處理請求關聯、取消以及連接的完整生命週期。
- 傳輸複用:Typert RPC 的請求、結果和取消信號共享原生
events.hostWebSocket;原生多路複用事件和批量 HTTP API 保持其原始傳輸方式。 - 職責分離:插件不增加並行載體。Connection 負責對等尋址和生命週期,Typert Gateway 負責服務描述符、編解碼、調用和錯誤處理。
安裝與啓用¶
安裝命令如下:
npm install the-binding-of-dsh
此插件會在 package.json 中聲明其 DSH 客戶端入口點和 Harmony 補丁,因此可以直接作爲常規 DSH 插件啓用。使用前需確保環境滿足以下依賴:
- Node.js:22.22.3 或更新版本。
- Harmony:0.8.6 或更新版本。Harmony 會自動提取 Connection 補丁引入的瀏覽器模塊依賴並自動排序 Binding 模塊。
典型用法¶
插件啓用後,開發者可以在 Connection 和 Typert Gateway 之間建立雙向通道。通過該機制,Host 端可以直接向已連接的客戶端發起請求,同時 Gateway 也能在兩個方向上進行服務調用。由於插件複用了原生 WebSocket 和 HTTP API,無需額外配置傳輸層。
適用場景與注意¶
此插件適合需要在現有 DSH 架構中引入雙向通信能力的場景。
- 環境要求:必須使用 Node.js 22.22.3 或更新版本,以及 Harmony 0.8.6 或更新版本。
- 權限與安全:插件以當前 DSH 進程權限運行,安裝前請務必檢查源碼與許可證。
- 架構職責:開發時需注意 Connection 負責尋址和生命週期,Gateway 負責業務邏輯(描述符、編解碼、調用),兩者通過 Binding 模塊協同工作。