Referencia de la CLI

Todos los comandos de kilobat, la salida JSON y los scripts.

Comandos

Supervisar

kilobat status [--watch] [--json]Tráfico por app en directo y límite de datos de la sesión; una instantánea JSON, o un flujo JSON Lines con --watch
kilobat report [--csv|--json] [--summary] [--days 1…365]Historial de uso registrado en local, o totales diarios y apps principales; el CSV tiene una fila por app
kilobat report compare --total 40GB [--unit GB|GiB] [--direction both|download|upload] (--from DATE --to DATE | --period last-month) [--network NAME] [--json|--csv]La cifra de un router o proveedor junto a lo que Kilobat registró en este Mac para el mismo periodo, en la misma unidad, con las horas registradas, cada hueco y los motivos probables de la diferencia
kilobat health-history [--hours 1…720] [--json]Comprobaciones de router, internet, jitter y DNS que la app registró a lo largo del tiempo
kilobat proxy [routes [--app name] | test] [--json]Apps de proxy, el proxy del sistema y sus problemas; qué regla y qué nodo usó cada app; lo rápido que responde cada nodo
kilobat vpn [--json]La VPN, si DNS o IPv6 se la saltan, y el estado del interruptor de emergencia de la VPN
kilobat vpn leaks [--json]Prueba de fugas: si DNS, IPv6 o UDP (lo que usa WebRTC) se saltan la VPN, cada uno con el ajuste que lo corrige; consulta a bash.ws, Cloudflare y un servidor STUN
kilobat calls [--limit 1…200] [--json]Después de cada llamada: cuántas veces se congeló y por qué, a partir de los informes que escribe la app
kilobat remote [--limit 1…200] [--kind ssh|mosh|desktop] [--json]Después de cada sesión de SSH, Mosh o escritorio remoto: por qué hubo retraso al escribir o se congeló la pantalla, y cuándo ayudaría Mosh
kilobat stream [status|check|reports] [--json]OBS mediante su WebSocket local: si está transmitiendo y pierde fotogramas, una comprobación previa de tu subida frente a su tasa de bits más un 30 % (check [--bitrate <kbps>] [--measure|--no-measure]) y los informes de cada transmisión (reports [--limit 1…200])
kilobat cloud-gaming [status|reports] [--limit 1…200] [--json]GeForce NOW, Xbox Cloud Gaming, Boosteroid, Amazon Luna y Shadow: la sesión actual (ping, jitter, pérdida, tasa de bits, datos y lo que interfiere) y el informe posterior, con los cortes y sus causas
kilobat overlay [--port 7171] [--target internet|router|cs2:fra|host]Un overlay de ping en directo para OBS y otras apps de streaming, servido en localhost hasta Ctrl-C; una región de juego como cs2:fra hace ping a ese centro de datos
kilobat support-report [--hours 1…168] [--host h] [--include-sites] [--markdown|--html] [--output f]Un informe para tu proveedor o tu soporte informático: hallazgos, latencia, cortes y pruebas de velocidad, sin el nombre de tu red ni las direcciones locales
kilobat plan [--days 7…90] [--json]Pruebas de velocidad frente al plan que pagas en cada red: la mediana, las noches junto al resto del día y con qué frecuencia una prueba quedó por debajo de la mitad
kilobat credit [--provider id] [--price n] [--month this|last|YYYY-MM] [--draft] [--json]Los cortes del mes más allá de tu router frente a la norma de compensación publicada por tu proveedor, a qué podrían dar derecho y una reclamación redactada; <code>credit providers</code> enumera las normas
kilobat week [--weeks-ago 0…12] [--json]El resumen semanal: los cortes, las llamadas congeladas, el router, los bloqueos y los datos en redes con límite más destacados de la semana pasada, comparados con la semana anterior
kilobat router [--all] [--json]Revisión del router: sus respuestas, pérdidas y cortes habituales frente a los de los últimos tres días, los reinicios y si sirvieron, a partir de las comprobaciones que guarda la app
kilobat router connect [fritzbox|unifi|mikrotik|openwrt] [--json]Pasos para configurar la conexión Pro de la app al router; nunca recibe credenciales en la línea de comandos
kilobat router devices [--json]Clientes del router conectado, velocidades medidas y totales de hoy mediante la app; los contadores de toda la casa de FRITZ!Box y otros no indican la parte de un solo dispositivo; los contadores de clientes pueden incluir tráfico LAN
kilobat router disconnect [--json]Olvida el router de esta red; la app elimina su credencial del Llavero o lo hace en el próximo inicio
kilobat service-speed [--all] [--test <service>] [--list] [--json]Tus descargas de GitHub, iCloud, Steam, npm y otros servicios comparadas con la línea, y cuándo la ruta de tu proveedor a uno de ellos es lenta; <code>--test</code> descarga ahora hasta 25 MB de uno
kilobat hotspot [--all] [--carrier <id>] [--detect] [--json]En una zona Wi-Fi de teléfono: si todas las descargas se detienen en un límite de conexión compartida del operador, las mediciones y las reglas publicadas por el operador; <code>hotspot carriers</code> las enumera
kilobat networks [forget <name>]Redes vistas, con el perfil, el límite de datos y el coste de datos recordados para cada una
kilobat networks cost <metered|unmetered|automatic> [name]Trata esta red, o una con nombre, como con límite o sin límite, o vuelve a seguir a macOS
kilobat bandwidth [app] [hour|day|week|month] [--back N] [--json]Bytes enviados y recibidos por una app durante una hora, día, semana o mes, con el pico; --back retrocede a periodos anteriores
kilobat access-policy <bundle-id> [--json]Las conexiones que declara el desarrollador de una app en su Internet Access Policy, y por qué

