amux Tunnel

A stable public HTTPS URL for your local AI agent dashboard — no port forwarding, no router changes.

Quick answer: amux tunnel is a built-in HTTP relay. Run amux tunnel start 8822 and your local dashboard becomes reachable at https://<id>.t.amux.io/. The URL is stable across restarts. Requires amux Cloud ($20/mo).

Quick start

# 1. Get amux Cloud token at amux.io/cloud
# 2. Set the token in your config
amux config set cloud_token YOUR_TOKEN

# 3. Start the tunnel (forward to local port 8822)
amux tunnel start 8822

# Output:
# Tunnel active: https://a3f8c1d2e4b5f6a7.t.amux.io/
# Forwarding to http://localhost:8822

Your amux dashboard is now publicly reachable at the URL shown. Share it with teammates, configure it as a webhook endpoint, or open it on your phone from anywhere.

How it works

amux tunnel uses an outbound-dial architecture: your machine initiates the connection to the amux cloud gateway over TLS. The gateway holds the connection open and routes incoming HTTPS requests back through it. This means:

The tunnel ID is sha256(token)[:16] — deterministic and stable. Same token = same URL, every time.

Use cases

Use caseHow tunnel helps
Mobile dashboard accessOpen your amux dashboard from iPhone or Android — same URL you set in the iOS app
Webhook testingGive Stripe, GitHub, or Linear your tunnel URL; webhooks reach your local server. URL is stable — configure once
OAuth redirect URIsRegister https://<id>.t.amux.io/auth/callback once; it works across restarts
Team demo sharingLet a teammate see your local agent fleet in real time without VPN
Remote access from second machineAccess your dev machine's amux from a second laptop on another network
CI/CD integrationTrigger amux sessions from GitHub Actions via the public URL

Limitations

amux tunnel is an HTTP/HTTPS relay — nothing more. Know what it does not support:

If you need WebSocket support or custom domains, see alternatives to amux tunnel.

Tunnel vs alternatives

Tool Price HTTP WebSocket TCP Custom domain Stable URL (no restart) Setup effort
amux tunnel $20/mo (bundled with all amux Cloud features) Yes No No No Yes (token-derived) Zero — one command
ngrok (free) $0 (random URL per restart) Yes Yes No No No Low
ngrok (paid) $10–20/mo (tunnel only) Yes Yes Yes Yes Yes Low
Cloudflare Tunnel $0 (free) Yes Yes No (HTTP only) Yes (own domain) Yes Medium — cloudflared daemon + DNS
localtunnel $0 (open source) Yes No No No No Low
SSH reverse tunnel ~$5/mo (VPS) Yes Yes Yes Yes (own domain) Yes High — VPS + nginx + certs
Self-host amux gateway $0 (open source in cloud/gateway/) Yes No No Yes (own domain) Yes Medium — GCP/AWS VM + Terraform

Self-hosting the gateway

The tunnel gateway is open source. The cloud/gateway/ directory contains Terraform and a setup script to deploy your own relay to GCP (or any VM with a public IP). Point the DNS to your server, configure your token, and amux tunnel start 8822 works exactly the same way — except traffic stays on your infrastructure.

# Deploy your own tunnel gateway (one-time setup)
cd cloud/gateway
terraform init
terraform apply   # prompts for GCP project + region

# Then point amux at your gateway
amux config set tunnel_gateway https://t.yourdomain.com

Security

The tunnel forwards all HTTP traffic without authentication by default — anyone who knows the URL can reach your amux dashboard. Protect it by enabling amux's built-in password protection:

amux config set dashboard_password yourpassword
amux serve  # dashboard now requires login

All traffic between your machine and the gateway uses TLS. The gateway does not log request bodies.

Get amux tunnel with Cloud

$20/month includes the tunnel relay plus all amux features. Everything else is free open source.

Get amux Cloud View on GitHub

Frequently asked questions

What is amux tunnel?

amux tunnel is a built-in HTTP/HTTPS relay that gives your local amux dashboard a stable public URL at https://<id>.t.amux.io/. Your machine dials out to the amux cloud gateway — no port forwarding, no firewall changes, no router configuration needed. The tunnel URL is stable across restarts as long as your token stays the same.

How do I start the amux tunnel?

Run: amux tunnel start 8822. This starts a relay that forwards https://<id>.t.amux.io/ to http://localhost:8822 on your machine. The tunnel ID is derived from your amux cloud token (sha256[:16]), so the URL is the same every time.

Does amux tunnel support WebSocket or SSE?

No. amux tunnel is an HTTP/HTTPS relay only. It does not support WebSocket connections, Server-Sent Events (SSE), TCP tunneling, or UDP. If you need WebSocket tunneling, use ngrok or Cloudflare Tunnel instead.

Is amux tunnel free?

amux tunnel requires amux Cloud ($20/month or $200/year). Everything else in amux — the dashboard, agent orchestration, kanban board, mobile app, self-healing watchdog — is free and open source under MIT license. You can also self-host the tunnel gateway using the code in cloud/gateway/.

What is the amux tunnel URL format?

The URL format is https://<id>.t.amux.io/ where <id> is the first 16 hex characters of the SHA-256 hash of your amux cloud token. The URL is deterministic and stable — it does not change between restarts.

Can I use amux tunnel to test webhooks?

Yes. Start the tunnel, give the public URL to Stripe, GitHub, or any webhook provider, and incoming webhook requests are forwarded to your local server. Because the URL is stable (derived from your token), you only need to configure the webhook URL once.

How is amux tunnel different from ngrok?

amux tunnel is simpler and purpose-built for exposing your AI agent dashboard. It has fewer features than ngrok (no TCP, no custom domains, no request inspector UI) but costs less: $20/mo gets you all of amux Cloud, whereas ngrok alone is $10–20/mo for a static URL. If you need WebSocket tunneling or TCP, use ngrok or Cloudflare Tunnel.