前言¶
DeepSeek Harness (DSH) 采用插件化架构,开发者通常在本地运行 DSH Web 界面进行调试和交互。在移动设备上直接访问本地服务存在端口暴露风险或网络配置问题。DSH Remote 旨在通过一个插件,为 DSH Web 提供安全、可控的远程访问能力。
插件介绍¶
xiaoxiaohai/dsh-remote(NPM 包名 @musitoolbox/dsh-remote)是一个为 DSH Web 提供手机访问能力的插件。它不改变 DSH 的核心逻辑,而是通过在 macOS 上启动受管的 FRPC 进程,配合二维码配对机制,将本地 DSH Web 接口桥接到远程网络。该插件默认处于 Beta 状态,需要用户明确授权才能生效。
核心功能¶
该插件提供以下核心能力:
- Explicit Opt-in(明确授权): 安装插件不会自动注册或开启隧道。只有用户在本地设置中手动启用后,代理才会建立。
- 本地设置卡片: 在 DSH Web 的设置界面中添加“手机访问”卡片。支持通过二维码配对、暂停访问、旋转密钥以及针对单台设备的撤销授权。
- 复用现有接口: 直接复用 DSH Web 的 HTTP 和 WebSocket 接口,无需开发额外的协议或应用层组件。
- 受管传输层: 使用受管 FRPC 0.70.1 传输层,并将流量严格限制在本地 DSH Web 端口。
- 模型可见 Skill: 插件注册了一个
remote-accessSkill。智能体在处理“远程访问”、“配对”等意图时,可以利用该 Skill 获取本地设置的步骤说明,而无需具备感知外部网络的能力。 - 自托管覆盖: 支持通过配置覆盖
serviceUrl,允许部署兼容的自托管服务。
安装与启用¶
插件安装及启用流程如下:
- 安装插件:
dsh plugin --profile web add @musitoolbox/dsh-remote@beta
- 检查配置:
安装后,使用以下命令确认配置生效:
dsh --profile web --dump-config
确保输出中包含 `dsh-remote` 配置行,且 `enabled: false`、`autoStart: false`。
- 启动 Web 服务:
dsh web
- 首次连接:
- 在 Mac 上打开 DSH Web。
- 进入 Settings → Phone access。
- 点击 Enable phone access。这一步会在本地注册 Mac 并写入凭证。
- 使用手机上的 DSH Web 扫描屏幕上的二维码。
- 在设置页面确认手机出现在 Authorized phones 列表中。
典型用法¶
- 更新插件:
dsh plugin --profile web update @musitoolbox/dsh-remote@beta
- 移除插件:
在移除前,请先在设置页面撤销手机授权或暂停访问,然后执行:
dsh plugin --profile web remove @musitoolbox/dsh-remote
适用场景与注意¶
- 运行环境: 仅支持 macOS(
darwin-x64和darwin-arm64),不支持 Windows 和 Linux。 - 依赖版本: 需要 Node.js 22+ 及 DSH 0.1.0-rc.8+。
- Beta 限制: 目前处于 Beta 阶段,尚未提供通用可用性 (GA) 保证。
- 安全与隐私:
- 托管服务使用 TLS 加密传输,但不提供应用层端到端加密。这意味着托管服务的运营商可以查看通过网关转发的 DSH Web 流量。
- 管理接口 (RPC) 仅限本地回环访问。
- 托管服务无 SLA、数据保留策略、账号恢复或身份删除功能。
- UI 状态: 设置卡片目前为中文界面,英文 UI 尚未完成。
- 源码验证: 由于插件以 DSH 进程的权限运行,建议在安装前检查源码与许可证。
总结¶
DSH Remote 解决了在移动端无缝访问本地 DSH Web 界面的痛点。通过 QR 配对和受管的 FRPC 隧道,它在不破坏 DSH 插件化架构的前提下,为开发者提供了可控的远程调试手段。在使用前,请务必确认其对隐私模型(无端到端加密)的接受程度。