
mervyn-teo/dsh-plugin-qr-connect
30最近提交 2026年8月15日
dsh-plugin-qr-connect DSH 插件
该插件在 DeepSeek Harness 网页界面的侧边栏底部注入一个全宽按钮。点击后显示两个二维码(局域网和公网),背后是一个带认证的小型反向代理。代理验证定期轮换的密钥并颁发会话 Cookie,然后将请求转发到回环 Web UI,包括 WebSocket 升级。
如何安装 dsh-plugin-qr-connect DSH 插件
dsh plugin --profile web add github:mervyn-teo/dsh-plugin-qr-connect复制不会执行命令。安装 dsh-plugin-qr-connect DSH 插件前请核对仓库和版本。
dsh-plugin-qr-connect DSH 插件数据来源
dsh-plugin-qr-connect DSH 插件快照日期:2026年8月16日
discovered
dsh-plugin-qr-connect DSH 插件能做什么
- 在侧边栏底部插件按钮上方添加一个二维码按钮。
- 显示两个二维码:局域网(黑色)和公网(蓝色)。
- 运行一个子 Node.js 进程作为反向代理,端口可配置,带认证访问。
- 每 30 秒轮换密钥(可配置)并刷新二维码。
- 支持点击复制二维码链接,公网二维码有信息提示。
- 在设置 → 插件下提供配置卡片,可设置端口、会话时长和刷新间隔。
- 通过 DSH 的本地化服务支持中英文界面。
dsh-plugin-qr-connect DSH 插件适合哪些场景
- 用手机或平板在同一网络内扫描二维码即可打开 DSH Web UI,无需手动输入地址。
- 为同事或朋友提供临时公网访问 DSH 代理 shell 的权限。
- 在不方便输入 URL 的设备上快速访问 Web UI。
- 在演示或监控中通过手机展示 DSH 会话。
- 通过扫描二维码在电视或第二屏幕上打开 UI。
dsh-plugin-qr-connect DSH 插件适合谁
- 需要从移动设备在同一网络内访问 DSH Web UI 的用户。
- 希望通过轮换密钥安全地通过公网共享 DSH 界面的开发者或运维人员。
dsh-plugin-qr-connect DSH 插件的限制
- 需要 DSH 挂载 `subprocess`、`fs` 和 `webServer` 服务。
- DSH 主机需要互联网访问以获取公网 IP(通过 api.ipify.org)。
- 扫描设备必须能够到达代理端口;主机防火墙可能需要允许规则。
- 公网访问需要端口转发,且会向任何能到达端口的人暴露代理 shell,仅靠轮换密钥和会话 Cookie 保护。
- 不是加固的远程访问层,仅适用于可信网络环境下的便利性。
dsh-plugin-qr-connect DSH 插件的仓库 README 摘录
以下文字摘自 dsh-plugin-qr-connect DSH 插件的上游仓库 mervyn-teo/dsh-plugin-qr-connect 的 README,版权归原作者,仅作引用。
English | [中文](README.zh.md) A [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (DSH) Web plugin that adds a **QR-code button above the Settings button** in the sidebar footer. It runs a small auth-gated reverse proxy so a phone on the same network (or the internet) can scan a QR code and open the web UI securely. It is a persistent bundle plugin (a host half plus a browser half) that loads on every boot. ## Demo <p align="center"> <img src="assets/demo-v2.gif" alt="dsh-plugin-qr-connect demo — click the QR button, scan, connect" width="360"> </p> ## What it does - Adds a full-width button (`sidebar.footer.action`, id `qr-connect`) stacked **above** the shipped Plugins button. - Opens a fading panel with **two** QR codes: - **Local network** — `http://<lan-ip>:<port>/?auth=<secret>`. - **Public internet** — `http://<public-ip>:<port>/?auth=<secret>` (blue). - The reverse proxy (a child `node` process on `0.0.0.0:<port>`) validates the secret, issues a session cookie (default 30 days), and forwards to the loopback web UI — including WebSocket upgrades so live updates reach the phone. - The secret rotates every 30s by default and the QR refreshes t
阅读完整 README仓库许可: MIT
dsh-plugin-qr-connect DSH 插件常见问题
如何安装 dsh-plugin-qr-connect?
在终端中运行命令 `dsh plugin --profile web add github:mervyn-teo/dsh-plugin-qr-connect`,然后重启 `dsh web` 以加载插件。重启后,侧边栏的插件按钮上方会出现一个二维码按钮。
如何配置代理端口或会话时长?
你可以直接编辑 `cordis.patch.yml` 文件中的默认值(port、sessionDays、refreshSeconds),然后重启 DSH。或者在 Web UI 中进入设置 → 插件 → QR connect,在那里调整参数,修改会立即生效。
这个插件可以通过公网使用吗?
可以,插件会显示一个公网二维码。但你需要确保 DSH 主机的代理端口可以从公网访问(例如通过端口转发)。公网 IP 会自动通过 api.ipify.org 检测。注意,代理仅靠轮换密钥和会话 Cookie 保护,适合在可信网络环境中使用,并非加固的远程访问方案。
如果关闭密钥轮换会发生什么?
如果你将 `refreshSeconds` 设置为 0,密钥将不再轮换,二维码也不会刷新。这会降低安全性,因为同一个密钥会永久有效。建议保持较短的刷新间隔(例如 30 秒)以获得更好的安全性。
这个插件在 Windows、macOS 和 Linux 上都能工作吗?
是的,主机部分使用进程内的方法检测本地 IP 和公网 IP,不依赖 shell 命令,并通过 stdin 与代理子进程通信。已在三个平台上测试通过。只需确保 Node.js 和 DSH 已安装并挂载了所需的服务。