前言¶
DeepSeek Harness(DSH)的 Agent 会话通常开在桌面客户端或本机 dsh web 上。离开工位后,若仍想发文字、传截图并看到回复流式输出,常见做法是远程桌面或把服务暴露到公网——前者笨重,后者对私人会话来说风险偏高。下面介绍的 dsh-phone-bridge(GitHub:chs-1108/dsh-phone-bridge)走另一条路:手机与电脑各自加入你名下的 Tailscale tailnet,在 WireGuard 加密的对等网络上访问 DSH 自带的 webServer,不经过公网中继、也不改 DSH 核心。
这是什么¶
phone-bridge 是社区维护者 chs-1108 为官方 DeepSeek Harness 编写的客户端类插件(当前 Release v1.1.2,MIT 许可证)。手机侧用浏览器或原生 Android 壳打开一个小型 Web 界面,把文字和图片送入真实的 DSH 会话,并通过 sessionController 订阅助手流式输出,在手机上边生成边读。
数据路径可概括为:
Phone (WebView / browser)
│ HTTP over Tailscale — encrypted WireGuard, peer to peer
▼
DSH webServer ──▶ /phone-bridge 路由 ──▶ sessionController ──▶ model
插件只消费 DSH 公开的 webServer 与 sessionController 服务,不补丁核心、不 fork 宿主。官方 Web 与桌面 EXE(README 标注兼容 DeepSeek Harness 0.2.0-rc.2)均支持,但需分别用 profile web 与 desktop 安装并 Apply。
核心功能¶
跨网访问,不绑同一 Wi-Fi¶
手机与 PC 登录同一 Tailscale 账号后,各得稳定的 100.x.y.z 地址。切换 Wi-Fi 或蜂窝数据时 URL 不必跟着改。README 明确:无公网服务器、无第三方中继;流量在你自建的 tailnet 内。
真实会话,流式回复¶
消息进入普通 DSH 会话,而非旁路通道。可通过 /api/prefs 把 bridge 固定到指定会话,或由插件懒创建并复用。插件订阅 sessionController.follow({ assistantStream: true }),手机端轮询增量结果,长回答可边写边看。
文字与图片¶
单条消息支持文字及最多 8 张图片。Android APK 通过 onShowFileChooser 接入系统选择器(含拍照),经 MediaStore 写回可读 URI。不装 APK 时,现代浏览器打开同一 URL 亦可发文字、附图片。
一键部署(Windows)¶
仓库提供 install.cmd / setup-phone-bridge.ps1:在 Windows 10/11 上可自动安装 Tailscale、调整监听地址、注册插件、构建 APK 并通过 USB 推送到手机(需自备 Tailscale 账号;推机可选 adb)。APK 为通用构建,无内置地址,每位用户扫描自己 PC 上 DSH 生成的二维码配对。
环境与依赖¶
| 项目 | 要求 |
|---|---|
| DSH | 0.2.0 或更新,桌面 EXE 或 dsh web |
| Node.js | ≥ 18 |
| 主机 | 部署脚本为 PowerShell,面向 Windows 10/11 |
| 手机 | Android 7.0(API 24)及以上用 APK;或任意现代浏览器 |
| 账号 | 自备免费 Tailscale 账号 |
可选:仅构建 APK 时需 JDK 17 与 Android SDK build-tools 34.0.0。
安装与启用¶
Release 页:v1.1.2。手机装 phone-bridge-1.1.2.apk(约 249 KB);PC 侧可用 zip phone-bridge-plugin-1.1.2.zip 或直接从 GitHub 添加插件。
1、PC 安装插件并重启 DSH¶
桌面 profile 官方示例:
# 从 GitHub 安装插件,然后重启 DSH
dsh plugin --profile desktop add github:chs-1108/dsh-phone-bridge
若已下载 zip,可改为:
dsh plugin --profile desktop add "D:\path\to\phone-bridge-plugin-1.1.2.zip"
重启 DSH 后打开 Settings → Phone Sync,出现二维码即表示插件侧就绪。使用 dsh web 时须用 profile web 单独安装同一仓库插件(与 desktop 分开 Apply)。
2、两端安装 Tailscale 并登录¶
PC 从 tailscale.com/download 安装;手机从 Play Store 安装。两侧使用同一 Tailscale 账号。
3、修改监听地址(必做)¶
DSH 的 web 服务默认绑定 127.0.0.1,只接受本机浏览器;经 Tailscale 来的手机请求会被直接拒绝。
推荐在 Settings → Phone Sync 中,若出现「仅监听 loopback」的红色提示,点击 Fix it for me:插件会定位当前 profile 的 cordis.patch.yml,修改 host 并在旁生成带时间戳的备份,之后需完全退出并重新打开 DSH。
手动编辑路径:
- Windows:
%USERPROFILE%\.dsh\profiles\desktop\cordis.patch.yml - macOS / Linux:
~/.dsh/profiles/desktop/cordis.patch.yml
在 webserver 条目中把 host 改为可被 tailnet 访问的地址(资料中完整 YAML 见仓库 README「Manual」一节)。
4、手机安装 APK 并配对¶
adb install -r phone-bridge-1.1.2.apk
打开应用,在 DSH Settings → Phone Sync 扫描 PC 上的二维码。APK 不内置服务器地址,每人只连自己的 PC。
README 亦给出三步速览(含上述 dsh plugin 与 Tailscale、APK 安装),可与上文对照使用。
典型用法¶
- 在电脑上正常打开 DSH,确认 Phone Sync 页二维码可用且监听地址已修复。
- 手机连上 Tailscale 后,用 APK 或浏览器打开配对后的地址。
- 输入问题;需要时拍照或选图(最多 8 张),发送后观察流式回复。
- 若要把对话固定到已有会话,按 README 通过
/api/prefs配置(细节见仓库文档)。
适用场景与注意¶
适合谁:经常在移动场景追问 Agent、需要传现场照片、又不想把 DSH 暴露到公网的 DSH 用户;已有或愿意注册 Tailscale 的开发者。
权限与安全:插件在当前 DSH 进程权限下运行,能访问该会话与插件声明的能力。安装前请阅读 源码 与 MIT 许可证,确认符合你的安全策略。
网络与排错:两端必须在线且 Tailscale 连通;监听地址未改是最常见的「手机连不上」原因。更完整的故障排除见仓库 README Troubleshooting。
生态说明:DSH 奉行「一切皆插件」;SkillHub 目录页为社区收录,与 DeepSeek / 幻方无官方从属关系。
结尾¶
dsh-phone-bridge 把 DSH 会话搬到口袋里:Tailscale 专网穿透、真实 sessionController 会话、流式回复与图文输入,且无需公网中继。需要版本与手动配置细节时,以 GitHub Release 与 README(含 README.zh-CN.md)为准。
- 目录页:https://www.skillhub.cn/plugins/chs-1108/dsh-phone-bridge
- 仓库:https://github.com/chs-1108/dsh-phone-bridge