Tunnels
A tunnel is a public link to your OpenChamber, so you can reach it from your phone or another network. Use openchamber tunnel to create one for a running instance.
Prerequisites
OpenChamber starts the tunnel provider CLI on your machine. Install the provider you want to use first:
brew install cloudflaredbrew install ngrokCloudflare quick tunnels can run with cloudflared. Ngrok requires an ngrok account and an authtoken from the ngrok dashboard:
ngrok config add-authtoken <your-ngrok-token>Quick start
- Start OpenChamber:
openchamberIf you skip this step, openchamber tunnel start can auto-start a CLI server. When auto-starting, you can pass server options such as --port, --host, --lan, --ui-password, and --api-only.
- Start a Cloudflare tunnel:
openchamber tunnel start --provider cloudflare --mode quickOr start an Ngrok tunnel:
openchamber tunnel start --provider ngrok --mode quick- Check status:
openchamber tunnel statusWhen the tunnel is up, status shows a public URL. Open it, or scan the QR code, to reach OpenChamber from anywhere.
By default, OpenChamber prints a QR code in interactive TTY sessions. Use --qr to force QR output, or --no-qr to disable it.
Providers
cloudflare: quick, managed remote, and managed local modesngrok: quick mode
Managed modes
Managed remote
Use a token + hostname managed by Cloudflare:
openchamber tunnel start --provider cloudflare --mode managed-remote --token-file ~/.secrets/cf-token --hostname app.example.comManaged local
Use a local cloudflared config:
openchamber tunnel start --provider cloudflare --mode managed-local --config ~/.cloudflared/config.ymlProfiles (managed-remote)
Save a reusable profile:
openchamber tunnel profile add --provider cloudflare --mode managed-remote --name prod-main --hostname app.example.com --token-file ~/.secrets/cf-tokenStart using the saved profile:
openchamber tunnel start --profile prod-mainUseful commands
openchamber tunnel providersopenchamber tunnel ready --provider cloudflareopenchamber tunnel ready --provider ngrokopenchamber tunnel doctor --provider cloudflareopenchamber tunnel doctor --provider ngrokopenchamber tunnel stop --port 3000Behavior notes
- one active tunnel per OpenChamber instance (port)
- starting a new mode/provider on same instance replaces previous tunnel
- generating a new connect link revokes previous unused one
- tunnel auto-start preserves server flags like
--ui-passwordand--api-onlyin the instance settings used by restart/update flows
Related
- Security — protect the UI before exposing it
- Desktop Tunnels — desktop app tunnel setup without CLI startup
- PWA & Mobile — reach OpenChamber from your phone
- Troubleshooting — if the tunnel link doesn’t work