dsh-phone-access:DSH 手机访问入口

前言

在本地使用 DeepSeek Harness(DSH)时,常需要通过手机端进行输入或查看终端。常见做法包括搭建 VPN、部署反向代理或使用内网穿透服务,配置较为繁琐,且依赖第三方服务。本文介绍一个插件,可以在 DSH 启动时自动检查并重建手机访问通道,将新链接发送到邮箱,从而实现从手机访问桌面端 DSH 实例。

是什么

dsh-phone-access 是一个 DSH 插件,负责在桌面端 DSH 启动时检查手机端服务可用性,必要时重建隧道与 web 实例,并将新访问链接写入文件或通过邮件发送。该插件不常驻进程,仅在工作目录下部署一组脚本与配置文件。

核心功能

插件在 DSH 启动时执行一次检查:

  1. 等待 20 秒(避开 DSH 启动过程中 web 实例结束的动作)。
  2. 检查 3081 端口是否有 DSH web 实例在监听。
  3. 检查 cloudflared 进程是否存活。

若两者都存在,不执行任何操作;若任意一项缺失,则重启隧道、重启 web 实例,写入新链接,并发送邮件。

安装与启用

  1. 克隆插件源码到本地:
$src = "$env:USERPROFILE\.dsh\profiles\desktop\plugins-src\dsh-phone-access"
git clone https://github.com/jisvrin/dsh-phone-access.git $src
  1. 创建目录链接:
cmd /c mklink /J "$env:USERPROFILE\.dsh\profiles\desktop\node_modules\dsh-phone-access" "$src"
  1. 在 profiles/desktop/package.json 中登记:
"bundles": [ "...", "dsh-phone-access" ],
"dependencies": { "dsh-phone-access": "file:C:/Users/<user>/.dsh/profiles/desktop/plugins-src/dsh-phone-access" }
  1. 将 scripts/ 下的三个 ps1 文件复制到 ~/.dsh/web-service/,重启 DSH 生效。

  2. 验证插件是否加载:

Get-Content "$env:USERPROFILE\.dsh\web-service\plugin-trigger.log"

若出现 apply() called,表示插件已加载。

  1. 查看生成的访问链接:
Get-Content "$env:USERPROFILE\.dsh\web-service\mobile-urls.txt"

典型用法

  • 家庭宽带为 CGNAT,没有公网 IP,无法做端口映射或 DDNS。
  • 电脑长期开机,希望用手机作为输入与查看终端。
  • 不希望手机安装客户端或开启 VPN。
  • 可接受链接随重建变化,通过邮件获取新地址。

适用场景与注意

  • 适合家庭或本地环境,电脑长期开机,通过手机访问桌面端 DSH 会话。
  • 不适合需要固定域名访问、手机端离线运行 agent、不允许电脑对公网暴露端口或非 Windows 系统的场景。
  • 插件以当前 dsh 进程权限运行,安装前建议查看源码与许可证(MIT)。

短结尾

dsh-phone-access 通过启动时检查与重建隧道,为没有公网 IP 的环境提供了一条从手机访问桌面端 DSH 的路径。更多细节与源码可查看项目主页与 GitHub 仓库。

参考资料

  • 项目主页:https://www.skillhub.cn/plugins/jisvrin/dsh-phone-access
  • GitHub:https://github.com/jisvrin/dsh-phone-access
羽毛球分组比赛记分
小程序二维码

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

小夜