Cross-device channels
Talk to your agents from any device. iOS Shortcut + Siri (free, native), Mac LaunchAgent bridge (remote control from phone), Twilio SMS (text @agent name). Doc 24.
localhost in any iOS Shortcut, Twilio webhook, or remote tool will fail every time you're off Wi-Fi, every time your Mac's IP shifts, every time npm run dev stops. Below: every URL this server is reachable at right now, ranked by reach. Pick the highest tier you have available and use that URL.
iOS supports .local hostnames natively via Bonjour. The .local hostname is stable — it doesn't change when DHCP renews your IP.
Install Tailscale on Mac + iPhone (same account), then 'tailscale serve --bg --https=443 http://localhost:4280'. Get a TLS URL that works from cellular, hotel Wi-Fi, anywhere — tailnet members only, never public.
After Serve is on, add 'funnel' to the node's ACL attrs at login.tailscale.com/admin/acls, then 'tailscale funnel --bg 443'. Same URL, now reachable from Slack/Twilio. Treat the Mac as exposed — auth every endpoint.
Even with Tailscale, your dev server stops if you quit the terminal or the Mac restarts. There's a LaunchAgent template at /Applications/Jack-HQ/install/com.jack-hq.web.plist that auto-starts npm run dev at login + restarts within 10s on any crash. Install commands are in INSTALL.md at the project root.