Diagnosticar

kilobat diagnose [--json]Comprobaciones de Wi-Fi, router, internet, DNS y portal cautivo, con consejos
kilobat radar [--watch] [--json]Puntuación de señal y buscador del mejor sitio
kilobat scan [--json]Redes cercanas, canales, anchos y seguridad
kilobat channels [--json]Saturación por canal y el canal menos saturado
kilobat speedtest [--json] [--budget-mb 1…80] [--parallel]Velocidad con Cloudflare, latencia con carga y veredictos para llamadas y streaming, 80 MB como máximo. Una conexión de forma predeterminada; --parallel abre cuatro, como hacen la mayoría de webs de pruebas de velocidad
kilobat speed-compare [<test> <test>] [--json]Qué cambió entre dos pruebas de velocidad guardadas: red, hora, servidor, conexiones, banda y señal Wi-Fi, VPN, otro tráfico
kilobat ip [--public] [--json]Por dónde sale el tráfico: la interfaz y cualquier VPN, leídas en este Mac; --public además pide a Cloudflare tu IP pública y el país en el que está registrada
kilobat portal [open] [--json]Páginas de inicio de sesión del Wi-Fi: una comprobación al momento (abierta, página de inicio de sesión o sin conexión, con la dirección de la página y los valores de la consulta ocultos), si esta red pide iniciar sesión, te ha cerrado la sesión o cuánto queda, y la duración habitual de la sesión en cada red; open abre la página en tu navegador
kilobat stutter [--seconds 10…60] [--target router|internet|<host>] [--json]Hace ping cada 50 ms para encontrar los picos breves de latencia que las pruebas de velocidad no ven, cuándo ocurren y si se repiten
kilobat starlink [--hours 1…720] [--json]Una antena Starlink en esta red, leída localmente: estado, ping a la estación terrestre, avisos, el mapa del cielo y hacia dónde está tapada, y cortes divididos entre tu instalación, la red de Starlink y los reinicios de la antena
kilobat games [--game <game> | --all | --match] [--json]Lista los juegos a los que Kilobat hace ping y a los que no puede, con el motivo; con --game, hace cinco pings a cada centro de datos de ese juego (relés de Valve, servidores de ping de Epic o las regiones de AWS y Azure donde se aloja) y nombra el más cercano; con --match, encuentra el servidor de la partida que estás jugando y le hace ping, en cualquier juego, listo para el overlay para streaming
kilobat airdrop [status|everyone|contacts|off] [--json]Visibilidad de AirDrop, el enlace de AirDrop (AWDL) y qué lo usa; cambiar la visibilidad abre Ajustes del Sistema
kilobat bluetooth [--json]Dispositivos Bluetooth y si comparten los 2.4 GHz con tu Wi-Fi
kilobat bluetooth audio [--json]Mientras suenan unos AirPods u otros auriculares Bluetooth: qué puede provocar chasquidos (2.4 GHz, AirDrop, una descarga grande, una señal débil) y qué cambiar, por orden
kilobat local [check] [--quick] [--json]¿Puedo transmitir o imprimir aquí? Los Chromecast, receptores AirPlay e impresoras que responden; si la red puede aislar dispositivos (nunca se confirma solo con la detección); la red Wi-Fi propia de una impresora o cámara; y qué causa cortes al transmitir
kilobat dns [automatic|cloudflare|google|quad9|flush]Consulta o cambia el DNS, o vacía la caché
kilobat dns fastest [--all] [--json]El DNS más rápido en esta red, según las pruebas discretas de la app con Cloudflare, Quad9 y Google, quién opera cada uno y dónde, y sus consultas respondidas durante 14 días
kilobat dns auto on|off [--network <name>]Pro: cambiar al DNS más rápido al conectarte, en todas las redes o en una
kilobat dns exclude|include <resolver>No medir ni elegir nunca un resolutor, o añadir uno propio por su dirección IP
kilobat dns fallback <resolver>|offEl resolvedor al que cambiar cuando falla el más rápido, antes del propio de la red

