BotonJ/dsh-remote-link

BotonJ★ 1JavaScriptLast synced: 2026-08-15

Open on GitHub

Authenticated remote gateway for DeepSeek Harness: QR/HMAC pairing, cookie sessions, mDNS, fork_session tool. Zero-dep plugin.

README excerpt

dsh-remote-link 把 DeepSeek Harness(DSH)的官方 Web UI 安全地 暴露到局域网——手机扫码即遥控电脑上的 agent——并给模型增加 fork session 会话分叉工具。零核心改动、零运行时依赖。 v1.5:QR 一次性配对 + HMAC 挑战-响应 + HttpOnly Cookie 会话 + 设备注册表 (v1 的 ?token= 明文折衷已删除,设计见 docs/PAIRING-DESIGN.md )。 为什么这样设计 - 主 webserver 保持 loopback :DSH 官方 CLI 明确拒绝 --host 0.0.0.0 ("would expose remote code execution to the network")。本插件是"被认可的远程暴露方式":网关在独立端口做认证,反代到 loopback。 - 官方前端直接复用 :不做自己的 UI(dsh-desktop 也是 Electron 壳 loadURL 官方 UI),聊天框就是遥控器。 - ?token= 查询参数认证 :浏览器 WebSocket/EventSource API 无法携带 Authorization 头,官方 UI 的事件流( /api/events.mux )在手机上必须有这条通路(与 MiMo 移动端方案一致)。 安装 在 $DSH HOME/profiles/web/cordis.patch.yml 的 remote-link 行配置: 配置 默认 说明 host 0.0.0.0 网关绑定地址 port 3081 网关端口; 0 为系统随机分配 username / password dsh / 空 Basic Auth 后备(curl/桌面浏览器便利);配对启用时可留空 pairing.enabled true QR/短码配对 + cookie 会话;关闭后非 loopback 必须设 password pairing.ttlMs 300000 配对秘密有效期(5 分钟、一次性) pairing.sessionMaxAgeDays 30 cookie 会话最长寿命 pairing.deviceIdleExpiryDays 90 设备闲置自动出局 pairing.devicesFile $DSH HOME/remote-link/devices.json 设备注册表(0600) targetHost / targetPort 127.0.0.1 / 自动 反代目标;默认取宿主 webserver 实际端口 mdns true 非 loopback 绑定时广播 http. tcp (TXT 标注 auth=pairing basic ) publicUrl 空 二维码/短码的公开基础地址(如 https://…

View full README on GitHub →
Tools / Devdeepseek-harnessdsh-pluginweb uiagent

Category