Expose your local web server to the internet with a public URL
Run one command and your local port gets a secure https://<subdomain>.tunnelto.dev address. No config, no deploy, no waiting.
tunnelto — zsh
Install
Easy and free to get started.
[][][]
$
curl -sL https://tunnelto.dev/install.sh | shThen open a tunnel to a local server:
$ tunnelto --port 8000
Public URL tunnels to localhost
More building. Less "deploy & wait."
- DemosQuickly demo a web app, server, or static files running on localhost to anyone in the world by sending them a tunnelto.dev link.
- Webhook integrationsHaving trouble integrating Slack or Stripe webhooks? Use a tunnelto.dev URL as a temporary webhook URL and debug that webhook instantly.
- Mobile developmentWant to test an iOS or Android app? Run your backend on localhost and point the app at your *.tunnelto.dev URL.
- And many more...
Open core
tunnelto is open source software at the core. Find it on GitHub ↗.
No vendor lock-in: use the hosted service or host it yourself.
Pricing
Dedicated custom subdomains: <yourapp>.tunnelto.dev
- Price$4 / month per user
- SubdomainsReserve up to 20 custom subdomains
- TunnelsUp to 5 active tunnels per user
- TeamInvite teammates, each with their own key
[Get started →]Higher volume? Contact us.
For agents
Coding agents can use tunnelto too. There is a plain-text guide at /AGENTS.md, an index at /llms.txt, and an installable skill with the full flag reference, recipes, and gotchas.
# install the skill (or curl /skills/tunnelto/SKILL.md into ~/.claude/skills/tunnelto/) $ npx skills add tunneltodev/tunnelto # open a tunnel from a script and read back the URL $ NO_COLOR=1 tunnelto --port 8000 > /tmp/tunnelto.log 2>&1 & $ grep -oE 'https://[a-z0-9-]+\.tunnelto\.dev' /tmp/tunnelto.log