DeepSeek Harness Hub
← 返回列表

Auxin-zn/dsh-mobile-remote

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

用手机远程控制你电脑上的 DeepSeek HarnessDSH,基于 Tailscale…

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

通过 Tailscale 从手机控制 DeepSeek Harness

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

README

DSH Mobile Remote

用手机远程控制你电脑上的 DeepSeek Harness(DSH),基于 Tailscale 私有组网,全程加密、不暴露公网。

这是什么

DeepSeek Harness 是一个本地运行的桌面 Agent 工作台,自带一个 Web 控制台(默认 http://127.0.0.1:3080)。但这个地址只允许本机访问,手机连不上。

本项目给出 路径 A:把 DSH 的 Web 控制台通过 Tailscale 组网发布给你的手机。你在家/办公室的电脑上跑 DSH,人在外面用手机浏览器就能:

- ✅ 查看会话列表、项目列表
- ✅ 发起对话、查看历史、切换模型
- ✅ 浏览 / 添加工作区目录
- ✅ 实时查看 Agent 的执行输出

「干活」始终发生在电脑上(跑 Agent、读你电脑的文件、用你的订阅),手机只是一个遥控器。

原理(一句话)

Tailscale 在你的手机和电脑之间拉起一条加密的「私有局域网」;再让电脑把 DSH 的 3080 端口发布到这个私有网里,生成一个 https://机器名.xxx.ts.net 的地址;手机打开它,就等于打开电脑上的 DSH 控制台。整个过程不经过公网,只有你账号下的设备能访问。

详细原理见 docs/architecture.md。

前提条件

- 一台运行 DeepSeek Harness 的电脑(本方案在 Windows 上验证;macOS/Linux 同理)
- 一台手机(安卓 / iOS)
- 一个 Tailscale 账号(免费,Google / GitHub / 微软账号登录即可)

快速开始(5 步)

以 Windows 电脑 + 安卓手机为例,默认端口 3080。
也可用交互式向导一键引导:powershell -ExecutionPolicy Bypass -File .\scripts\setup.ps1

| 步骤 | 操作 | 谁来做 |
|---|---|---|
| 1 | 电脑安装 Tailscale 并登录 | 你 |
| 2 | 手机安装 Tailscale,用同一账号登录 | 你 |
| 3 | 电脑上执行 tailscale serve --bg 3080 | 你 |
| 4 | 把 ts.net 地址写进 DSH 信任白名单(见下) | 你 / 脚本 |
| 5 | 重启 DSH,手机打开 ts.net 地址 | 你 |

第 1、2 步:装 Tailscale

安装包和校验信息见 docs/installers.md,也可用脚本自动下载:

powershell -ExecutionPolicy Bypass -File .\scripts\download-installers.ps1

- 电脑:运行下载到的 tailscale-setup-.exe,登录。
- 手机:把 tailscale-android-.apk 传到手机安装(需允许「未知来源应用」),用同一账号登录。
- 安卓请在「设置 → VPN → Tailscale」里打开 「始终开启 VPN」,避免锁屏后断连。

第 3 步:发布端口

powershell -ExecutionPolicy Bypass -File .\scripts\setup-serve.ps1 -Port 3080

等价命令:tailscale serve --bg 3080。
首次会提示 Serve is not enabled,按输出里的 https://login.tailscale.com/f/serve?node=... 链接到控制台点 Enable,然后重跑一次。

成功后你会得到一个形如 https://jin.xxx.ts.net/ 的地址。

第 4 步:把 ts.net 地址加进 DSH 信任白名单(关键!)

DSH 的 Web 接口默认只信任 localhost(防 DNS 重绑定攻击),走 Tailscale 后 Host 变了会被 403 拦截。必须手动把它加进白名单:

powershell -ExecutionPolicy Bypass -File .\scripts\patch-trusted-host.ps1 -Authority "jin.xxx.ts.net"

或者手动编辑 %DSH_HOME%\profiles\web\cordis.patch.yml(参考 config/cordis.patch.yml.example),追加:

- id: connection
config:
trustedHosts: !!js "['jin.xxx.ts.net', ...ctx.webRuntime.trustedHosts]"

第 5 步:重启 DSH,手机访问

完全退出 DeepSeek Harness 桌面应用再重新打开(配置是开机时加载的)。手机浏览器打开 https://jin.xxx.ts.net/,看到和电脑上一样的界面即成功。

故障排查

| 现象 | 原因 | 解决 |
|---|---|---|
| 手机能打开页面,但「暂无会话」、目录选择报 transport failure ... HTTP 403 | ts.net 地址不在 DSH 信任白名单 | 按第 4 步打补丁并重启 |
| tailscale serve 提示 Serve is not enabled | 账号后台未启用 Serve | 点输出里的链接启用后重跑 |
| 手机显示 offline / 过一会儿就连不上 | 安卓锁屏杀掉 VPN | 打开「始终开启 VPN」 |
| 出门后连不上 | 电脑睡眠 / DSH 被关 / 电脑断网 | 关睡眠、保持 DSH 运行 |

完整排查过程(含逐条 curl 诊断、源码定位)见 docs/troubleshooting.md。

安全说明

- 地址是 tailnet-only(仅私有网内),公网不可达,别分享给他人,也别开 Tailscale funnel。
- 即使加了信任,DSH 仍把修改设置 / 管理凭据 / 管理预设等敏感操作锁定为本机-only——trustedHosts 是防重绑定围栏,不是登录认证。详见 docs/security.md。

目录结构

dsh-mobile-remote/
├── README.md
├── README.zh.md
├── LICENSE
├── .gitignore
├── config/
│   └── cordis.patch.yml.example   # DSH 信任白名单补丁示例
├── docs/
│   ├── architecture.md            # 原理与数据流
│   ├── troubleshooting.md         # 403 问题完整排查与解决
│   ├── security.md                # 安全边界与建议
│   └── installers.md              # 安装包下载源与校验和
└── scripts/
├── setup.ps1                  # 一键交互式配置向导
├── download-installers.ps1    # 下载官方安装包并校验
├── setup-serve.ps1            # 配置 tailscale serve
├── patch-trusted-host.ps1     # 自动写信任白名单补丁
└── verify-remote.ps1          # 诊断 /api 是否仍被 403 拦截

License

MIT © 2026 Auxin-zn。

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

💬 加入 DPharness 群聊

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

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