DeepSeek Harness 插件

onebox-dsh-bridge

DeepSeek Harness 的 Android 客户端实现:扫码配对 + 端到端加密云端中继,把本机 dsh web 桥接到万宝盒 App。

跳到安装方式

来源信息

GitHub 仓库
wangzhishou/onebox-dsh-bridge
最近更新
2026年8月21日
分类
远程与移动
GitHub stars
0

安装

默认先复制一段 Prompt,让 Agent 读页面和仓库;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读页面和仓库。

请先不要安装。阅读这个 DeepSeek Harness 插件,说明它解决什么问题、会访问哪些文件、网络或密钥,以及如何安装和卸载。

插件页面:https://deepseekplugins.org/zh/plugins/wangzhishou/onebox-dsh-bridge
GitHub:https://github.com/wangzhishou/onebox-dsh-bridge
插件名:onebox-dsh-bridge
作者:wangzhishou
安装命令:dsh plugin --profile web add "https://github.com/wangzhishou/onebox-dsh-bridge/releases/latest/download/onebox-dsh-bridge.tgz"

确认前不要执行安装命令。

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器2 个文件
README.md来源说明 · 只读预览

onebox-dsh-bridge

English | [简体中文](README.zh-CN.md)

![npm version](https://www.npmjs.com/package/onebox-dsh-bridge) ![License](LICENSE) ![GitHub Repo](https://github.com/wangzhishou/OneBox)

A DeepSeek Harness (dsh) plugin that bridges your local dsh web to the OneBox cloud relay, so the OneBox Android app can reach your computer's AI agent over the public internet — scan-to-pair, token management and tunnel frame multiplexing, all inside the plugin. Your agent is online as soon as dsh web starts.

> Built for the open-source OneBox (万宝盒) Android app. The plugin page also includes the app download info, so anyone running DSH can pair their phone in a minute.

How it works

OneBox App ⇅ https://api.wanbaohe.com/dsh/* (cloud relay)
                 ⇅ outbound WSS (control tunnel, JSON frame multiplexing)
         onebox-dsh-bridge (this plugin)
                 ⇅ loopback
         local dsh web (127.0.0.1:3080)
  • Mounts a /onebox-bridge page in the dsh web GUI (self-contained HTML, zero external deps) showing the pairing QR code and online status
  • Pairing: POST /dsh/pair-sessions → a ≥128-bit secret is generated locally and encoded into the QR (oneboxdsh://pair?v=1&g=…&p=…&s=…) → polls GET /dsh/pair-sessions/:id/status?s=… every 2s; once the app scans and claims, the plugin receives its device token
  • Goes online via outbound WSS /dsh/agent?token=…; tunnel frames: http → local POST /api/<method> answered by http-resp; ws-open/ws-frame/ws-close bridge the local /api/events.mux|host streams
  • Control WS drop → all local bridges closed, exponential-backoff reconnect (1s→30s); token 401 (revoked/expired) → local token deleted, back to scan-to-pair state
  • End-to-end encryption: the pairing key travels only inside the QR code, never through the server; all app ↔ computer traffic is AES-256-GCM encrypted — the relay forwards ciphertext only

Install

With the dsh CLI installed:

dsh plugin --profile web add onebox-dsh-bridge

Running dsh from a source checkout (prefix commands with pnpm dsh, from the deepseek-harness repo root):

pnpm dsh plugin --profile web add onebox-dsh-bridge

The package declares dsh.bundle, so add automatically merges the plugin row into the profile's composition layer. Restart dsh web to take effect.

Compatibility: verified against dsh 0.1.0-rc.7 (npm latest) and 0.1.0-rc.8 (npm next) — pairing page, status API and QR pair-session creation all pass on both. The plugin must live in the web profile (it injects the webServer service that only the web composition provides).

Installing straight from GitHub also works:

dsh plugin --profile web add github:wangzhishou/onebox-dsh-bridge

Usage

1. Open http://127.0.0.1:3080/onebox-bridge in dsh web (adjust the port to your deployment) 2. In the OneBox app, open DSH Client → My Computers and scan the QR code on the page 3. Once the page shows Online, pick the device in the app and start chatting with your agent

Page buttons: Regenerate QR code (invalidates the old session and creates a new pairing session; codes expire after 10 minutes and are rebuilt automatically) and Unbind & re-pair (deletes the local token, back to waiting-for-scan).

Get the OneBox app

The plugin is the computer-side half; the phone-side half is the free, open-source OneBox Android app:

Screenshots

Plugin pairing pageApp connect pageApp chat controlFeedback & stats
![pairing page](docs/images/pairing-page.png)![connect](docs/images/app-connect.png)![chat](docs/images/app-chat.png)![feedback](docs/images/app-feedback.png)

Configuration

All optional. Priority: environment variable > plugin config > default.

KeyEnv varDefaultDescription
gatewayONEBOX_DSH_GATEWAYhttps://api.wanbaohe.comOneBox gateway. For the international app (Google Play build, api.oneboxable.com) you must set this to https://api.oneboxable.com, otherwise scanned pairings land in the CN database and the login state won't match
upstreamONEBOX_DSH_UPSTREAM127.0.0.1:3080Local dsh address (host:port)
deviceNamesystem hostnameDevice name reported to the app during pairing
dataDirONEBOX_DSH_DATA_DIR~/.dsh/profiles/web/onebox-dsh-bridgeToken storage directory (token.json, mode 0600; old tokens are invalidated automatically after a gateway change)

To change config, override the whole row in the profile's ~/.dsh/profiles/web/cordis.patch.yml (a patch replaces the entire config value — list every key):

- id: onebox-dsh-bridge
  name: 'onebox-dsh-bridge'
  config:
    gateway: https://api.wanbaohe.com
    upstream: 127.0.0.1:3080
    deviceName: My Mac

Uninstall

dsh plugin --profile web remove onebox-dsh-bridge

Optionally delete the credentials directory ~/.dsh/profiles/web/onebox-dsh-bridge/; paired devices can be revoked in the app under My Computers.

Notes

  • The /onebox-bridge page, like dsh web itself, has no extra auth (loopback-only by default); the QR code contains the pairing secret — never expose dsh web directly to the public internet
  • Runtime dependencies: just ws + qrcode