Install
openclaw skills install redtransporteclCLI tool for managing local GTFS data, querying stops, routes, real-time predictions, and planning public transit trips in Chile's Red de Transporte system.
openclaw skills install redtransporteclred-transporte para consultar paraderos, recorridos, predicciones en tiempo real, GTFS local y utilidades geoespaciales de RED Chile.Esta skill esta enfocada exclusivamente en el uso de la CLI red-transporte.
pip install ".[all]"
red-transporte gtfs update
red-transporte [--json] [--verbose|-v] <comando> [opciones]
--json: imprime salida JSON cruda.--verbose o -v: activa logging en nivel debug.Ejemplo:
red-transporte --json stop PA433
red-transporte -v predict PA433
gtfsGestiona datos GTFS locales.
Subcomandos:
gtfs update [--force]
--force: fuerza re-descarga aunque exista version local.gtfs status
Ejemplos:
red-transporte gtfs update
red-transporte gtfs update --force
red-transporte --json gtfs status
stopObtiene informacion completa de un paradero.
Uso:
red-transporte stop <code>
Argumentos:
<code>: codigo del paradero (ejemplo: PA433).Ejemplos:
red-transporte stop PA433
red-transporte --json stop PA433
searchBusca paraderos por texto.
Uso:
red-transporte search <query> [--limit N]
Argumentos y opciones:
<query>: texto de busqueda.--limit: maximo de resultados (default: 10).Ejemplos:
red-transporte search "providencia"
red-transporte search "macul" --limit 5
nearbyLista paraderos cercanos a una coordenada.
Uso:
red-transporte nearby <lat> <lon> [--radius KM]
Argumentos y opciones:
<lat>: latitud (float).<lon>: longitud (float).--radius: radio en kilometros (default: 0.5).Ejemplos:
red-transporte nearby -33.4372 -70.6506
red-transporte nearby -33.4372 -70.6506 --radius 1.0
stationDevuelve la estacion de metro/tren mas cercana.
Uso:
red-transporte station <lat> <lon>
Argumentos:
<lat>: latitud (float).<lon>: longitud (float).Ejemplo:
red-transporte station -33.45 -70.65
routeMuestra informacion de un recorrido.
Uso:
red-transporte route <route_id>
Argumentos:
<route_id>: ID o nombre corto del recorrido (ejemplo: 506, D12).Ejemplos:
red-transporte route 506
red-transporte route D12
routesLista recorridos, opcionalmente filtrados por modo.
Uso:
red-transporte routes [--mode bus|metro|rail|tram]
Opciones:
--mode: filtra por modo de transporte.Ejemplos:
red-transporte routes
red-transporte routes --mode metro
red-transporte routes --mode bus
predictConsulta predicciones en tiempo real para un paradero.
Uso:
red-transporte predict <code>
Argumentos:
<code>: codigo del paradero.Ejemplos:
red-transporte predict PA433
red-transporte --json predict PA433
statsEntrega estadisticas globales del sistema.
Uso:
red-transporte stats
Ejemplo:
red-transporte --json stats
suggestSugiere recorridos entre dos puntos geograficos (basico, sin tiempos).
Uso:
red-transporte suggest <from_lat> <from_lon> <to_lat> <to_lon> [--radius KM]
Argumentos y opciones:
<from_lat>: latitud origen.<from_lon>: longitud origen.<to_lat>: latitud destino.<to_lon>: longitud destino.--radius: radio de busqueda en kilometros (default: 0.5).Ejemplos:
red-transporte suggest -33.4372 -70.6506 -33.4189 -70.6024
red-transporte suggest -33.4372 -70.6506 -33.4189 -70.6024 --radius 0.8
serverInicia el servidor HTTP de la API.
Uso:
red-transporte server
Salida esperada:
http://localhost:8000.http://localhost:8000/docs.red-transporte gtfs updatered-transporte gtfs statusstop, search, route, routespredictnearby, station, suggestEl endpoint /routing/plan usa el algoritmo RAPTOR para calcular rutas optimas de transporte publico entre dos coordenadas. Este endpoint solo esta disponible via la API HTTP (no via CLI).
GET /routing/plan
| Parametro | Tipo | Default | Descripcion |
|---|---|---|---|
from_lat | float | (requerido) | Latitud del origen |
from_lon | float | (requerido) | Longitud del origen |
to_lat | float | (requerido) | Latitud del destino |
to_lon | float | (requerido) | Longitud del destino |
departure_time | str | 08:00:00 | Hora de salida en formato HH:MM:SS |
day | str | L | Dia: L=laboral, S=sabado, D=domingo |
max_results | int | 3 | Maximo de alternativas (1-5) |
max_transfers | int | 2 | Maximo de transbordos (0-3) |
fare_type | str | normal | Tipo tarifa: normal, estudiante, adulto_mayor |
# Estacion Central a Puente Alto, laboral 09:00
curl "http://localhost:8000/routing/plan?from_lat=-33.4525&from_lon=-70.6783&to_lat=-33.586&to_lon=-70.576&departure_time=09:00:00&day=L"
# Plaza Italia a La Moneda, tarifa estudiante
curl "http://localhost:8000/routing/plan?from_lat=-33.4372&from_lon=-70.634&to_lat=-33.4422&to_lon=-70.6537&fare_type=estudiante"
# Sin transbordos (solo rutas directas)
curl "http://localhost:8000/routing/plan?from_lat=-33.4372&from_lon=-70.634&to_lat=-33.5195&to_lon=-70.598&max_transfers=0"
La respuesta contiene una lista de planes de viaje (plans), cada uno con:
total_time_secs / total_time_human: tiempo total del viajedeparture_time / arrival_time: hora de salida y llegadawalk_time_secs, ride_time_secs, wait_time_secs: desglose de tiempostransfers: numero de transbordostotal_walk_m: metros caminados en totalfare: tarifa calculada con desgloselegs: lista de tramos del viaje (caminar, bus, metro, etc.)summary: resumen legible del viajeCada leg tiene:
mode: walk, bus, metro, railroute_name: nombre del recorrido (ej: L1, 506, 210)board_stop_name / alight_stop_name: paradero de subida y bajadanum_stops: cantidad de paradasduration_secs: duracion del tramowait_secs: tiempo de espera antes de abordarwalk_distance_m: distancia caminada (solo para legs de caminata)RAPTOR (Round-Based Public Transit Optimized Router) busca rutas por rondas:
Solo devuelve una ronda si es estrictamente mas rapida que la anterior (Pareto-optimo). Ejemplo: si con 2 transbordos llegas en 1h09 pero sin transbordos en 1h20, ambas opciones se muestran.
El tiempo de espera se calcula como: headway/2 (promedio) + 30 segundos de penalizacion por abordaje. Los headways vienen de las frecuencias reales del GTFS por hora y dia.
El calculo de tarifa sigue las reglas oficiales de red.cl.
Tarifas base adulto normal:
| Modo | Punta (07-09 / 18-20) | Valle (09-18 / 20-20:44 / fds) | Baja (06-07 / 20:45-23) |
|---|---|---|---|
| Bus | $795 | $795 | $795 |
| Metro/Tren | $895 | $815 | $735 |
Reglas de transbordo:
Tarifas especiales:
| fare_type | Tarifa |
|---|---|
normal | segun tabla de arriba |
estudiante | $260 plana |
adulto_mayor | $390 plana |
Desglose en respuesta:
El campo fare.breakdown muestra por cada tramo de transporte:
mode: tipo de vehiculoroute: nombre del recorridofare_mode: tarifa teorica del modopaid: monto pagado en ese tramo ($0 si es transbordo incluido)red-transporte gtfs update.predict consulta fuentes en tiempo real y puede variar entre llamadas.--json./routing/plan), no via CLI.