DSH 插件:ai-eks/dsh-auth-tunnel

前言

DSH 的理念是「一切皆插件」。插件目錄是獨立站點,與 DeepSeek / 幻方沒有官方從屬關係,不應理解爲官方應用商店。

對智能體開發者來說,一個具體問題是:如何把本機的 DeepSeek Harness Web GUI 發佈到公網,同時避免公網請求直接落到 Web server,並且不直接修改 deepseek-harness 源碼。ai-eks/dsh-auth-tunnel 的做法是在 Web server 前加一個 loopback 密碼門,再由 cloudflared 建立 Cloudflare Tunnel。下面介紹它的安裝和用法。

這是什麼

ai-eks/dsh-auth-tunnelai-eks 維護的 MIT 許可插件。它包含兩個部分:

  • 一個 loopback password gate,提供登錄頁和 HMAC cookie;
  • 一個通過 cloudflared 啓動的發佈通道,支持 quick 或 named-tunnel 模式。

插件目標是在不修改 deepseek-harness 本身的情況下,把 DeepSeek Harness Web GUI 暴露到公網。

核心功能

公網暴露

  • 通過 Cloudflare Tunnel 暴露 DeepSeek Harness Web GUI。
  • 在 Web server 前添加 loopback 密碼門,包含登錄頁和 HMAC cookie。
  • tunnel 就緒後打印公網 Cloudflare tunnel URL。

兩種發佈模式

  • Quick 模式。
  • Named/tunnel token 模式。

設置與維護

  • Web Settings → Plugins → Plugin configuration 下提供 Auth Tunnel 設置卡。
  • 支持 allowRemoteSettings,允許認證後的公網頁面更新設置,並單獨更新 write-only 的訪問密碼。
  • 支持 passwordRefsessionTtlHours 的原地更新。

安裝與啓用

前置條件

1、dsh CLI 和 pnpmPATH 中。

2、cloudflaredPATH 中,或在插件中配置爲絕對可執行文件。

3、準備一個較長的隨機共享密碼,並保存爲 DSH credential。

4、package.json 聲明的 Node 要求是 ^22.19 || >=24

安裝

從 npm 安裝最新發布的 prerelease bundle:

dsh plugin --profile web add dsh-auth-tunnel@next

也可以從 Git 安裝當前源碼:

dsh plugin --profile web add github:ai-eks/dsh-auth-tunnel

當前分支面向 DeepSeek Harness 0.1.1-rc.2。如果使用 0.1.0-rc.8 或更早版本,需要固定一個兼容的 immutable tag 或 revision。

如果使用 pnpm 10 或更高版本,可能需要在 profile 的 pnpm-workspace.yaml 中允許構建。

保存訪問密碼

將訪問密碼保存爲 DSH credential:

DSH_WEB_PASSWORD: 'replace-with-a-long-random-password'

保存位置:

$DSH_HOME/.credentials.yaml

啓動 Web profile:

dsh web

典型用法

Quick 模式

啓動並建立 tunnel 後,終端會打印:

cloudflare tunnel: https://<random>.trycloudflare.com

打開這個 URL,在登錄頁輸入 DSH_WEB_PASSWORD

Named tunnel / token 模式

如果配置 publicHostname,使用 token 模式。示例中使用 DSH_TUNNEL_TOKEN,並在 cordis.patch.yml 中配置:

mode: token
tokenRef: DSH_TUNNEL_TOKEN
publicHostname: gui.example.com
gatePort: 7677

publicHostname 只填寫 DNS hostname,不要包含 https://、端口或路徑。

適用場景與注意

適合需要把本地 DeepSeek Harness Web GUI 暴露到公網,同時不希望直接修改 deepseek-harness 的使用者。

使用前注意:

  • DSH 插件會以當前 dsh 進程權限運行。安裝前應檢查源碼和許可證;本插件許可證爲 MIT。
  • allowRemoteSettings 默認啓用。如果認證後的公網頁面不應管理 tunnel 本身,應關閉它。
  • 訪問密碼和配置變更不會合併成一個事務提交;訪問密碼通過 write-only 按鈕單獨更新。
  • 遠程頁面不能保存會分配新的隨機 Quick URL 的變更;這類變更需要在本地完成。
  • 對於認證後的公網頁面,gate 會把 settings.*credentials.*llm.* 代理給 Host;針對 auth-tunnel namespace 的核心設置寫入會被拒絕,需要走插件的 fenced endpoint

參考

  • 插件目錄:https://www.skillhub.cn/plugins/ai-eks/dsh-auth-tunnel
  • GitHub:https://github.com/ai-eks/dsh-auth-tunnel
羽毛球分组比赛记分
小程序二维码

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

小夜