Lección 19 de 27

Tareas programadas con cron

OpenClaw tiene un sistema de cron jobs integrado que permite programar tareas automaticas. Puedes configurar que tu agente te envie un resumen de noticias cada manana, monitoree precios, haga backups o ejecute cualquier tarea a horarios definidos.

Definir tareas programadas

Las tareas se definen en config.yaml en la seccion cron.

Cron jobs
# ~/.openclaw/config.yaml
cron:
  enabled: true
  jobs:
    - name: "resumen_matutino"
      schedule: "0 8 * * *"  # Cada dia a las 8:00 AM
      prompt: "Lee mis emails no leidos, revisa las noticias de
tecnologia y dame un resumen de 5 puntos. Envialo por Telegram."
      channel: telegram

    - name: "monitor_dolar"
      schedule: "0 */2 * * *"  # Cada 2 horas
      prompt: "Consulta el precio del dolar blue. Si subio mas
de 2% desde la ultima consulta, avisame por WhatsApp."
      channel: whatsapp

    - name: "backup_notas"
      schedule: "0 22 * * 5"  # Viernes a las 10 PM
      prompt: "Comprime todos los archivos en ~/Documents/notas/
y guardalos en ~/Backups/ con la fecha de hoy."

Formato cron

El formato cron tiene 5 campos: minuto (0-59), hora (0-23), dia del mes (1-31), mes (1-12), dia de la semana (0-6, domingo=0). Ejemplos: "0 8 * * *" = cada dia a las 8am, "*/30 * * * *" = cada 30 minutos, "0 9 * * 1-5" = lunes a viernes a las 9am.

Crear un resumen matutino

  1. 1.Activar el sistema de cron
  2. 2.Agregar un job de resumen matutino
  3. 3.Verificar que el job se creo correctamente
  4. 4.Ejecutar manualmente para probar
  5. 5.Esperar a la ejecucion automatica
Comandos
openclaw config set cron.enabled true
openclaw cron add --name "resumen" --schedule "0 8 * * *" --prompt "Resume mis emails y noticias de hoy" --channel telegram
openclaw cron list
openclaw cron run resumen
openclaw cron logs resumen
"0 8 * * *" = Diario a las 8am "0 8 * * 1-5" = Lunes a viernes a las 8am "*/30 * * * *" = Cada 30 minutos "0 */4 * * *" = Cada 4 horas "0 22 * * 5" = Viernes a las 10pm "0 0 1 * *" = Primer dia de cada mes a medianoche
Probar antes de programar

Siempre prueba tu prompt con openclaw cron run nombre antes de dejarlo en automatico. Asi verificas que produce el resultado esperado y no genera errores.

Que expresion cron ejecuta una tarea de lunes a viernes a las 9am?

Ejercicio de código

Escribe una configuracion cron que monitoree precios de un producto cada 4 horas y te avise por Telegram si baja de cierto precio

Código inicial
# Agrega un cron job
openclaw cron add \
  --name "___" \
  --schedule "___" \
  --prompt "___" \
  --channel ___
Ver pista

Cada 4 horas es "0 */4 * * *". El prompt debe indicar que producto monitorear y que precio es el limite.

Ver solución
Solución
openclaw cron add \
  --name "monitor_precio" \
  --schedule "0 */4 * * *" \
  --prompt "Busca el precio actual de PlayStation 5 en MercadoLibre Argentina. Si alguna oferta esta por debajo de 500.000 pesos, enviame los links." \
  --channel telegram

Puntos clave

  • Cron jobs permiten tareas automaticas en horarios definidos
  • Formato: minuto hora dia_mes mes dia_semana
  • Casos comunes: resumenes, monitoreo de precios, backups
  • openclaw cron add para crear, run para probar, list para ver
  • Siempre probar manualmente antes de dejar en automatico

Quiz Generado por IA

Evalua tu comprension de esta leccion con preguntas personalizadas.