返回目錄

dsh-remote

編輯精選維護狀態: 活躍

xgone/dsh-remote

遠端訪問外掛:賬號密碼認證 + MFA (TOTP) 登入、簽名會話 Cookie、基於角色的訪問控制與管理頁面。

前往 GitHub
$ dsh plugin --profile web add @xgone/dsh-remote

51

星數

3

Fork

JavaScript

語言

MIT

授權條款

2026-08-16

建立於

2026-08-30

最近推送

一個原生的 DeepSeek Harness 套件,在 `dsh web` 前加一道加固的認證門禁(帳號密碼 + TOTP MFA、簽名工作階段 Cookie、基於角色的存取控制),讓你能經反向代理把 Harness 安全地暴露給遠端 / 區域網路瀏覽器。

DSH 整合

原生執行環境

作者聲明

安全稽核

未稽核

最後核實

2026-09-01

授權條款

MIT

01它能幫你完成什麼?

  • 把 DeepSeek Harness 的 `dsh web` 執行個體安全地暴露給遠端 / 區域網路瀏覽器,前面加上帳號 + MFA 認證

    登入門禁 + HMAC-SHA256 簽名的 HttpOnly 工作階段 Cookie + 基於角色的存取控制;經反向代理後外部瀏覽器即可使用完整功能,且不在宿主機彈任何原生視窗

    自行託管 DeepSeek Harness、並需要經反向代理 / 隧道 / Tailscale / Frp 安全遠端存取的運維者

  • 從遠端瀏覽器選擇 / 新增工作區、檢視宿主機檔案,而不依賴宿主機的原生對話框

    瀏覽器內的目錄對話框(雙欄目錄視圖 + 麵包屑 + 新建資料夾),以及把宿主機檔案串流推送到遠端側欄

    被 DSH 僅限 loopback 的原生目錄選擇器與宿主檔案開啟限制擋住的遠端使用者

  • 為 DeepSeek Harness 遠端登入增加 TOTP 多因素驗證(MFA)

    RFC 6238 TOTP 綁定(Google Authenticator / 1Password / Authy)、QR 碼 + 手動金鑰 + otpauth 連結 + 10 個一次性備用碼,並支援管理員復原

    任何把 DeepSeek Harness 暴露到遠端、並希望在密碼門禁之上再加第二因素的人

02如何將外掛接入 DeepSeek Harness?

先決條件

  • 已安装 DeepSeek Harness 并可运行 `dsh web`(默认端口 3080);
  • 已初始化 `web` profile(首次运行 `dsh web` 会自动初始化);
  • 系统 PATH 中有 `pnpm`(`dsh plugin` 命令需要它来管理 profile 的插件)。

安裝步驟

  1. 01

    安裝套件:`dsh plugin --profile web add @xgone/dsh-remote`(會自動把自身追加到 `dsh.profile.bundles`)

    $ dsh plugin --profile web add @xgone/dsh-remote

  2. 02

    重新啟動 `dsh web` —— Web 介面停用 HMR,必須重啟補丁才能生效

    $ dsh web

  3. 03

    開啟 http://127.0.0.1:3080 建立首個管理員(僅限本機提交);無瀏覽器伺服器可用 `bootstrap` 設定節預置管理員

驗證整合成功

  • 未登录时访问任意路径 → 登录页;直接调用 `/api` → 403
  • 登入後 `curl http://127.0.0.1:3080/auth/me` 應傳回 `{"authEnabled":true,"bootstrap":false,"authenticated":true,...}`

復原

  • 解除安裝套件:`dsh plugin --profile web remove @xgone/dsh-remote`,再重啟 `dsh web` 門禁即消失
  • 保留套件但關閉認證:在 `cordis.patch.yml` 設 `enabled: false` 後重啟

03DSH 整合程度與能力邊界

DSH 整合原生執行環境

