Skip to content
Proxer Proxer v0.5.0

Proxer

Self-hosted reverse tunnels for HTTP, SSE, and WebSocket services.

Proxer is a self-hosted reverse-tunnel CLI for exposing local HTTP, Server-Sent Events, and WebSocket services through a public server you control.


Opening inbound ports for every local service is noisy and risky. SSH forwards are useful for one-off work, but they are awkward to share with a team or run behind a stable public hostname. Hosted tunnel services are convenient, but they put the control plane outside your infrastructure.

Proxer keeps the workflow simple. Run one public server, then connect clients from private networks. Each client opens a persistent WebSocket control connection to the server, and public requests are multiplexed back over that client-initiated connection. Your local app only needs to listen on 127.0.0.1 or a private interface.

Routing is explicit. A client without --subdomain handles the root domain route. A client with --subdomain demo handles demo.<domain>. Unknown hosts return 404 instead of being guessed or sent to the only connected client.


  • Single-port server for public HTTP traffic, WebSocket upgrades, health probes, and tunnel control
  • HTTP streaming for regular responses and long-running responses
  • Server-Sent Events without buffering the response body
  • WebSocket proxying for realtime local applications
  • Client-initiated tunnels that work from NATed or private networks
  • Root-domain and subdomain routing with no single-client fallback
  • Trusted proxy support for Traefik and other reverse proxies you control
  • Standalone executables, npm, Homebrew, and OCI images for common deployment paths
  • Agent skill installer so AI agents can learn the Proxer workflow from a local skill file

# Start the public server
proxer server --listen 0.0.0.0:8080 --domain your-server.example.com --token dev-token
# Expose a local app on a subdomain
proxer http 3000 \
--server ws://your-server.example.com:8080 \
--subdomain demo \
--token dev-token
# Send public traffic to the tunnel
curl -H 'Host: demo.your-server.example.com' http://your-server.example.com:8080/

Head to Getting Started to install Proxer and expose your first local service.