kimaki tunnel command exposes a local port as a public HTTPS URL. The user driving the bot from Discord is not at the terminal, so localhost:3000 is useless to them; a tunnel gives them a real URL to open.1kimaki tunnel -- pnpm dev
1kimaki tunnel --port 3000
pnpm dev ──▶ tunnel ──▶ https://<id>-tunnel.kimaki.dev ──▶ open anywhere
kimaki tunnel injects TRAFORO_URL into the child process. Wire your app to that variable so OAuth callbacks, webhook URLs, and absolute links use the public tunnel instead of localhost:12345678# Next.js kimaki tunnel -- sh -c 'APP_URL=$TRAFORO_URL exec pnpm dev' # better-auth kimaki tunnel -- sh -c 'BETTER_AUTH_URL=$TRAFORO_URL exec pnpm dev' # Vite kimaki tunnel -- sh -c 'VITE_BASE_URL=$TRAFORO_URL exec pnpm dev'
kimaki tunnel -- ..., the local port is auto-detected from the process output. Only pass --port if detection fails.| Option | Description |
-p, --port <port> | Local port (default: read from the command output) |
-t, --tunnel-id <id> | Fixed tunnel ID (default: random). Only for public-safe services |
--host <host> | Local host (default: localhost) |
-k, --kill | Kill the process on --port first |
-t to pick a stable, guessable ID when the service is safe to be publicly discoverable.12tuistory launch "kimaki tunnel -- pnpm dev" -s myapp-dev tuistory read -s myapp-dev # find the printed tunnel URL