ds-harness-remote README

The project's README from github.com/liguobao/ds-harness-remote. As one markdown file: README.md.

DeepSeek Harness Remote

English  ·  中文  ·  Documentation  ·  Download: Windows  ·  macOS  ·  Linux  ·  Web  ·  Android

npm  ·  GitHub  ·  dshfind downloads

Connect once. Ready whenever you are.

Continue using your DeepSeek Harness instance from a phone, computer, or browser.

Return to the same Harness session from whichever device is with you. Harness keeps running on your work computer, with the same workspaces, tools, and project setup. Remote is simply another window into that environment.

Features

Install

Path A: DSH Desktop

Install DSH Desktop on Windows, macOS, or Linux. Remote is included and enabled by default, so no separate plugin installation is required.

Path B: Existing DSH installation

Add the exact package version through DSH's plugin manager for the web profile:

dsh plugin --profile web add [email protected]

Restart Harness after installation.

Do not install this package directly with npm. Only dsh plugin updates the selected profile and adds the bundle's configuration layer.

Path C: dsh-TUI Host

Remote can run as a Host in a terminal-only dsh-TUI profile; it does not require the Desktop browser connection service. Install the plugin in the TUI profile:

dsh plugin --profile dsh-tui add [email protected]

Start dsh-TUI and use its native slash command:

/remote                    # live Host status
/remote login              # Zhihu QR login by default
/remote login github
/remote status
/remote logout

/remote login opens a TUI-native QR scene and prints a clickable authorization URL below the QR code. Login defaults to Zhihu; GitHub is also supported. Host control is enabled by default, and /remote logout revokes the Host and rotates its local device identity. Host configuration is not exposed yet; the integration uses https://dsh.r2049.cn. Tab completion is available for the subcommands and login providers. The /remote Host-management surface supports TUI profiles on dsh-v0.1.1-rc.2, dsh-v0.1.2-alpha.1–rc.1, and dsh-v0.1.5-rc.1; Remote workspace capabilities are advertised only when their official Harness carrier is available.

See the dsh-TUI Remote guide for the compatibility matrix, rc.2 ApiProxy setup, status fields, and troubleshooting.

Quick start

  1. Open Remote from the Harness sidebar.
  2. Sign in with a GitHub or Zhihu QR code, or use your account and password. New password accounts can register through Remote Web; the site shows the current invitation requirements.
  3. Enable remote control for the current computer.
  4. On another device, open DSH Desktop, Remote Web, or the Android client and sign in to the same account.
  5. Select the online Host, then choose an existing workspace or browse remote directories to open one.

The public service currently uses the hosted Remote relay. A supported self-hosted relay option is not available yet.

Screenshots

Desktop

Enable Allow control of this device in Remote settings to make the current computer available as a Host.

On another computer, select an online Host and open one of its workspaces.

Remote workspace picker listing online Hosts

The workspace opens in the native Harness interface, with the active Host and encrypted connection status shown in the header.

A Harness conversation running through an encrypted remote connection

Android

Download the latest Android APK from GitHub Releases.

Sign in to the Android client with your existing account, select an available computer, open a workspace, and continue the conversation with text or image prompts. The conversation toolbar also lets you switch the active model and choose any reasoning effort declared by it.

Android client listing online and offline computers Sending an image prompt from the Android client Viewing the image response in the Android client

How it works

DSH Desktop / Remote Web / Android
  ↔ authenticated, end-to-end encrypted channel
Remote Plugin on the Host
  ↔ supported Harness or optional Codex workspace support
Harness sessions/workspaces or Codex projects

The Harness Host does not need a public listening port. You can connect from anywhere with internet access, and Remote communicates over a bidirectional end-to-end encrypted channel. It switches the client to the selected Host's native Harness API, so the original workspace, tools, and permission flow remain on that computer. Every settings namespace currently registered by the Host can also be configured remotely through the official Harness settings API. Credential values remain write-only, and Host-local document/open actions are never exposed.

Experimental Codex workspaces

Remote can also show Codex projects from an authorized Host. Pick one from the normal workspace chooser and continue in the existing Harness or Android interface; there is no separate Codex screen to learn. The Desktop chooser and Android workspace page can also add a Host directory to the Codex project catalog without importing it into Harness storage.

Codex Remote is meant as a convenience layer for your own devices. It supports text prompts, image prompts where available, model and permission controls, interrupt, and approvals. It is still published as experimental while long-running recovery and compatibility work continue.

Web and Desktop approval controls show the Host-confirmed mode for the selected Codex session. If it has not been reported, they indicate that Host settings are inherited. Changing the mode requires Host confirmation; sending a prompt preserves the session's current policy.

Codex is enabled by default and can be turned off in the DeepSeek Remote settings card. Advanced configuration and implementation notes live in Codex Remote technical notes.

End-to-end encryption