Wi-Fi

kilobat wifi [status]Red actual, señal, canal y ancho, velocidad del enlace, estándar Wi-Fi, seguridad y potencia de transmisión
kilobat wifi on|off|restart|disconnectControla el encendido del Wi-Fi y la conexión
kilobat wifi join <name> [--password-stdin]Se conecta a una red guardada o a una nueva
kilobat wifi knownRedes guardadas por orden de preferencia
kilobat wifi password|share <name>Muestra una contraseña guardada, o un código QR para escanear con un teléfono
kilobat wifi nodes [name <node> <name>] [--json]Nodos mesh o puntos de acceso de esta red, el nodo al que está conectado el Mac y si hay otro mucho más cercano al alcance; ponle nombre, por ejemplo Oficina
kilobat wifi reconnect [--json]Cambiar al nodo más cercano e indicar dónde quedó el Mac
kilobat low-latency on [--for 15m|1h|2h] [--until-quit <app>]Pausa AirDrop y AWDL durante llamadas y partidas: 15 minutos de forma predeterminada, hasta 4 horas, o hasta que se cierre una app
kilobat low-latency offRestaura AirDrop y AWDL, también si la pausa se inició en la app

Activo y agentes

kilobat awake [--display]Mantiene el Mac activo hasta pulsar Ctrl-C; al cerrar la tapa entra en reposo igualmente, salvo que añadas --lid-closed
kilobat awake --lid-closed [--for 2h|--until-quiet|-- <command>]Sigue funcionando también con la tapa cerrada, 8 horas como máximo, mediante el asistente de energía de la app; requiere «Permitir funcionar con la tapa cerrada» en Ajustes
kilobat awake --for 90m|2h|45sMantiene el Mac activo durante un rato
kilobat awake --until-quiet [--app <id>] [--quiet 1…60]Mantiene el Mac activo hasta que las descargas o una app se queden en silencio, por debajo de 16 KB/s durante 3 minutos de forma predeterminada
kilobat awake -- <command> [args]Mantiene el Mac activo mientras se ejecuta un comando; luego informa de los datos que movieron sus procesos y sale con su código de estado
kilobat awake --while-frontmost <app> [--display] [--for 2h]Mantiene el Mac activo solo mientras esa app esté en primer plano, para leer o presentar. Al cambiar a otra, el Mac puede entrar en reposo; termina cuando la app se cierra, con un 20 % de batería o tras --for. --display también mantiene la pantalla encendida
kilobat settings awake-on-power on|offLa app se mantiene activa siempre que el adaptador de corriente esté conectado y deja que el Mac entre en reposo de nuevo cuando lo desconectas
kilobat settings keep-screen-on on|offMantiene también la pantalla encendida para todo lo que la app mantiene activo: temporizadores, descargas, agentes, la app en primer plano y el adaptador conectado
kilobat sessions [--days N] [--json]Sesiones activas y ejecuciones de agentes de IA que registró la app, con los datos usados y los cambios de red
kilobat agent-log [--all] [--since 2h|3d|date] [--agent claude] [--flagged] [--json]Cada host con el que contactaron un agente de IA y los comandos que inició, con bytes y marcas: la última sesión, o la del propio agente si lo ejecuta él. Lo registra la app con Pro
kilobat history forget <host> [--subdomains] [--json]Elimina un host de los intentos bloqueados, el registro de red de agentes, los destinos de ejecuciones de agentes y la memoria de notificaciones de Protección
kilobat history clear --hour|--today|--all [--json]Borra esos historiales de hosts de la última hora, desde medianoche o por completo; la actividad futura puede volver a registrarse
kilobat agent-log --watch [--agent claude] [--flagged] [--json]Registra lo mismo en directo en este terminal, sin la app; no se guarda nada
kilobat protect [status|on|off|update] [--threats|--trackers|--agents] [--json]Protección: bloquea hosts conocidos de malware, phishing y estafas (Pro), rastreadores en apps (gratis, desactivado por omisión) y el guardián de agentes (Pro); update descarga las listas ahora
kilobat protect check <host> [--json]Si un host está en una lista de amenazas o de rastreadores, en cuál, y si Kilobat lo bloquea; sale con 1 si lo bloquea
kilobat protect allow|unallow <host>Deja pasar un sitio y sus subdominios por todas las listas de Protección, o lo deshace
kilobat agent-event <start|working|waiting|done|failed> [--agent name] [--stdin-json|--json-arg]Para los hooks de un agente: avisa a la app de que una ejecución empezó, te está esperando o terminó. Silencioso, siempre sale con 0
kilobat why <url|host> [--app <id>] [--proxy <url>] [--context container|vm|remote|provider] [--failed-at <time>] [--error <text>] [--json]Encuentra la capa que impide una conexión: red e interfaz, proxy y proxy propio de la app, DNS, reglas de Kilobat, IPv4 e IPv6, TLS, el servidor y cada redirección, y si esta red bloquea la conexión o el servicio rechaza tu región. Solicita la URL exacta; la salida oculta los valores de consulta. También kilobat doctor <url|host>
kilobat down [service|host…] [--all] [--list] [--json]¿Es el servicio o soy yo? Lo que informan ahora las páginas públicas de estado de Slack, Zoom, GitHub, Claude, OpenAI y unos setenta servicios más, y si cada uno se conecta desde aquí: bloqueado en esta red o no disponible en tu región; sin indicar un servicio, comprueba los de las apps activas en este Mac
kilobat explain <process|host…> [--process name --host name] [--json]Qué es un proceso o host de macOS, cuánto tráfico es normal, si es seguro bloquearlo y qué deja de funcionar, según la base de datos de Kilobat en este Mac. Los datos que tiene Kilobat sobre los que no conoce
kilobat conditions [--json]Con límite, Modo de datos reducidos, VPN, latencia, batería y temperatura, si se puede cerrar la tapa, con consejos para ejecuciones largas

