v0.4.0 beta — Windows 10/11

Your screen. Your network.
Nobody in between.

Remote is a peer-to-peer remote desktop for Windows. After a short handshake, your screen and input stream directly between your two machines — encrypted, hardware-accelerated, and never relayed through anyone’s server.

~6 MB installer · per-user install, no elevation · unsigned beta build
Host — shares its screen DESKTOP CAPTURE → H.264 (GPU) Controller — views & types DECODE (GPU) → INPUT INJECT Direct WebRTC — encrypted (DTLS/SRTP) VIDEO + INPUT NEVER TOUCH A SERVER relay server a tiny signaling service only introduces the two machines — then steps out of the way
The handshake goes through a minimal signaling service. Everything you see and type goes peer-to-peer.

Why peer-to-peer matters

Every cloud remote-desktop product routes your screen through servers it operates. That means your pixels live on infrastructure you don’t control, latency is doubled by the detour, and the product dies the day the company’s relay does. Remote takes the other road.

⇄ Direct by construction

After the introduction, video and input flow over a direct WebRTC connection. There is no relay to slow you down — and none to trust. TURN is deliberately absent.

🔒 Encrypted by the transport

WebRTC’s built-in DTLS/SRTP encryption covers every frame and every keystroke. Sessions are gated by a one-time consent prompt and a single-use secret.

👤 Your computers, one login

Sign in with a username and password to keep your machines in one saved list — encrypted locally and on the sync server, unlocked by a key only you hold. Skip it and nothing changes: a short connection code still works, no email ever.

Built like an engineering tool, not a web page

A native Rust engine does the work; the UI is a thin shell over it.

⚡ GPU the whole way

Desktop capture, H.264 encode/decode and rendering stay on your graphics card — hardware encoder first, with a software fallback. Target: ≤ 80 ms input-to-visible on LAN.

🪟 Native viewer window

The stream renders into a real D3D11 swapchain, not a browser canvas. Fit, 1:1 and fullscreen modes; multi-monitor picker.

📉 Latency beats completeness

Every queue is bounded. Under pressure the engine drops stale frames instead of queuing them — you always see now, never a backlog.

⌨️ Input that behaves

Split fast/reliable input channels: pointer moves arrive fresh and coalesced, clicks and keys arrive reliably. Focus loss or disconnect releases every held key.

📊 Honest instrumentation

Per-frame timestamps for capture, encode, send, receive, decode and present — visible in-app. When it’s slow, it tells you exactly where.

📶 Adapts to your link

The congestion controller walks bitrate, frame rate and resolution down when your network degrades — and back up when it recovers. No surprise stutter.

🤖 Drive it with your AI agent

Launch with --mcp and your local agent sees the remote screen and drives it — screenshots and clicks over the same direct P2P link, with consent still a human click on the Host.

Three steps, one consent prompt

Install on both machines

The same small app plays either role — Host to share, Controller to view and drive.

Share the connection code

The Host shows a short code. Type it into the Controller. The introduction happens over the signaling service.

Accept once

The Host accepts a one-time prompt. From that moment the session is direct, encrypted, and unmediated.

Download

Windows 10/11, 64-bit. Per-user install — no admin prompt.

version0.4.0 beta size~6.3 MB installerNSIS, per-user signatureunsigned (beta)
Know what you’re installing — beta limitations, stated plainly:
  • Unsigned build: Windows SmartScreen will warn on first run. That’s expected for a beta; code signing is on the roadmap.
  • Direct connections only: on symmetric NAT or networks that block UDP, the session can’t be established — the app will tell you plainly rather than fall back to a relay. Relaying is a deliberate non-feature.
  • One controlled machine per session; Windows-to-Windows only for now.
  • Input into elevated (administrator) windows on the Host is blocked by Windows itself (UIPI); the app surfaces this when it happens.