Harness business traffic is encrypted on the Client and decrypted only by the selected Host using the fixed Noise_IK_25519_ChaChaPoly_SHA256 suite. Account membership and locally pinned device identity keys must both authorize a connection. The service can route connections and observe network metadata, but it cannot read session messages, prompts, tool output, workspace paths, or File Viewer content. See End-to-end encryption for the handshake, key lifecycle, visible metadata, replay protection, and security limits.

Network and transport

The Host opens outbound connections only; it does not listen on a public port or require router port forwarding. Remote negotiates LAN -> P2P -> TURN -> Relay, falling back to the encrypted WebSocket Relay when WebRTC is unavailable or cannot connect. Every path carries the same Noise ciphertext and keeps the same Host/Client identity boundary. See Network and transport for the topology, control and data planes, NAT behavior, fallback, reconnect semantics, and current validation status.

Security

Compatibility

Breaking change notice: Plugin 0.4.1 removes the earlier experimental Remote business RPC surface (sessions.*, session.*, permissions.respond, sync.from). Harness session traffic now only uses the official rc.2 ApiProxy or the v0.1.2 Typert Remote Gateway, and this plugin does not provide an adapter or wire-format translation for the old RPC surface.

Plugin 0.4.13 supports DeepSeek Harness dsh-v0.1.1-rc.2 through the legacy official ApiProxy, and dsh-v0.1.2-alpha.1–rc.1 through the official Typert Remote Gateway. It also supports dsh-v0.1.5-rc.1 Session V3 through the official Typert Remote Gateway. A 0.4.13 Client running rc.2 remains compatible with older rc.2 Hosts through the legacy capability fallback.

Remote Web/Desktop and the Android app also normalize released sessions that still report the retired code agent preset to ptc, so old sessions can resume on dsh-v0.1.5-rc.1 without changing DeepSeek Harness itself.

Desktop endpoints must use a compatible Harness carrier. Plugin 0.4.13 selects the legacy ApiProxy path for rc.2 Hosts when that Host exposes it, and Session V3 Desktop clients can open legacy v0.1.2 Typert Remote Hosts through Remote-side history and event normalization. Legacy Typert clients still reject Session V3 Hosts before switching the native UI or mutating a Workspace.

Documentation

Project status and trademarks

This is an independent community project and is not an official DeepSeek product. DeepSeek and related names and marks belong to their respective owners.

License

MIT

ds-harness-remote (liguobao/ds-harness-remote)

Searching Database…

这是什么?一个面向 DeepSeek Harness 的远程访问插件,让你从另一台电脑、Android 设备或网页浏览器继续进行中的 Harness 会话,而会话、工具和工作区都留在你原来的工作电脑上。
这是独立应用,还是别的东西的插件?它是 DeepSeek Harness(dsh)插件系统的一个插件,默认随 DSH Desktop 捆绑提供,配有配套的 Android 和 Web 客户端,还可以选择在纯终端的 dsh-TUI profile 中作为 Host 运行。
怎么让 Remote 跑起来?在 Windows、macOS 或 Linux 上安装 DSH Desktop(Remote 默认启用),或者在已有安装上通过 DSH 的插件管理器添加确切的包版本并重启 Harness;然后从侧边栏打开 Remote,用 GitHub 或知乎二维码登录。
它需要哪个版本的 Harness 才能用?你需要一个运行 dsh-v0.1.1-rc.2、dsh-v0.1.2-alpha.1 至 rc.1、或 dsh-v0.1.5-rc.1 的 DeepSeek Harness 安装,因为 Remote 依赖它们的官方 ApiProxy 或 Typert Remote Gateway。
兼容性或自建中继方面有什么要注意的?插件 0.4.1 移除了早期的实验性 RPC 接口且没有提供回退适配,因此客户端和主机端版本必须在正确的 ApiProxy/Gateway 路径上保持一致;另外目前没有自托管中继选项,所有人都走托管的 Remote 中继。
中继服务能读我的会话数据吗?不能。流量用固定的 Noise 套件做端到端加密,所以中继只能路由连接、看到网络元数据,读不了会话消息、提示词、工具输出或文件内容。
出于安全原因,我远程到底不能做什么?Remote 不提供直接的 shell、PTY 或通用工具 RPC;它只显示只读的工作区选择器和受控的文件预览,不能写入、删除、上传或执行任何东西。
网络连接实际上是怎么路由的?Remote 先尝试局域网,然后是 P2P,再是 TURN;如果 WebRTC 连不上,就回退到加密的 WebSocket 中继,而且 Harness Host 始终不需要公开的监听端口。
实验性的 Codex 支持是什么?Remote 还可以在正常的工作区选择器中显示来自已授权 Host 的 Codex 项目,支持文本/图像提示和权限控制,但在恢复和兼容性工作继续推进期间,它仍被标记为实验性。
在 Android 应用里我能做什么?从 GitHub Releases 下载 APK,登录后选一台在线电脑和工作区,然后继续用文本或图像提示对话,还可以从工具栏切换模型或推理力度。
Creator
liguobao
Size
17.1 MB
Stars
345
Age
2mo
Commits · 90 Days