Tareas Cron de Clawdbot

Programa tareas automatizadas con las tareas cron del asistente de IA Clawdbot. Aprende a configurar mensajes recurrentes, informes y flujos de trabajo automatizados.

Descripción general de las tareas Cron de Clawdbot

Clawdbot admite tareas programadas utilizando sintaxis estilo cron. Las tareas cron permiten mensajes automatizados, informes periódicos, verificaciones de estado y flujos de trabajo recurrentes.

Configuración

Tarea Cron básica

{
  "cron": {
    "jobs": [
      {
        "id": "daily-summary",
        "schedule": "0 9 * * *",
        "action": "send_message",
        "target": {
          "channel": "whatsapp",
          "peer": "+15551234567"
        },
        "message": "Good morning! Here's your daily summary."
      }
    ]
  }
}

Sintaxis Cron

CampoValoresDescripción
Minuto0-59Minuto de la hora
Hora0-23Hora del día
Día1-31Día del mes
Mes1-12Mes del año
Día de la semana0-6Día de la semana (0=Domingo)

Programaciones comunes

ProgramaciónExpresión Cron
Cada hora0 * * * *
Diario a las 9am0 9 * * *
Semanal lunes0 9 * * 1
Mensual día 10 9 1 * *

Tipos de tareas

Tareas de mensajes

Enviar mensajes programados:

{
  "id": "reminder",
  "schedule": "0 8 * * 1-5",
  "action": "send_message",
  "target": {
    "channel": "telegram",
    "peer": "123456789"
  },
  "message": "Start of workday reminder!"
}

Tareas de agente

Ejecutar tareas de agente:

{
  "id": "daily-report",
  "schedule": "0 18 * * *",
  "action": "run_agent",
  "agentId": "reporter",
  "prompt": "Generate today's activity report"
}

Tareas Webhook

Activar webhooks:

{
  "id": "health-check",
  "schedule": "*/5 * * * *",
  "action": "webhook",
  "url": "https://api.example.com/health",
  "method": "POST"
}

Manejo de sesiones

Claves de sesión Cron

Las tareas cron utilizan sesiones dedicadas:

cron:<job.id>

Aislamiento de sesiones

  • Cada tarea tiene su propia sesión
  • El historial persiste entre ejecuciones
  • El contexto se mantiene

Gestión de tareas

Comandos CLI

# Listar tareas cron
clawdbot cron list

# Agregar una tarea
clawdbot cron add --id daily --schedule "0 9 * * *" --action send_message

# Eliminar una tarea
clawdbot cron remove daily

# Ejecutar tarea inmediatamente
clawdbot cron run daily

Estado de la tarea

EstadoDescripción
activeLa tarea está programada
pausedLa tarea está pausada
runningEjecutándose actualmente
failedLa última ejecución falló

Manejo de errores

Política de reintentos

{
  "cron": {
    "retry": {
      "maxAttempts": 3,
      "backoff": "exponential",
      "initialDelay": 1000
    }
  }
}

Notificaciones de fallo

{
  "cron": {
    "notifications": {
      "onFailure": {
        "channel": "telegram",
        "peer": "admin_id"
      }
    }
  }
}

Zona horaria

Configuración

{
  "cron": {
    "timezone": "Asia/Shanghai"
  }
}

Comportamiento predeterminado

  • Usa la zona horaria del sistema si no se especifica
  • Todas las programaciones se interpretan en la zona horaria configurada

Ejemplos

Recordatorio de standup diario

{
  "id": "standup",
  "schedule": "0 9 * * 1-5",
  "action": "send_message",
  "target": {
    "channel": "discord",
    "peer": { "kind": "group", "id": "standup-channel" }
  },
  "message": "Time for daily standup! What did you work on yesterday?"
}

Informe semanal

{
  "id": "weekly-report",
  "schedule": "0 17 * * 5",
  "action": "run_agent",
  "agentId": "main",
  "prompt": "Generate weekly summary report and send to team channel"
}

Próximos pasos