前言¶
在本地運行 DeepSeek Harness(DSH)會話時,通常面臨無法從網絡外部訪問或接收外部觸發請求的問題。dsh-maestro-remote 旨在解決這一痛點,它通過 Cloudflare Tunnel 建立通往外網的通道,並提供帶 PIN 認證的遠程代理,同時支持通過隧道入口接收 GitLab 等服務的 Webhook。
插件簡介¶
這是一個爲 DeepSeek Harness 提供遠程訪問能力的插件。它利用 Cloudflare Tunnel 將本地服務暴露到公網,並配合 PIN 認證機制保護代理入口。該插件屬於 Maestro Harness 套件(dsh-maestro-*)的一部分。
核心功能¶
插件主要包含以下能力:
-
隧道生命週期管理
- 支持啓動、停止、查詢隧道狀態。
- 支持快速隧道或命名隧道。
- 系統啓動時會自動恢復之前運行的命名隧道。 -
遠程代理與認證
- 提供遠程代理服務,請求處理受 PIN 認證保護(使用常量時間比較算法)。
- 支持配置重載。 -
流量分發
- 默認將非 Webhook 路徑的流量導向遠程代理。
- 支持 GitLab Webhook 請求通過隧道入口(ingress/hooks/*)分發。 -
Cloudflared 管理
- 自動解析 PATH 中的 cloudflared 二進制文件,若不存在則自動下載到緩存目錄。
配置與依賴¶
插件依賴 Node.js 環境,版本需滿足 ^22.19.0 || >=24.0.0。
配置數據持久化存儲在共享命名空間設置中(~/.dsh/maestro/settings.json),而機器運行時狀態(如 lastTunnelRunning)則存儲在插件自身的 Sidecar 目錄(~/.dsh/dsh-maestro-remote/runtime.json)中。這種分離設計是爲了防止在編輯配置時意外改變隧道的運行狀態。
安裝與啓用¶
通過以下命令安裝插件:
dsh plugin --profile web add @ddtcorex/dsh-maestro-remote
安裝前請確認源碼符合您的要求,且許可證(MIT)允許您的使用場景。
使用說明¶
配置通過共享命名空間設置進行,無需單獨創建配置文件。
需要注意,隧道配置的變更(如修改隧道名稱或入口規則)必須經過實時的啓動/停止驗證,以確保配置生效,詳見 AGENTS.md。
適用場景與注意¶
此插件適合需要在遠程網絡環境下訪問 DSH 會話,或通過公網隧道觸發本地智能體任務(如接收 GitLab Webhook)的開發者。