Controlar

kilobat profile [travel|work|unrestricted]Lista o selecciona un perfil
kilobat allow|block <bundle-id> [--minutes 1…1440] [--profile name]Guarda una regla de app, opcionalmente temporal o para otro perfil
kilobat reset <bundle-id> [--profile name]Quita la regla de una app para que siga la opción predeterminada
kilobat rules [--profile name] [--json]Las reglas de un perfil
kilobat limit [GB] [--cycle session|daily|weekly|monthly] [--reset-day N] [--alert 50,80,100]Consulta o fija el límite de datos de esta red, cuándo se reinicia y cuándo avisa
kilobat quota <bundle-id> <GB> [--upload] [--all-networks]Limita los datos de una app por ciclo; quota <bundle-id> --remove la quita
kilobat quota --list [--json]Cuotas de apps con lo que ha usado cada una en este ciclo
kilobat pack [status] [--json]Paquetes de datos como una eSIM de viaje, con lo que queda y el día en que se agota cada uno al ritmo de los últimos tres días
kilobat pack add <GB> <days|YYYY-MM-DD> [--network <name>] [--name <label>] [--start YYYY-MM-DD]Añade un paquete de datos en esta red, en redes que Kilobat ha visto o en cualquier red cuyo nombre contenga un texto
kilobat pack correct <GB-left> [--pack <name>]Introduce lo que indica la app del operador que queda, pues Kilobat solo cuenta este Mac
kilobat pack end [--pack <name>]Finaliza ahora un paquete de datos; permanece en el historial
kilobat updaters [--json]Actualizadores en pausa en redes con límite, los bytes de actualización que aun así pasaron en esta red y las apps que se actualizan desde dentro
kilobat updaters on|offPausa asistentes de actualización como Google Updater y Actualización de software de macOS mientras la red tiene límite (activado de forma predeterminada); las apps siguen funcionando
kilobat settings kill-switch on|offPro: bloquea las conexiones nuevas cuando la VPN está caída; kill-switch-lan on|off mantiene accesible la red local mientras tanto
kilobat uploads [--json]Apps que están subiendo mucho ahora mismo, con la velocidad, lo que llevan enviado y el tiempo restante cuando se conoce el total, y las subidas retenidas para más tarde
kilobat uploads hold <app> [--until unmetered|fast|fast:<Mbps>|2h|manual]Retiene la subida de una app hasta una red sin límite o más rápida, durante un rato o hasta que la reanudes (Pro); uploads resume <app> la deja ir
kilobat settings [name [value] ]Consulta o cambia ajustes como new-apps (allow, ask o block), apple-software, auto-travel, pause-updaters, kill-switch, awake-on-power, public-ip (desactivado de forma predeterminada), speed-streams, alerts y menu-bar
kilobat verdict <host> [--app <id>] [--port N] [--incoming] [--json]Por qué Kilobat permite o bloquea una conexión: todas las reglas que coinciden, en el orden en que las comprueba el filtro, la que decide y el comando que cambia cada una; verdict --app <id> muestra las reglas de una app
kilobat verdict --blocked [1…50] [--json]Las reglas detrás de los últimos intentos bloqueados, tal como las registró el filtro al bloquearlos
kilobat approvals [--json]Apps que esperan aprobación mientras se pregunta por las apps nuevas, con firmante y destinos
kilobat approve|deny <app-id> [--minutes 1…1440]Bloquea al instante una app en espera, o pide a la persona que confirme en Kilobat si la permite
kilobat block-host|unblock-host <domain|IP|CIDR> [--app <id>]Bloquea un dominio (subdominios incluidos, se admite *.example.com), una IP o un rango para todas las apps o para una sola
kilobat quit <PID> [--force]Cierra un proceso