Native DeepSeek Harness plugin — installs via `dsh plugin --profile web add`, wraps DSH's webServer routes + WebSocket as an auth gate (Cordis bundle patch)

  • 帳號密碼 + MFA 登入門禁

    使用者名稱 / 密碼(第二步再加 TOTP 動態碼)HMAC-SHA256 簽名的 HttpOnly 工作階段 Cookie;MFA 門禁後的 `/api` 與 WebSocket 存取

    未登录访问任何路径都得到自包含的登录页;`/api` 与 WebSocket 全部要求有效
  • 瀏覽器內目錄對話框(取代原生選擇器)

    工作區選擇 / 新建操作**瀏覽器內的目錄對話框**(雙欄目錄視圖 + 麵包屑 + 新建資料夾)

    DSH 預設的原生目錄選擇器被停用,改為 browse 後端
  • 遠端檔案側欄(/auth/file)

    遠端(非 loopback)瀏覽器在 DSH Web UI 中點擊檔案路徑宿主機檔案串流推送到右側面板(Markdown / 圖片 / PDF / 影片內聯,支援多面板)

    **右侧边栏面板**中显示(`/auth/file`
  • 基於角色的存取控制(admin / user / guest)

    client-request RPC 信封(方法級)認證通過後、關閉 `adminOnly` 時生效的逐方法存取控制

    關閉 `adminOnly` 後啟用三層方法級權限模型

04適合誰?何時不該用?

適合

  • 自行託管 DeepSeek Harness、並需要經反向代理 / 隧道 / Tailscale / Frp 安全遠端存取的運維者
  • 被 DSH 僅限 loopback 的原生目錄選擇器與宿主檔案開啟限制擋住的遠端使用者
  • 任何把 DeepSeek Harness 暴露到遠端、並希望在密碼門禁之上再加第二因素的人

不適合

  • Web 介面停用 HMR;任何設定修改後必須重啟 `dsh web`(補丁熱重載不可用)才能生效。
  • `dsh web` 拒絕 `--host 0.0.0.0`;公網暴露必須經由反向代理(TLS 終結 + WebSocket 轉發),並開啟 `trustProxy: true`(預設開)。
  • DSH 是單租戶的(一個程序級共享的 `$DSH_HOME`),套件無法隔離每位使用者的獨立工作區/工作階段——事件流、搜尋、任務等會全域洩漏。要隔離請每人一個 profile 執行個體;共用執行個體只能用角色體系約束。

05相容性、維護與安全提醒

  • Web 介面停用 HMR;任何設定修改後必須重啟 `dsh web`(補丁熱重載不可用)才能生效。
  • `dsh web` 拒絕 `--host 0.0.0.0`;公網暴露必須經由反向代理(TLS 終結 + WebSocket 轉發),並開啟 `trustProxy: true`(預設開)。
  • DSH 是單租戶的(一個程序級共享的 `$DSH_HOME`),套件無法隔離每位使用者的獨立工作區/工作階段——事件流、搜尋、任務等會全域洩漏。要隔離請每人一個 profile 執行個體;共用執行個體只能用角色體系約束。
  • 遠端檔案側欄預設只能顯示 DSH 主目錄與 dsh 程序工作目錄內的檔案;範圍外路徑提示 `outside-roots`,需管理員在「設定 → 允許的目錄」中新增(即時生效)才可見。
2026-08-162026-08-30作者未說明

MIT · 最後推送 2026-08-30 · 無打標發布(latest_release: none);README 記錄修復至 v0.2.6+

06常見問題

如何為 DeepSeek Harness 安裝 dsh-remote?

執行 `dsh plugin --profile web add @xgone/dsh-remote`,然後重新啟動 `dsh web`(Web 介面停用 HMR,必須重啟)。套件會自動把自身追加到 `dsh.profile.bundles`。開啟 http://127.0.0.1:3080 建立首個管理員即可。

dsh-remote 是取代官方的 `dsh web`,還是與它共存?

它包裝 DSH 自身的 `webServer` 路由與 WebSocket 升級握手,並未取代 `dsh web`。認證通過後把請求的 Host/Origin 歸一化為 loopback,使 DSH 的信任圍欄對外部瀏覽器放行特權方法(`host.pickDirectory`、`settings.*`、`credentials.*`)。

如何安全地將 DeepSeek Harness 暴露到公網?

`dsh web` 拒絕 `--host 0.0.0.0`,需放在反向代理(nginx / ssh 隧道 / Tailscale / Frp)後做 TLS 終結與 WebSocket 轉發,並開啟 `trustProxy: true`(預設開);HTTPS 部署建議把 `session.secure` 設為 `true`。

多位使用者可以共用一個執行個體並隔離工作區嗎?

不行。DSH 是單租戶的(一個程序級共享的 `$DSH_HOME`),套件無法隔離每位使用者的獨立工作區/工作階段——事件流、搜尋、任務等會全域洩漏。要隔離請每人一個 profile 執行個體(`dsh --profile alice --port 3081`);共用執行個體則用 admin/user/guest 角色體系約束。

08資料與來源

  • 作者聲明github.com0694a6350bb2…

    让 DeepSeek Harness 可以被安全地远程访问**:在 `dsh web` 前增加完整的账号密码认证 + MFA

  • 作者聲明github.com0694a6350bb2…

    就是那个认证层,认证通过后自动放行。

此頁面根據專案公開文件、儲存庫中繼資料與 DSH Plugins 的結構化解析所產生;最後核實於 2026-09-01。發現錯誤?提交更正。

🏆

最佳 DeepSeek Harness 外掛

從全目錄挑出的 12 個值得優先安裝的外掛,涵蓋各個分類。

DSH Plugins 是獨立的 DeepSeek Harness 外掛市集,與 DeepSeek 官方無關,也不代表官方背書。第三方外掛未經安全稽核,安裝前請審查原始碼。

每週取得最新的 DeepSeek Harness 外掛,絕不濫發。