🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

手机接入配置 YiYan129600/dsh-mobile-access

DeepSeek Harness
YiYan12960061 天前有提交已提供中文文档扫描:含敏感能力

扫码配对手机,自动检测网络并切换连接方式

30.3/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add YiYan129600/dsh-mobile-access
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · ui
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已在 dsh 0.2.1-rc.5 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
数据截至 2026/11/02·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 61 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-mobile-access(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/7 04:10:47

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 16 处,展示前 16 条)
  • 执行外部命令固定命令
    lib/index.js:91
    execFile('C:\\Windows\\System32\\ipconfig.exe', ['/all'], { timeout: 8000, windowsHide: true, maxBuffer: 1024 * 1024 }, (err, stdout) => {
  • 写入本地文件
    lib/index.js:107
    mkdirSync(dir, { recursive: true });
  • 执行外部命令固定命令
    lib/index.js:108
    child = spawn('cmd.exe', ['/d', '/c', `ipconfig /all > "${file}"`], { stdio: 'ignore', windowsHide: true });
  • 读取本地文件
    lib/index.js:122
    const suffix = parseTailscaleSuffix(readFileSync(file, 'utf8'));
  • 删除本地文件
    lib/index.js:123
    unlinkSync(file);
  • 执行外部命令固定命令
    lib/index.js:197
    const child = spawn('powershell.exe', ['-NoProfile', '-WindowStyle', 'Hidden', '-Command', script], { stdio: 'ignore', windowsHide: true });
  • 发起网络请求
    lib/index.js:206
    const req = https.get(`https://${hostname}/`, { timeout: 6000 }, (res) => {
  • 读取本地文件
    lib/index.js:405
    const parsed = JSON.parse(readFileSync(file, 'utf8'));
  • 写入本地文件
    lib/index.js:415
    mkdirSync(join(file, '..'), { recursive: true });
  • 写入本地文件
    lib/index.js:417
    writeFileSync(tmp, JSON.stringify(map), 'utf8');
  • 写入本地文件
    lib/index.js:418
    renameSync(tmp, file);
  • 读取本地文件
    lib/index.js:1252
    const raw = JSON.parse(readFileSync(file, 'utf8'));
  • 写入本地文件
    lib/index.js:1261
    mkdirSync(join(file, '..'), { recursive: true });
  • 写入本地文件
    lib/index.js:1262
    writeFileSync(file, JSON.stringify(data), 'utf8');
  • 发起网络请求
    lib/index.js:1305
    const req = mod.request(
  • 读取本地文件
    lib/index.js:1600
    const icon = readFileSync(ICON_PATH);
扫描于 2026/11/4(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 扫码配对手机
  • 自动识别网络
  • 切换连接方式

DeepSeek Harness 插件:一页搞定手机访问配置——Tailscale/局域网自动识别、扫码即开二维码(离线可用)、不安全来源 polyfill

README

由 DeepSeek 最新模型翻译生成
dsh-mobile-access 给 DeepSeek Harness 的「手机接入设置」插件:一页搞定 Tailscale / 局域网检测、扫码配对、直连 / HTTP/2 连接方式自由切换,以及旧版 harness 在纯 HTTP 手机源下的兼容补丁。 One-page mobile access setup for DeepSeek Harness: live Tailscale/LAN detection, scan-to-pair QR, a direct / HTTP-2 connection mode toggle, and an insecure-origin polyfill so the web UI also boots on plain-HTTP phone origins. - 纯宿主插件 + 极简客户端入口,无构建步骤、零运行时依赖(二维码由内建 MIT 库离线生成,不调外部服务) - 安装后默认界面侧栏底部出现 📱 按钮,点开直达设置页(也可以直接访问 http://127.0.0.1:/mobile-access;机器可读状态在 /mobile-access/status.json) 功能 / Features | 模块 | 说明 |
展开完整文档(README 剩余 1 节)
dsh-mobile-access

给 DeepSeek Harness 的「手机接入设置」插件:一页搞定 Tailscale / 局域网检测、扫码配对、直连 / HTTP/2 连接方式自由切换,以及旧版 harness 在纯 HTTP 手机源下的兼容补丁。

One-page mobile access setup for DeepSeek Harness: live Tailscale/LAN detection, scan-to-pair QR, a direct / HTTP-2 connection mode toggle, and an insecure-origin polyfill so the web UI also boots on plain-HTTP phone origins.

- 纯宿主插件 + 极简客户端入口,无构建步骤、零运行时依赖(二维码由内建 MIT 库离线生成,不调外部服务)
- 安装后默认界面侧栏底部出现 📱 按钮,点开直达设置页(也可以直接访问 http://127.0.0.1:/mobile-access;机器可读状态在 /mobile-access/status.json)

功能 / Features

| 模块 | 说明 |
| 环境清单 | webserver 绑定、Tailscale 检测、局域网检测、API 信任围栏、防火墙命令,逐项点亮 |
| 扫码配对 | 一次性令牌(15 分钟)、持久设备凭证(落盘、重启不丢、30 天滚动)、多设备共存、逐个撤销 / 一键撤销;签发/撤销端点仅回环可用 |
| 连接方式 | 直连 HTTP(tailnet IP)↔ HTTP/2(Tailscale Serve,HTTPS 域名,一键开启/关闭 + 可达性探测),选择持久化在浏览器 localStorage |
| 信任围栏引导 | 探测手机来源对 /api 的放行状态;HTTP/2 模式未放行时给出 web-app.trustedHosts patch 片段;拒绝生成扫码后是空壳的二维码(页面能开但 /api 403) |
| PWA 主屏 | 注入 manifest + theme-color + apple-touch-icon(内置 512px 图标);扫码配对后落到欢迎页,引导「添加到主屏幕」,点开即全屏 standalone |
| 实时通知 | SSE 通道(/mobile-access/events,设备凭证鉴权):agent 完成一轮 / 提问待处理 / 待办更新 / 出错时,配对手机在 GUI 内实时 toast;断线自动重连并按 Last-Event-ID 补流 |
| 锁屏推送 | Web Push(VAPID + 零依赖 RFC 8291 aes128gcm 加密):HTTP/2(HTTPS)模式下手机可在欢迎页开启锁屏通知,agent 完成/出错/提问时锁屏直达;设置页可一键测试推送 |
| 兼容补丁 | 可选向 index.html 注入 crypto.randomUUID polyfill(默认 auto:脚本自带守卫、新 harness 零影响;可设 false 彻底关闭) |

安装 / Install

dsh plugin --profile web add github:YiYan129600/dsh-mobile-access
然后重启 dsh web

使用 / Use

1. 打开设置页 http://127.0.0.1:3080/mobile-access,按清单逐项点亮:
- 绑定全部网卡:重启时加 --host 0.0.0.0,或把页面里给出的 patch 片段写进 profile 的 cordis.patch.yml(推荐,一劳永逸)
- Tailscale:电脑与手机各装 Tailscale,用同一账号登录;页面会自动显示 100.x tailnet 地址
- 防火墙:管理员 PowerShell 跑一次页面里给出的 netsh 命令(只放行 Tailscale 网段,公网不暴露)
2. 选连接方式:
- 直连:选地址 → 「生成配对二维码」→ 手机扫码
- HTTP/2:填 HTTPS 域名(如 yiyan.tail172eda.ts.net,从 Tailscale 面板复制)→ 「开启 HTTP/2」(会弹 UAC,点「是」)→ 等清单里「API 信任围栏」变绿(若红:复制页面给出的 connection/trustedHosts 片段进 profile 的 cordis.patch.yml 并重启)→ 回到上方生成二维码
3. 手机(同一 tailnet)扫码 → 落到配对欢迎页(已配对 ✓ + 设备名 + 凭证有效期)→ 按引导「添加到主屏幕」→ 从主屏幕图标全屏进入 DSH;桌面 UI 无需配对直接可用,/m 移动端需配对

HTTP/2 说明:tailscale serve 监听 tailnet 内网 443,仅同账号设备可达,TLS 证书自动签发。手机上所有请求走一条多路复用连接,高延迟蜂窝网下加载显著更快。注意:HTTP/2 模式手机以 .ts.net 域名访问,必须把该域名 concat 进 connection 行的 trustedHosts(harness 没有 web-app 行,patch 该 id 会静默无效),否则 /api 被 DSH 的信任围栏挡成 403(页面能开、数据全空)——本插件已做探测与 patch 片段引导,杜绝"空壳二维码"。

安全说明 / Security

DSH 的 /api 信任围栏只是防 DNS 重绑定,不是登录鉴权。对手机开放前请至少做到其一:

- 走 Tailscale 私有网(防火墙只放行 100.64.0.0/10),或
- 依赖配对令牌与撤销(本插件提供;注意本插件不硬拦截主 /api——当前 harness 无 api/gate 挂载点)

配对设备凭证(id + secret 的 sha-256 哈希)落盘在 ~/.dsh/data/dsh-mobile-access/devices.json(权限 0600 由 DSH 数据区惯例保证),浏览器以 30 天滚动 cookie 携带;撤销后凭证立即失效。HTTP/2 模式下 cookie 带 Secure 标记(仅 HTTPS 发送)。

配置 / Config

在 profile 的 cordis.patch.yml 里可覆盖插件行配置(均为可选项):
- id: mobile-access
config:
pagePath: /mobile-access # 设置页路径 polyfill: auto # auto(默认)=注入带守卫的 randomUUID 脚本(新 harness 零影响); false=彻底关闭; true=强制注入 pairTtlMs: 900000 # 配对令牌有效期(毫秒) push: contact: 'mailto:you@example.com' # VAPID 订阅标识(推荐真实邮箱) push: false # 完全关闭 Web Push(SSE 不受影响) http2: tailscaleBin: 'C:\\Program Files\\Tailscale\\tailscale.exe' # tailscale CLI 路径

HTTP/2 模式还需把 ts.net 域名加入 client-connection 的信任围栏(否则 /api 403)。设置页「API 信任围栏」清单项会给出一键复制片段,形如:
- id: connection
config:
trustedHosts: !!js ctx.webRuntime.trustedHosts.concat('yiyan.tail172eda.ts.net')

常见问题 / FAQ

- 手机能打开页面但看不到会话? 两个可能:
1. HTTP/2 模式未放行信任围栏:手机以 .ts.net 域名访问时 /api 被 DSH 围栏 403。到设置页看「API 信任围栏」是否绿色;红则复制 patch 片段进 cordis.patch.yml 并重启。本插件在生成二维码前会做端到端探测,围栏没放行时直接拒绝生成。
2. harness 版本过旧:非安全源下 crypto.randomUUID 不存在,RPC 层起不来。本插件默认注入的 polyfill 就是修这个的;升级 harness(≥ rc.6)后可将 polyfill 设为 false 关闭。
- 扫码后打不开? 确认手机与电脑在同一个 Tailscale 账号下、tailscale status 显示在线,且防火墙命令已执行。
- HTTP/2 开启后探测失败? 等 1 分钟让证书签发后重试;若一直失败,检查 Tailscale admin console 的 MagicDNS 与 HTTPS 证书开关。
- 重启 dsh 后已配对的手机会掉线吗? 不会——设备凭证已持久化(~/.dsh/data/dsh-mobile-access/devices.json),cookie 有效期 30 天滚动。可在设置页逐个撤销设备。
- 怎么把 DSH 变成手机上的"App"? 配对后欢迎页有引导:iOS Safari 用「分享 → 添加到主屏幕」;Android Chrome 用菜单「添加到主屏幕」。之后点主屏幕图标即全屏打开(PWA standalone)。
- 手机怎么实时知道 agent 干完了? 两条路径:① 开着 DSH 页面时,页面内实时 toast(提问待处理 / 一轮完成 / 出错 / 待办更新),断线自动重连、不漏事件(Last-Event-ID 补流);② 锁屏推送(HTTP/2 模式):配对欢迎页点「开启锁屏通知」授权后,锁屏也能收到。
- 想要专用手机端 UI? 本插件负责"把网络打通";配对令牌是自有的。若同时使用 dsh-remote-web-ui,其 /m 移动界面与本插件互不冲突。

License

MIT。lib/qrcode.js 来自 qrcode-generator(Kazuhiko Arase,MIT)。
预览分享卡片长什么样 ↓YiYan129600/dsh-mobile-access
分享 · DeepSeek Harness Hub
YiYan129600/dsh-mobile-access

扫码配对手机,自动检测网络并切换连接方式

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部