Configurar

kilobat openAbre la app para Mac
kilobat doctorComprueba la app, el filtro de red y la supervisión
kilobat completion [zsh|bash|fish]Imprime un script de autocompletado para el shell
kilobat mcpEjecuta el servidor MCP para agentes de IA por stdio
kilobat updateActualiza una instalación de Homebrew

Avanzado

kilobat destinations [--pid PID] [--json]Sockets de procesos observados
kilobat devices [--all] [--bonjour] [--json]Dispositivos de tu red, cada uno nuevo, conocido, desconocido o ignorado, con su tipo y el grado de certeza de Kilobat; --all añade los que no están ahora
kilobat devices name <MAC> <name>Pone nombre a un dispositivo
kilobat devices mark <MAC> mine|unknown|ignoredResponde por un dispositivo nuevo, como en el aviso de la app
kilobat devices type <MAC> <type>|autoDefine el tipo de un dispositivo (camera, doorbell, tv, speaker, printer, plug, hub, console, phone, computer, drone, router, nas…); auto vuelve a la identificación de Kilobat
kilobat household [--json]Mac enlazados en la app y lo que mueve cada uno ahora; el enlace solo se hace en la app
kilobat smarthome [--json]Redes Thread y routers de borde, dispositivos Matter y HomeKit, y si la red está preparada para Matter; solo lectura
kilobat trace <host> [--rounds 2…10] [--json]Sondeo de ruta limitado a 12 saltos; --rounds traza varias veces y muestra la pérdida y el retardo de cada salto
kilobat route-history --host <host> [--json]Cada traza guardada hacia un host, salto a salto como mtr: pérdida, mejor, media, peor, cambios de ruta y dónde empieza el retardo
kilobat http-check <URL> [--json]Tiempos de DNS, conexión, TLS y primer byte
kilobat dns-benchmarkTiempos de los resolvedores
kilobat lan-test <server> [--reverse] [--json]Prueba iperf3 de cinco segundos contra un dispositivo que ejecute iperf3 -s; requiere iperf3, que Kilobat nunca instala
kilobat interfaces [--json]Contadores físicos y de VPN, por separado
kilobat capture <interface> <file.pcap>Captura de paquetes limitada
kilobat connection-rule allow|block <app> <host> [port]Guarda una regla de destino
kilobat blocklist status|import <path>|clearGestiona una lista de bloqueo de dominios
kilobat wake <MAC-address>Envía un paquete Wake-on-LAN
kilobat spots [save <name>|remove <id>]Lugares Wi-Fi guardados
kilobat outages / speed-history [--days N]Cortes y pruebas de velocidad registrados, en JSON

Scripts y JSON

La salida cambia a JSON automáticamente al usar tuberías, así los scripts nunca tienen que interpretar el formato para personas. Pasa --json para indicarlo de forma explícita.

kilobat diagnose | jq .health            # "good", "degraded", "poor" o "unknown"
kilobat status --watch --json             # un objeto JSON por línea, cada segundo
kilobat report --summary --days 7 --json  # totales diarios y apps con mayor consumo
kilobat report compare --total 40GB --period last-month --csv  # junto a la cifra de tu proveedor

Define NO_COLOR para desactivar los colores. Los cambios de DNS requieren la aprobación de un administrador.