
Encuentra la mejor red WiFi para donde estás: puntúa cada red guardada por su calidad en el mundo real, no solo por las barras de señal.
Encuentra la mejor red WiFi para tu ubicación, sin perder la conexión.
En una oficina (o casa) con varias redes WiFi, la mejor cambia según te
mueves, y "mejor" no solo son las barras de señal. Una red puede mostrar todas
las barras y aun así ser lenta: un 2.4 GHz saturado, un estándar WiFi antiguo,
un canal congestionado. roamr lee lo que tu sistema operativo ya sabe sobre
cada red guardada cercana, las puntúa según su calidad real, explica el
porqué y te dice cuál usar.

Estado: disponible en macOS (brew install --cask sourabh-khot65/tap/roamr), además de una
app complementaria de barra de menús. Windows está verificado y funciona; Linux está implementado y en
vista previa (consulta Plataformas). ¿No tienes Mac? Prueba roamr --demo.
macOS (recomendado). Instala con Homebrew. El cask elimina el atributo de cuarentena al instalarse, por lo que el binario se ejecuta sin la advertencia de Gatekeeper que provocaría una descarga desde el navegador:
brew install --cask sourabh-khot65/tap/roamr
Windows. Instala con Scoop:
scoop bucket add roamr https://github.com/sourabh-khot65/scoop-bucket
scoop install roamr
Cualquier plataforma. Descarga un binario de la última versión, o compila desde el código fuente con Go 1.26+:
go install github.com/sourabh-khot65/roamr/cmd/roamr@latest
Los binarios de la página de Releases (a diferencia de los de Homebrew) no están
firmados, por lo que Gatekeeper los pone en cuarentena en macOS. Elimínala una
vez con xattr -d com.apple.quarantine ./roamr. Las instalaciones con Homebrew
no se ven afectadas. Notarizar el binario de roamr está planeado, pero queda
fuera del alcance de la v0.x.
Una vez instalado, prueba la demo integrada (no se necesita hardware WiFi):
roamr --demo --why # o, desde el código: go run ./cmd/roamr --demo --why
→ Switch to Office-6E — clearly better here.
Office-6E ▀▀▀▀▁ 86% 6GHz ax score 95
- 6 GHz — fast, uncongested
- channel is clear
Office-5G ▀▀▀▀▀ 92% 5GHz ax score 93
- strong signal (-54 dBm)
- channel is clear
Office-Guest ▀▀▀▁▁ 68% 5GHz ac score 81
- channel is clear
▸ Office-2G ▀▀▀▀▀ 100% 2.4GHz n score 69
- strong signal (-47 dBm)
- 2.4 GHz — slower, more interference
- WiFi 4 — older, slower standard
Estás en Office-2G (la ▸) con un 100% de señal, pero roamr la clasifica en último lugar: 2,4 GHz sobre el antiguo WiFi 4, y te indica Office-6E en su lugar. Esa diferencia entre "barras completas" y "bueno de verdad" es el objetivo de roamr.
Opciones: --why (explica las puntuaciones), --json (legible por máquina), --demo (sin hardware),
--interval / --samples (para watch).
roamr es de asesoramiento: lee lo que tu sistema operativo sabe y nunca modifica tu conexión. Te indica qué red guardada es la mejor; tú cambias desde el menú Wi-Fi de tu sistema operativo.
watch suaviza la puntuación de cada red a lo largo del tiempo (EMA) y solo
señala un cambio cuando una red rival supera a tu red actual por un margen claro
durante varias muestras consecutivas, de modo que la recomendación no oscile por
ruido de señal ni por band-steering de 2,4/5 GHz.
La puntuación es pasiva y nunca te desconecta. Sopesa la señal, la banda, la congestión del canal, el estándar WiFi y (para la red en la que estás) la latencia en vivo. Los detalles están en docs/architecture.md; el soporte de plataformas se asienta tras una única costura conectable, descrita en docs/adding-a-platform.md.
Una app complementaria de barra de menús muestra la lista clasificada en vivo y
el "porqué" como menú desplegable: puntuaciones con colores según calidad,
barras de señal y un indicador ámbar cuando una red es duraderamente mejor. Lee
roamr watch --json, por lo que toda la puntuación permanece en la CLI; como la
CLI, solo aconseja y nunca cambia de red por ti.
make app # compila macos/Roamr.app (Swift, no necesita Xcode)
make install-app # compila e instala en /Applications
macOS necesita permiso de Ubicación para leer los detalles WiFi (se concede al
helper integrado en el primer uso); no se requiere una cuenta de pago de Apple
para compilar o ejecutar roamr (consulta ADR-0002). La dependencia macwifi
requiere Go 1.26+ y está orientada a Apple Silicon; macOS no informa del
modo PHY, por lo que esa señal de puntuación se omite allí.
go build ./... # compila todo
go test ./... # ejecuta las pruebas (no se necesita hardware WiFi)
go vet ./...
MIT. Consulta LICENSE.
| Comando | Hace |
|---|
roamr | recomienda la mejor red conocida aquí (por defecto) |
roamr current | diagnostica la red en la que estás (incl. latencia/jitter) |
roamr list | lista las redes conocidas y sus puntuaciones |
roamr watch | muestrea continuamente; sugiere cambiar solo cuando una es duraderamente mejor |
roamr speedtest | mide el rendimiento real de descarga de la red en la que estás |
| SO | Proveedor | Estado |
|---|
| macOS | helper CoreWLAN firmado mediante macwifi (ADR-0002) | funcionando (Apple Silicon, macOS 13+) |
| Windows | API WLAN nativa (wlanapi.dll, ADR-0004) | funcionando (verificado en dispositivo; requiere Ubicación activada) |
| Linux | nmcli (NetworkManager) | implementado (probado con fixtures; pendiente de verificación en dispositivo) |