DeepSeek Harness Hub
← 返回列表

Raiyan007-gb/dsh-remote-tunnel-easy

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

在手机上打开你的 DeepSeek Harness 会话——只需用摄像头对准它。

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/5 · 已提供中文文档

DSH 插件包:扫描二维码,即可在同一会话中于手机上打开 deepseek-harness Web UI——cloudflared 快速隧道,无需数据库,支持 Windows/macOS/Linux

综合分
29.2
GitHub 分
29.2
用户评分
★ Stars
1
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add Raiyan007-gb/dsh-remote-tunnel-easy
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/19(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-settings
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-remote-tunnel-easy

在手机上打开你的 DeepSeek Harness 会话——只需用摄像头对准它。

扫描 设置 → 插件 中的二维码,harness 便会在你手机的浏览器中打开,
就在你当前正在使用的会话里。相同的工作区,相同的聊天。无需输入 URL。
dsh web 终端不会打印任何内容。

License: MIT
GitHub Stars
Release
npm

⚠️ 已从 qrcode-hassle-free 更名 —— 原为 Raiyan007-gb/dsh-qrcode-hassle-free(npm qrcode-hassle-free)。现为 dsh-remote-tunnel-easy(Raiyan007-gb/dsh-remote-tunnel-easy,npm dsh-remote-tunnel-easy@1.4.2)。如果你安装的是旧名称,请先迁移——移除旧 bundle,然后添加新的。

一个单命令的 DeepSeek Harness web bundle,将基于二维码的远程
交接带到设置页面。它会启动一个 cloudflared 快速隧道,将你的手机接入
桌面正在使用的确切会话,并把二维码和设置直接绘制在你的其他插件旁边——
没有终端噪音,没有数据库,没有 Firebase,无需安装应用。

- 扫码即开 —— 设置 → 插件 中有一个真正的二维码,每次运行都会刷新
- 同一会话 —— 手机进入的正是你当前所在的聊天和工作区
- 自动安装 —— 检测 cloudflared,缺失时自动下载(经 SHA-256 校验)
- 重新生成 —— 一键为同一会话生成新的隧道 URL,无需重启
- 可编辑设置 —— 可在页面中设置隧道目标、cloudflared 路径和会话交接
- 不存储任何内容 —— 隧道 URL 每次运行都是随机的;不会保存到任何地方
- 全平台支持 —— Windows(x64/x86)、macOS(Intel/Apple Silicon)和 Linux(x64/arm64)

一览

| 问题 | 回答 |
|----------|--------|
| 它是什么? | 一个 dsh bundle,在设置页面中显示可扫描的二维码和访问链接,让手机能在活动会话中打开 harness。 |
| 它适合谁? | 任何运行 dsh web 并希望手机接入同一会话、无需输入隧道 URL 和令牌的人。 |
| 我能得到什么? | 一个回环边缘代理、一个 cloudflared 快速隧道、同一会话交接,以及 设置 → 插件 中的实时二维码 + 设置卡片。 |
| 它能在什么上运行? | Windows、macOS 和 Linux —— 任何能运行 dsh 的平台。 |
| 是否需要云服务? | 无需账户或注册。使用 cloudflared,首次运行时若缺失会自动下载;隧道是公开的,链接中的令牌就是访问凭证。 |

快速开始

运行一次 dsh web,以便存在一个配置文件——这是唯一的前提条件。
cloudflared 不再需要你手动安装:首次启动隧道时,该捆绑包会探测你的 PATH,当找不到 cloudflared 时,它会下载官方固定版本的二进制文件(经 SHA-256 校验),缓存到你的用户缓存目录中,并在之后复用。想使用自己的安装?把它放到 PATH 上,或在卡片中将 cloudflared 路径 字段设置为绝对路径——显式路径会同时禁用探测和下载。

最简单的方式——使用插件名称从 npm 注册表安装:

dsh plugin --profile web add dsh-remote-tunnel-easy@latest --config.minimumReleaseAge=0

--config.minimumReleaseAge=0 标志会绕过 pnpm 约 24 小时的发布时长限制,因此新发布的版本会立即安装。如果不加该标志,直接运行 dsh plugin --profile web add dsh-remote-tunnel-easy 仍然可行,但可能会等到新鲜度窗口过去之后才安装。

或者,如果你愿意,也可以直接从 GitHub 仓库 URL 安装:

dsh plugin --profile web add https://github.com/Raiyan007-gb/dsh-remote-tunnel-easy

如果想使用本地检出,请克隆它并添加该文件夹:

git clone https://github.com/Raiyan007-gb/dsh-remote-tunnel-easy
dsh plugin --profile web add \./dsh-remote-tunnel-easy

这些命令会在需要时初始化配置文件、链接该包并注册该捆绑包。无需构建步骤——该包以纯 ESM 形式发布,零运行时依赖(QR 编码器和 cloudflared 解析器均内置于代码树中),因此 add 和 remove 保持快速,且从不运行安装脚本。

安全提示: 从 git URL 安装会请求运行该包安装脚本的权限。此包没有任何安装脚本(纯 ESM,无 postinstall),但请固定一个提交——在 URL 上加上 #——以冻结所运行的内容。若要完全跳过安装权限,请用 pnpm pack 打包成 tarball,然后运行
dsh plugin --profile web add ./dsh-remote-tunnel-easy-1.1.0.tgz。

然后重启 dsh web——每次启动时,二维码和设置都会出现在 Settings → Plugins → DSH Remote 中。

它的作用

每次 dsh web 启动时,该捆绑包会:

1. 启动一个回环边缘代理(127.0.0.1,临时端口),将每个请求和 WebSocket 升级转发到 harness,并将 Host 和 Origin 重写为回环权威。这正是让 harness 的 /api 浏览器信任围栏接受隧道流量的原因——该围栏要求 Origin == Host,而手机的 Origin 是隧道主机名,仅靠 --http-host-header 重写永远无法满足。没有该代理,应用可以加载,但每次 API 调用都会返回 403。
2. 定位 cloudflared——优先使用配置的 cloudflared 路径 覆盖值,否则使用 PATH 上的二进制文件,否则使用经 SHA-256 校验的固定下载版本(2026.8.2),并
缓存在用户缓存目录下。然后它会启动
cloudflared tunnel --no-autoupdate --url http://127.0.0.1:
指向该代理。
3. 等待 cloudflared 打印出随机的 https://.trycloudflare.com URL。
4. 通过 harness 连接服务(authenticatedUrl —— 与控制台行打印的同一个 mint)
解析此进程的启动令牌。
5. 将最近活跃的会话 id 注入到每个提供的索引页面中(通过 webserver 的
index-injection 表),限定为非回环来源且每个标签页一次 —— 这样任何隧道入口
都会落在桌面端正在工作的会话内。该 id 在渲染时于 Host 上解析(缓存,每 15 秒
刷新一次);手机端不会为种子本身发起任何 /api 调用。
6. 注册一个受令牌门控的 /remote-handoff 路由作为回退入口路径:
相同的种子注入,然后是正常的令牌→cookie 登录(SHA-256 常量时间比较)。
前缀匹配,因此 /remote-handoff 和 /remote-handoff/ 均可正常工作。
7. 注册一个 remote-handoff 设置命名空间和一个仅限回环的桥接
(/api/dsh-remote-handoff-settings)。Settings → Plugins → DSH Remote
中的卡片从该桥接读取隧道状态(QR 矩阵 + 访问链接)并将其绘制在页面中,
同时还有可编辑的 tunnelTarget / cloudflaredPath / sessionHandoff 设置。
Regenerate 按钮会在同一会话上就地重启隧道以获取全新的 URL,而空的
tunnel target 会自动填充 harness 自身的回环地址。dsh web 终端不打印
任何内容。

要求

- 无需手动安装 cloudflared —— 缺失时会自动下载
(Windows x64/x86、macOS Intel/Apple Silicon、Linux x64/arm64);任何其他
平台需要在 PATH 上有 cloudflared,或显式指定 cloudflared path。
- 首次运行时需要网络访问(以访问 GitHub 下载二进制文件)
- Node —— 在 dsh 运行的地方已经存在
- 手机在任何网络上 —— 隧道是公开的;URL 中的令牌是唯一的门禁,
因此请像对待密码一样对待所显示的链接。

从 qrcode-hassle-free 迁移

此前该插件名为 qrcode-hassle-free(GitHub 上为 Raiyan007-gb/dsh-qrcode-hassle-free,npm 上为 qrcode-hassle-free)。现在它是 dsh-remote-tunnel-easy(Raiyan007-gb/dsh-remote-tunnel-easy,dsh-remote-tunnel-easy@1.4.2)。旧的 npm 包已取消发布。

如果你安装的是旧名称,请先移除它,然后添加新名称并重启 dsh web:

dsh plugin --profile web remove qrcode-hassle-free
dsh plugin --profile web add dsh-remote-tunnel-easy@latest --config.minimumReleaseAge=0

重启 dsh web —— QR 和设置现在会像之前一样出现在 Settings → Plugins → DSH Remote 下。

移除

dsh plugin --profile web remove dsh-remote-tunnel-easy

然后重启 dsh web。

许可证

MIT —— 使用它、修改它、发布它。参见 LICENSE。

引用
如果您在研究或项目中使用了 dsh-remote-tunnel-easy,请引用:

@software{dsh_remote_tunnel_easy,
title  = {dsh-remote-tunnel-easy: Hassle-free remote tunnel for DeepSeek Harness},
author = {Raiyan},
url    = {https://github.com/Raiyan007-gb/dsh-remote-tunnel-easy},
year   = {2026},
version = {1.4.2}
}

为 DeepSeek Harness 打造——扫描、打开、持续工作。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群