Skip to main content
ENGINEERED TO STAY OUT OF YOUR WAY

Native by design.
Open in connection.

Native views and a Go core. Standard Web and a global edge network. Every layer is built for lightweight, secure work across platforms.

ReignHub system architectureThe cloud coordinates connections. Devices connect directly first; agents and projects run on your computer.Cloudflare WorkerDiscovery · pairing · signaling · relayD1 + Durable ObjectsMetadata · device roomsControllerDesktop · mobile · WebHost computer · ReignHubGo core · providersAgentCodex App / CLI · projectsCoordination / relay fallbackP2PPublic / self-hosted probesUDP STUN · TCP :26330Candidates
The cloud coordinates connections. Devices connect directly first; agents and projects run on your computer.
01 / NATIVE CLIENTS

Go + NSGo. Native throughout.

Go-written interfaces map to native platform views. UI and application logic work in one process for a small footprint and a complete experience.

macOS · Windows · LinuxAndroid · iOSNative views
Explore NSGo

One language for UI and core

Device management, pairing, networking and providers share a Go core, called directly by the native interface.

Built for longer sessions

Native virtual message lists, incremental Markdown, per-session drafts and attachment previews.

02 / WEB EXPERIENCE

React + Next.js. Open and connect.

Next.js App Router powers the website, docs and Web console. OpenNext deploys the experience to Cloudflare, with standard WebRTC and Web Crypto in the browser.

Next.js + ReactOpenNextFumadocs + MDX
Explore Fumadocs

Documentation as code

Fumadocs generates navigation, search and pages from Markdown/MDX. Docs are maintained with the open-source core.

Standard browser capabilities

IndexedDB caches, virtual messages and responsive layouts create a consistent workflow across phone, tablet and desktop browsers.

03 / CONNECTIVITY

WebRTC + TCP. Direct first.

Native clients use Pion WebRTC for UDP data channels while also attempting native TCP hole punching. Browsers use RTCPeerConnection. Public and optional self-hosted STUN gather candidates in parallel.

WebRTC DataChannelNative TCPWSS fallback
Read the connection strategy

One URL discovers capabilities

Clients need only the service root URL. Probe endpoints come from /p2p/config. The optional Go probe listens on TCP and UDP port 26330.

Flexible connection paths

Devices connect directly first. When relay is needed, the service provides an encrypted WebSocket path with end-to-end encryption.

04 / CONNECTION SERVICE

One Worker coordinates your devices.

Cloudflare Workers host the website, Web client and /p2p/*. Durable Objects coordinate device rooms with hibernating WebSockets; D1 persists device and pairing metadata.

Cloudflare WorkersDurable ObjectsD1
Deploy your own Worker

Less infrastructure to assemble

workers.dev provides HTTPS. Self-hosting requires no OAuth, payment setup or mandatory public VM. Add a probe if your network needs it.

One connection service

Discovery, pairing and encrypted relay share one endpoint. Official hosting and self-hosted deployments use the same clients and protocol.

05 / LOCAL-FIRST STORAGE

Local cache. Clear cloud boundaries.

Native clients use SQLite and attachment files. Browsers retain pairing identity and session snapshots in IndexedDB. Reconnect, catch up and resume incremental events.

SQLiteIndexedDBD1 + Drizzle
Read the full stack guide

Projects stay on your computer

The cloud does not store plaintext chats or attachments. Projects and agents keep running on the host computer.

Storage with distinct responsibilities

SQLite stores native state, IndexedDB serves browsers and D1 persists cloud metadata. The official service manages business data with Drizzle ORM.

06 / TRUST & SECURITY

Keys on devices. Explicit authorization.

Pairing establishes trust with X25519, HKDF and AES-GCM. Direction-specific AEAD keys and replay protection secure traffic. Relayed messages remain end-to-end encrypted.

End-to-end encryptionLocal device trustShort-lived signed entitlements
Security and privacy boundaries

An ID is not a credential

Six-digit device IDs enable discovery. First access requires confirmation or password verification. Account directory sync does not automatically trust a new controller.

Unified service authorization

The service issues short-lived authorization verified by the host. Direct and relay paths share access controls, while users manage device trust.

LIGHTWEIGHT BY DESIGN

Lightweight. More room for your agents.

Native views and a Go core bring your cross-device sessions together in one lightweight app.

8.9 MB

macOS arm64 compressed download

23.1 MB

macOS .app file size

39–48MiB

Demo dashboard / conversation footprint

Apple M5 · macOS 26.6 · arm64 preview build · ReignHub app physical memory measured in demo dashboard and conversation scenarios.

See test methods and results
TAKE YOUR WORK WITH YOU

Your next move. Anywhere.

Six platforms. A native, lightweight experience. Bring your agents with you.

Get started