I Got Sick of Remembering Port Numbers

· web ai · Source ↗

TLDR

  • local.vibe is a Go single-binary that assigns .vibe hostnames to local dev services, auto-ports, proxies, and provides a dashboard at https://local.vibe.

Key Takeaways

  • Drop a vibe.json with a name and cmd into any project; vibe start proxies it to https://name.vibe with trusted local HTTPS via Keychain.
  • Auto-assigns free ports, passes $PORT to the app, and watches the process for crashes or rebinds.
  • Dashboard at https://local.vibe shows all running services with start/stop/edit, grid/list view, and bookmarks.
  • Non-localhost targets work too: tailscale.vibe and hass.vibe can redirect to remote or LAN hosts.
  • curl http://localhost:7999/setup.md returns an agent-readable setup doc; Claude Code or Cursor can then register routes and control apps via HTTP API.

Hacker News Comment Review

  • Commenters broadly pushed back that /etc/services, *.localhost subdomains, and tools like localias or portless already solve this without custom TLDs or a new daemon.
  • The .vibe TLD choice drew criticism; PufPufPuf noted that <anything>.localhost is already an industry-standard convention supported natively on macOS and most Linux distros, avoiding local DNS setup entirely.
  • Several commenters treated the project as vibe-coded over-engineering, though the agent-integration angle (/setup.md endpoint for Cursor/Claude) got mild interest as a genuinely novel addition.

Notable Comments

  • @swiftcoder: Points to localias as an established alternative with Caddy-managed TLS certs and clean port aliasing.
  • @PufPufPuf: “there is already an industry convention” – *.localhost subdomains work natively, no custom TLD or dnsmasq needed.

Original | Discuss on HN