executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
plan-tour-routePlanificar una ruta turística multi-parada con optimización de puntos intermedios, estimación de tiempos de conducción/caminata, y descubrimiento de POI a lo largo de la ruta usando datos de OSM. Cubre geocodificación, ordenamiento basado en vecino más cercano y TSP, cálculo de matriz de tiempo/distancia, y generación de itinerario con puntos de interés. Us…
Independent GitHub snapshot · Automated classification · Original documentation governs
Planificar y optimizar una ruta turística multi-parada con estimaciones de tiempo, cálculos de distancia y puntos de interés a lo largo del camino.
Recopilar y estructurar todas las paradas que el recorrido debe incluir.
Waypoint Schema:
┌──────────┬────────────────────────────────────────────┐
│ Field │ Description │
├──────────┼────────────────────────────────────────────┤
│ name │ Human-readable label for the stop │
│ address │ Street address or place name │
│ lat/lon │ Coordinates (if known; otherwise geocode) │
│ duration │ Time to spend at this stop (minutes) │
│ priority │ Must-visit vs. nice-to-have │
│ hours │ Opening/closing times (if applicable) │
│ notes │ Parking, accessibility, booking required │
└──────────┴────────────────────────────────────────────┘
Separar los puntos intermedios de orden fijo (ej., hotel al inicio y fin) de los puntos intermedios reordenables.
Esperado: Una lista estructurada de todos los puntos intermedios con al menos un nombre y ya sea una dirección o coordenadas para cada uno.
En caso de fallo: Si un punto intermedio es ambiguo (ej., "el castillo"), usar WebSearch para resolverlo a una ubicación específica. Si se necesitan coordenadas pero solo hay un nombre disponible, diferir al Paso 2 para geocodificación.
Convertir todos los puntos intermedios a coordenadas de latitud/longitud y verificar que son alcanzables.
Geocoding Sources (in preference order):
1. Nominatim (OpenStreetMap) - free, no key required
https://nominatim.openstreetmap.org/search?q=QUERY&format=json
2. Overpass API - for POI-type queries
https://overpass-api.de/api/interpreter
3. Manual coordinates from mapping services
Para cada punto intermedio:
Esperado: Cada punto intermedio tiene coordenadas válidas de latitud/longitud, y todos los puntos caen dentro de una región geográfica plausible (sin valores atípicos en continentes incorrectos).
En caso de fallo: Si la geocodificación no devuelve resultados, intentar grafías alternativas, agregar calificadores de región/país, o buscar puntos de referencia cercanos. Si un punto intermedio está en un área remota con pobre cobertura de OSM, usar WebSearch para encontrar coordenadas de blogs de viaje o sitios de turismo.
Determinar la secuencia de visitas que minimiza el tiempo total de viaje o la distancia.
Optimization Strategies:
┌─────────────────────┬────────────────────────────────────────┐
│ Strategy │ When to use │
├─────────────────────┼────────────────────────────────────────┤
│ Fixed order │ Stops must be visited in given sequence│
│ Nearest neighbor │ Quick approximation for 5-15 stops │
│ TSP solver │ Optimal ordering for any number │
│ Time-window aware │ Stops have opening hours constraints │
│ Cluster-then-route │ Stops span multiple days/regions │
└─────────────────────┴────────────────────────────────────────┘
Para la heurística de vecino más cercano:
Para recorridos de varios días, agrupar puntos intermedios por proximidad geográfica primero, luego optimizar dentro de cada día.
Esperado: Una secuencia ordenada de puntos intermedios que produce una ruta sin retrocesos excesivos. La distancia total debería estar dentro del 20% del óptimo teórico para menos de 10 paradas.
En caso de fallo: Si el resultado del vecino más cercano tiene retrocesos obvios (paradas posteriores están más cerca de paradas anteriores), intentar invertir la ruta o usar una mejora 2-opt: intercambiar pares de aristas y mantener el intercambio si acorta la ruta. Para restricciones de ventanas de tiempo, verificar que los tiempos de llegada a cada parada caigan dentro de los horarios de apertura.
Calcular el tiempo de viaje y la distancia para cada tramo de la ruta.
Time Estimation Methods:
┌──────────────┬────────────┬────────────────────────────────┐
│ Mode │ Avg Speed │ Notes │
├──────────────┼────────────┼────────────────────────────────┤
│ Highway │ 100 km/h │ Varies by country/road type │
│ Rural road │ 60 km/h │ Add 20% for winding roads │
│ City driving │ 30 km/h │ Add time for parking │
│ Walking │ 4.5 km/h │ Flat terrain; reduce for hills │
│ Cycling │ 15 km/h │ Touring pace with luggage │
│ Hiking │ 3-4 km/h │ Use Munter formula for accuracy│
└──────────────┴────────────┴────────────────────────────────┘
Para cada par consecutivo de puntos intermedios:
Esperado: Una matriz de tiempo/distancia para todos los tramos, con un tiempo acumulado que tiene en cuenta tanto el viaje como el tiempo de permanencia en cada parada. La duración total del recorrido debería ser realista (no exceder las horas de luz disponibles para recorridos a pie).
En caso de fallo: Si los tiempos estimados parecen poco realistas (ej., 2 horas para un recorrido urbano de 10 km), verificar si el factor de desvío es apropiado. Para carreteras de montaña, aumentar el factor de desvío a 1.6-2.0. Para transporte público, usar WebSearch para consultar horarios reales en lugar de estimar.
Compilar la ruta optimizada en un itinerario completo con puntos de interés descubiertos.
POI Discovery (Overpass API query pattern):
[out:json];
(
node["tourism"="viewpoint"](around:RADIUS,LAT,LON);
node["amenity"="restaurant"](around:RADIUS,LAT,LON);
node["amenity"="cafe"](around:RADIUS,LAT,LON);
);
out body;
Recommended search radius:
- Along route corridor: 500 m for walking, 2 km for driving
- At waypoints: 1 km radius
Construir el documento de itinerario:
Esperado: Un documento de itinerario completo con horarios realistas, sugerencias de POI en cada parada e información logística práctica.
En caso de fallo: Si las consultas de POI devuelven demasiados resultados, filtrar por calificación o relevancia. Si el itinerario excede el tiempo disponible, marcar las paradas de menor prioridad como opcionales o dividir en días adicionales. Si no se encuentran POIs en áreas remotas, anotarlo y sugerir que el viajero investigue localmente al llegar.
create-spatial-visualization — renderizar la ruta planificada en un mapa interactivogenerate-tour-report — compilar el itinerario en un informe formateado de Quartoplan-hiking-tour — planificación especializada para segmentos de senderismo dentro de un recorridoassess-trail-conditions — verificar condiciones para cualquier tramo de caminata/senderismo