Open HTTP/TCP tunnels to local services, route outbound traffic through forward and reverse proxies, lease stable IP addresses for whitelisted gateways, and run metered WebSocket sessions — settled over x402.
A CLI and a full-screen TUI, built with OpenTUI. Four primitives, one binary: tunnels, deduplicated proxies, leased IPs, and metered sockets.
An HTTP tunnel puts a local port or device on a public HTTPS URL in seconds — the same job as an ngrok or Cloudflare tunnel, without the account. No signup, monitor every request in real time.
Read the tunnels guide →Wrap fetch() once and every outbound call routes through the Consensus proxy: protected, deduplicated, and cached. Works as a forward proxy for outbound calls and a reverse proxy in front of your own services. Existing route handlers stay untouched.
Read the proxy guide →Lease a verified, performant node and pin every tunnel, proxy, and WebSocket to one static IP address. Whitelist the IP once with an upstream API, reconnect automatically, and stop fighting dynamic firewalls.
Read the static IP guide →Prepay time, data, or both with a single x402 payment. Each persistent WebSocket session is metered by the protocol and closed cleanly once the budget runs out. No accounts, no state.
Read the WebSockets guide →
Wire native proxy handlers directly into your JavaScript/TypeScript processes using clean dependency injection, and manage parameters locally via secure profiles.
x402 is an open payment protocol that revives the HTTP 402 Payment Required status code. A server answers an unpaid request with 402 and a price quote; the client signs a stablecoin payment and retries the same request with the proof attached. Consensus uses x402 for every billable action — a proxied request, a tunnel, an IP lease, a WebSocket session — so there is nothing to sign up for and no API key to rotate.
Run consensus tunnel http localhost:3000. The CLI opens an HTTP tunnel through a vetted node and returns a public HTTPS URL that forwards straight to your local port. It covers the same ground as an ngrok or Cloudflare tunnel, without an account, and every request through the tunnel is visible in the terminal in real time.
The forward proxy handles traffic leaving your application: wrap fetch() with ProxyClient and outbound calls route through the network, deduplicated and cached. The reverse proxy handles traffic arriving at a service you run, sitting in front of it and forwarding requests in. Both run at the application level in your own JavaScript or TypeScript process, so HTTPS is never decrypted.
Run consensus ip list to see verified nodes with their regions and health scores, then lease one. Traffic is pinned to that node's static IPv4 address, so you whitelist the IP once with an upstream provider and every tunnel, proxy request, and WebSocket from your app arrives from the same address.
A client prepays a bounded session with a single x402 payment, specifying minutes, megabytes, or both. The protocol meters the persistent WebSocket connection as it runs and closes it cleanly once the budget is spent. Nothing is billed after the fact and no balance is held on your behalf.
No. There is no signup, no dashboard, and no key to rotate. Configuration lives in local profiles on your machine and authorization is the x402 payment attached to each request. Payment settles on Ethereum, Solana, or the Internet Computer through the Consensus facilitator.
Anyone with a qualifying machine can run a node, and admission is permissionless but not automatic. Before it can register, a node passes an encrypted admission test: it must hold steady throughput under sustained load on a full CPU core, stay responsive, and have enough memory. Once admitted, a node keeps an encrypted tunnel open to the network, and only connected, healthy nodes receive traffic.
100% free while in beta
Looking to host infrastructure? Join the network as a node operator →