@wenbin_wb/dsh-bridge
Remote and mobile access for DeepSeek Harness: provides LAN QR code connection, Cloudflare/custom tunnels, WeChat, QQ, Feishu, Telegram bot integration, and security authentication.
Install
dsh plugin --profile web add @wenbin_wb/dsh-bridge
Sandbox test results
| Stage | Result |
|---|---|
| 1 install | ✓ |
| 2 list | ✓ |
| 3 mount | — |
| 4 boot | — |
Four stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).
README
dsh-bridge · DSH 远程连接 / 远程控制插件
<p align="center">
<img src="https://raw.githubusercontent.com/wenbin-wb/dsh-bridge/main/docs/banner.webp" alt="dsh-bridge banner" width="100%" />
</p>
<p align="center">
<a href="https://www.npmjs.com/package/@wenbin_wb/dsh-bridge"><img src="https://img.shields.io/npm/v/@wenbin_wb/dsh-bridge.svg?style=flat-square&color=38bdf8&logo=npm" alt="npm version" /></a>
<a href="https://www.npmjs.com/package/@wenbin_wb/dsh-bridge"><img src="https://img.shields.io/npm/dt/@wenbin_wb/dsh-bridge.svg?style=flat-square&color=fbbf24&logo=npm" alt="npm downloads" /></a>
<a href="https://github.com/wenbin-wb/dsh-bridge/releases"><img src="https://img.shields.io/github/v/release/wenbin-wb/dsh-bridge?style=flat-square&color=10b981&logo=github" alt="GitHub release" /></a>
<a href="https://github.com/wenbin-wb/dsh-bridge/stargazers"><img src="https://img.shields.io/github/stars/wenbin-wb/dsh-bridge?style=flat-square&color=f43f5e&logo=github" alt="GitHub stars" /></a>
<a href="https://nodejs.org/"><img src="https://img.shields.io/badge/Node.js-%E2%89%A522.19%20%7C%20%E2%89%A524-339933?style=flat-square&logo=node.js" alt="Node.js version" /></a>
<a href="LICENSE"><img src="https://img.shields.io/npm/l/@wenbin_wb/dsh-bridge?style=flat-square&color=a855f7" alt="license" /></a>
</p>
<p align="center">
<img src="https://img.shields.io/badge/Security-Access%20Auth%20%2B%20PBKDF2-6366f1?style=flat-square&logo=security" alt="Security" />
<img src="https://img.shields.io/badge/WeChat-ClawBot%20%7C%20iLink-07C160?style=flat-square&logo=wechat" alt="WeChat" />
<img src="https://img.shields.io/badge/QQ%20Bot-Official%20SDK-12B7F5?style=flat-square&logo=tencentqq" alt="QQ" />
<img src="https://img.shields.io/badge/Feishu-Channel%20SDK-00D6B9?style=flat-square&logo=lark" alt="Feishu" />
<img src="https://img.shields.io/badge/Telegram-Bot%20API-24A1DE?style=flat-square&logo=telegram" alt="Telegram" />
<img src="https://img.shields.io/badge/Cloudflare-Tunnel-F38020?style=flat-square&logo=cloudflare" alt="Cloudflare" />
<a href="https://dpharness.com/plugin/wenbin-wb/dsh-bridge" target="_blank" rel="noopener noreferrer"><img src="https://dpharness.com/badge/install/wenbin-wb/dsh-bridge.svg" alt="DSH Hub 实装验证" /></a>
</p>
<p align="center">
<b>简体中文</b> | <a href="README.en.md">English</a>
</p>
DeepSeek Harness 多通道远程访问与全域安全门禁插件(DSH 远程连接 / 远程控制 / 远程链接插件,remote control)
手机扫个码,人不在电脑前也能继续用 DeepSeek Harness。无论躺在沙发上、出差通勤、还是跨网协作——都不用守着电脑,也不用自己搭公网服务器,扫码即可在手机、平板或任意设备上接着干。
将您本地运行的 DeepSeek Harness 无缝延伸至手机网页、PWA 原生全屏应用、公网安全隧道、以及 微信 / QQ / 飞书 / Telegram 机器人矩阵。随时随地调度 AI 编写代码、执行任务、审批操作与管理工作区。
📖 远程连接着陆页:[docs/remote-connection.md](docs/remote-connection.md) | 🤖 给 AI 看的摘要:[llms.txt](llms.txt)
目录
- [✨ 功能特性](#-功能特性)
- [📦 环境要求与安装](#-环境要求与安装)
- [🚀 核心功能与使用指南](#-核心功能与使用指南)
- [1. 🛜 局域网访问与多网卡智能切换](#1-🛜-局域网访问与多网卡智能切换)
- [2. 🌐 公网隧道(Cloudflare 临时/固定域名 & 自建隧道)](#2-🌐-公网隧道cloudflare-临时固定域名--自建隧道)
- [3. 📱 移动端交互与 PWA 独立全屏 App](#3-📱-移动端交互与-pwa-独立全屏-app)
- [4. 🗂️ 远程工作区网页选择器](#4-🗂️-远程工作区网页选择器)
- [5. 🔐 全域安全认证与防篡改门禁](#5-🔐-全域安全认证与防篡改门禁)
- [6. 🤖 全能 IM 机器人矩阵(微信 / QQ / 飞书 / Telegram)](#6-🤖-全能-im-机器人矩阵微信--qq--飞书--telegram)
- [7. 📊 运维监控看板与一键平滑重启](#7-📊-运维监控看板与一键平滑重启)
- [💬 常见问题 (FAQ)](#-常见问题-faq)
- [🛠️ 开发与贡献](#️-开发与贡献)
- [⭐ Star History](#-star-history)
- [📄 开源协议](#-开源协议)
✨ 功能特性
- 🛜 局域网多网卡智能识别与切换:自动探测物理 Wi-Fi、以太网与虚拟网卡(WSL/VMware/Docker),支持在控制台可视化一键切换并记忆持久化,彻底解决多网卡 IP 不互通问题;
- 🌐 双模 Cloudflare 公网隧道:免登录一键获取随机临时域名,或填入 Cloudflare Token 绑定固定域名并随 DSH 开机自启;支持 macOS 下 Gatekeeper 隔离自愈与全局探测;代理层为事件流(SSE)内置空闲保活,远端实时通道不再被链路掐断;
- 📡 隧道可观测性:每 60s 实测公网入口端到端可达性(DNS / TLS / 边缘 / 回源,
/ready假绿一眼识别,疑似 DNS 污染自动标注解析 IP);面板展示实际 cloudflared 路径 · 版本 · 来源;检测到与你使用同一 Tunnel Token 的其他 cloudflared 时黄条告警; - 📱 原生级移动端交互与 PWA 全屏应用:动态居中会话标题、复用 DSH 原生侧边栏抽屉与
[|收起图标、防重叠自适应工具栏,支持手机浏览器「添加到主屏幕」作为独立原生 App 运行; - 🌏 界面跟随 DSH 主体语言(中文 / English):设置面板五大分类、全部卡片、锁屏与解锁、远程目录选择弹窗、命令与升级提示等文案均随
<html lang>自动切换中英;访客登录页(认证发生在 DSH 语言之前)按浏览器Accept-Language选择中英;无需单独的语言开关; - 🗂️ 远程工作区网页选择器:手机端点击添加工作区唤出树形目录抽屉浏览器,电脑本机点击自动分流调用系统原生选择窗口;支持 IM 指令
/addworkspace远程注册; - 🔐 全域安全认证与双防线门禁:专属二维码 256-bit Token 免密直通、外部访问密码门禁、独立后台管理员防篡改锁;内置物理机(
127.0.0.1)最高特权与终端一秒救急重置(reset-auth); - 🤖 全能 IM 机器人矩阵(微信 / QQ / 飞书 / Telegram):支持多工作区会话调度、跨重启会话持久化、Markdown 打字机流式输出、Card 2.0 原生一键点击审批与文件双向直传;飞书底层为官方 Channel SDK,接入只需手机扫码一键创建应用;各平台均支持本轮改动摘要(每轮播报改了哪些文件,
/diff可导出.patch补丁)与实时插话模式(Agent 忙碌时新消息注入到当前轮次的下一步,默认关闭,设置页可开); - 📊 运维看板与平滑升级:系统 CPU / 内存 / Uptime 实时看板、网络连通性一键诊断、全局配置 JSON 导出恢复、npmmirror 极速版本检查与平滑重启。
📦 环境要求与安装
环境要求
1. Node.js ≥ 22(DSH 要求 ^22.19.0 或 ≥ 24.0.0)
2. dsh CLI 可用(能在终端直接运行 dsh 命令)
# 检查 Node 版本 node -v # 应显示 v22.19+ 或 v24+ # 检查 dsh 是否可用 dsh --version
DSH 版本兼容性
本插件同时兼容新旧 DSH,无需按 DSH 版本挑选插件版本:
DSH 版本 · 状态
0.1.0 ~ 0.1.1 · ✅ 支持(回环专用 RPC 通道加固)
0.1.2 ~ 0.1.4 · ✅ 支持
0.1.5-alpha.1 ~ 0.1.5-rc.2 · ✅ 支持(v2.10.9 起)
0.1.6 ~ 0.1.7 · ✅ 支持(v2.12.x 适配 0.1.7 存储格式与 grid 布局变更;0.1.6 旧存储布局有向后兼容回归用例)
0.2.0-rc.2(Web,profile web) · ✅ 支持(v2.12.4 起宿主 CSS-module 类名改为运行时解析,全部移动端 UI 验收在该版本通过)
桌面版内置宿主 0.2.0-rc.2(profile desktop) · ✅ 支持(v2.12.4 修复桌面宿主上移动端设置页样式整片失效;已实机验证)
关于 DSH 原生鉴权:DSH 从0.1.2起为dsh web内置了浏览器鉴权——启动时会打印带一次性 token 的地址(http://127.0.0.1:3080/?token=…),换取一枚绑定回环地址的会话 cookie,此后/、/api及各插件 RPC 通道都要求该 cookie。
这与本插件的访问密码门禁是两层互补的防护,不冲突也不重复:原生鉴权保护的是"本机回环上的 DSH 进程",本插件的门禁保护的是"经局域网 / 公网隧道进入的远程访问"。本插件的反向代理会在转发时自动注入合法的回环会话 cookie,因此手机 / 隧道访问无需手动处理 DSH 的 ?token=,按本页说明正常使用即可。
安装插件
# 方式一:从 npm 安装最新版(推荐) dsh plugin --profile web add @wenbin_wb/dsh-bridge # 方式二:免全局权限的 npx 方式 npx --yes @deepseek-ai/dsh plugin --profile web add @wenbin_wb/dsh-bridge # 方式三:从源码安装 git clone https://github.com/wenbin-wb/dsh-bridge.git dsh plugin --profile web add ./dsh-bridge
升级至最新版
# 方式一:在设置页「远程访问」底部点击「🚀 一键升级到最新版并重启」(推荐,全自动) # 方式 …(truncated)
Rendered from the README published on npm. Formatted only, not edited.
Versions
Published on npm::96,最后更新 2026-11-02