Agendamento de Tarefas no OpenClaw: Guia Completo de Cron Jobs
Uma das funcionalidades mais poderosas do OpenClaw é seu sistema de agendamento integrado. Com cron jobs, você pode programar tarefas automáticas que rodam em horários específicos — desde lembretes simples até relatórios complexos enviados diretamente no seu WhatsApp ou Telegram.
Neste guia, vamos explorar tudo sobre o sistema de cron do OpenClaw: como criar jobs, configurar horários, entregar mensagens em canais específicos e automatizar sua rotina de verdade.
O Que São Cron Jobs?
Cron é o sistema de agendamento do OpenClaw. Pense nele como um despertador inteligente que, em vez de apenas tocar, pode executar ações complexas:
- Enviar resumos do seu email toda manhã
- Verificar o clima antes de você sair de casa
- Monitorar sites e alertar sobre problemas
- Lembrar de compromissos importantes
- Gerar relatórios semanais automaticamente
Diferente de um simples timer, o cron do OpenClaw:
- Persiste entre reinícios: Jobs ficam salvos mesmo se o servidor reiniciar
- Usa a IA para executar: O agente roda com todo seu contexto e ferramentas
- Entrega onde você quiser: Resultados podem ir para WhatsApp, Telegram, Discord ou ficar internos
Conceitos Fundamentais
Schedule (Quando Rodar)
Três tipos de agendamento:
- At (Horário específico): Uma única execução em data/hora exata
- Every (Intervalo): Repetição a cada X milissegundos
- Cron (Expressão cron): Padrão Unix para horários complexos
Session Target (Onde Rodar)
Dois modos de execução:
- Main: Roda na sessão principal, junto com seu histórico de conversa
- Isolated: Roda em sessão isolada, sem contexto de conversas anteriores
Payload (O Que Fazer)
- systemEvent: Para sessão main — injeta evento no próximo heartbeat
- agentTurn: Para sessão isolated — executa turno completo do agente
Primeiros Passos
Verificar Status do Cron
openclaw cron list
Se não aparecer nada, o cron está vazio mas funcionando.
Criar um Lembrete Simples
Vamos criar um lembrete para daqui a 20 minutos:
openclaw cron add \
--name "Teste de lembrete" \
--at "20m" \
--session main \
--system-event "LEMBRETE: Isto é um teste do sistema de cron!" \
--wake now \
--delete-after-run
Explicando cada flag:
--name: Nome descritivo do job--at "20m": Executar em 20 minutos (aceita também datas ISO como “2026-02-01T09:00:00”)--session main: Usar sessão principal--system-event: Mensagem injetada como evento de sistema--wake now: Acordar o agente imediatamente quando o horário chegar--delete-after-run: Remover job após execução bem-sucedida
Verificar Jobs Criados
openclaw cron list
Saída:
Jobs (1):
abc123 Teste de lembrete at 2026-01-31T23:56:00Z main enabled
Casos de Uso Práticos
1. Resumo Matinal no WhatsApp
Receba um resumo do seu dia toda manhã às 7h:
openclaw cron add \
--name "Resumo matinal" \
--cron "0 7 * * *" \
--tz "America/Sao_Paulo" \
--session isolated \
--message "Bom dia! Prepare um resumo do meu dia: verifique emails importantes, compromissos do calendário e previsão do tempo para hoje." \
--deliver \
--channel whatsapp \
--to "+5511999999999"
2. Monitoramento de Site a Cada 30 Minutos
openclaw cron add \
--name "Monitor meusite.com.br" \
--cron "*/30 * * * *" \
--session isolated \
--message "Verifique se https://meusite.com.br está online. Se estiver fora do ar ou lento (>3s), me avise. Caso contrário, apenas registre no log."
Note que este job não tem --deliver — o resultado fica interno. Só notifica se houver problema.
3. Relatório Semanal no Telegram
openclaw cron add \
--name "Relatório semanal" \
--cron "0 18 * * 5" \
--tz "America/Sao_Paulo" \
--session isolated \
--message "Prepare um relatório semanal: resumo das atividades, tarefas completadas, métricas importantes e prioridades para próxima semana." \
--model opus \
--thinking high \
--deliver \
--channel telegram \
--to "123456789"
Flags especiais:
--model opus: Usa Claude Opus para análise mais profunda--thinking high: Nível alto de raciocínio
4. Lembrete de Medicação
openclaw cron add \
--name "Lembrete medicação" \
--cron "0 8,20 * * *" \
--tz "America/Sao_Paulo" \
--session main \
--system-event "LEMBRETE DE SAÚDE: Hora de tomar seus medicamentos!" \
--wake now
Este roda às 8h e 20h todos os dias.
5. Verificação de Emails Importantes
openclaw cron add \
--name "Check emails urgentes" \
--cron "0 9,13,17 * * 1-5" \
--tz "America/Sao_Paulo" \
--session isolated \
--message "Verifique minha caixa de entrada por emails urgentes ou de remetentes importantes. Resuma apenas os que precisam de atenção imediata." \
--deliver \
--channel telegram \
--to "123456789"
Roda às 9h, 13h e 17h, de segunda a sexta.
Entendendo Expressões Cron
A sintaxe cron tem 5 campos:
┌─────────── minuto (0-59)
│ ┌───────── hora (0-23)
│ │ ┌─────── dia do mês (1-31)
│ │ │ ┌───── mês (1-12)
│ │ │ │ ┌─── dia da semana (0-6, 0=domingo)
│ │ │ │ │
* * * * *
Exemplos Comuns
| Expressão | Significado |
|---|---|
0 7 * * * | Todo dia às 7h |
0 9 * * 1-5 | Segunda a sexta às 9h |
*/15 * * * * | A cada 15 minutos |
0 8,12,18 * * * | Às 8h, 12h e 18h |
0 0 1 * * | Primeiro dia do mês à meia-noite |
0 6 * * 1 | Toda segunda às 6h |
30 23 * * 0 | Todo domingo às 23h30 |
Ferramentas Úteis
Para criar expressões cron complexas, use:
- crontab.guru — Visualizador interativo
- cronexpressiondescriptor.azurewebsites.net — Tradutor para linguagem natural
Sessão Main vs Isolated
Quando Usar Main
Use sessão main (--session main) quando:
- Precisa de contexto de conversas anteriores
- Quer que o job apareça no histórico normal
- É algo simples que não precisa de isolamento
openclaw cron add \
--name "Lembrete contexto" \
--at "30m" \
--session main \
--system-event "Continue trabalhando naquele projeto que discutimos." \
--wake now
Quando Usar Isolated
Use sessão isolated (--session isolated) quando:
- A tarefa é independente e não precisa de contexto
- Quer usar modelo diferente (mais barato ou mais potente)
- Não quer poluir o histórico da sessão principal
- Precisa entregar resultado em canal específico
openclaw cron add \
--name "Análise profunda" \
--cron "0 6 * * 1" \
--session isolated \
--message "Faça análise semanal do projeto." \
--model opus \
--deliver \
--channel whatsapp \
--to "+5511999999999"
Entrega de Mensagens
Canais Suportados
whatsapp: +5511999999999 (número com código país)telegram: 123456789 (chat ID)discord: channel:123456789 ou user:123456789signal: +5511999999999slack: channel:C12345 ou user:U12345
Telegram com Topics/Fóruns
Para enviar em um tópico específico de grupo Telegram:
--channel telegram \
--to "-1001234567890:topic:123"
Entrega Condicional
Se você não especificar --deliver, o job roda mas não envia mensagem. Útil para monitoramento silencioso onde o agente só deve notificar se houver problema.
Gerenciando Jobs
Listar Jobs
openclaw cron list
Ver Histórico de Execuções
openclaw cron runs --id <jobId> --limit 20
Editar Job Existente
openclaw cron edit <jobId> \
--message "Nova mensagem" \
--model opus
Desabilitar Temporariamente
openclaw cron edit <jobId> --disable
Reabilitar
openclaw cron edit <jobId> --enable
Remover Job
openclaw cron remove <jobId>
Forçar Execução Manual
Para testar sem esperar o horário:
openclaw cron run <jobId> --force
Usando Via Conversa
Você também pode gerenciar cron jobs conversando com o OpenClaw:
“Crie um lembrete para daqui 2 horas: revisar documento”
“Me lembre todo dia às 9h de verificar emails”
“Liste meus jobs agendados”
“Cancele o lembrete de medicação”
O agente usa a ferramenta cron internamente para executar essas ações.
Cron vs Heartbeat
O OpenClaw tem dois sistemas de execução periódica. Quando usar cada um?
Use Cron Quando:
- Precisa de horário exato (9h, não “por volta de 9h”)
- Quer sessão isolada com modelo diferente
- Resultado deve ir para canal específico
- É uma tarefa standalone, sem contexto de conversa
Use Heartbeat Quando:
- Múltiplas verificações podem ser agrupadas
- Precisa do contexto da sessão principal
- Timing pode variar alguns minutos
- Quer reduzir chamadas de API
Exemplo Prático
Heartbeat (em HEARTBEAT.md):
A cada heartbeat, verifique rapidamente:
- Emails urgentes
- Notificações do calendário
- Status dos sites
Cron (jobs separados):
# Relatório profundo toda segunda
openclaw cron add --name "Análise semanal" --cron "0 9 * * 1" ...
# Lembrete específico
openclaw cron add --name "Reunião equipe" --at "2026-02-03T14:00:00" ...
Dicas Avançadas
Timezone
Sempre especifique timezone para evitar confusões:
--tz "America/Sao_Paulo"
Timezones comuns no Brasil:
America/Sao_Paulo(Brasília, -3)America/Manaus(Amazonas, -4)America/Rio_Branco(Acre, -5)
Modelo e Thinking
Para tarefas complexas, use modelos mais potentes:
--model opus --thinking high
Para tarefas simples e frequentes, use modelos mais baratos:
--model haiku
Jobs que Se Auto-Deletam
Para lembretes únicos, use --delete-after-run:
openclaw cron add \
--name "Lembrete único" \
--at "2026-02-01T10:00:00" \
--session main \
--system-event "Reunião começa em 5 minutos!" \
--wake now \
--delete-after-run
Falhas de Entrega
Se a entrega falhar (canal offline, erro de rede), o job falha. Use --best-effort-deliver para continuar mesmo com falha:
--best-effort-deliver
Troubleshooting
Job não executa
Verifique se cron está habilitado:
openclaw cron listConfirme timezone correto:
openclaw cron list --verboseVerifique se gateway está rodando:
openclaw status
Mensagem não chega no canal
Verifique configuração do canal:
openclaw channels statusConfirme ID/número correto do destinatário
Teste entrega manual:
openclaw cron run <jobId> --force
Job roda no horário errado
Sempre especifique timezone explicitamente. Se omitir, usa timezone do servidor (que pode não ser o que você espera).
Armazenamento
Jobs ficam em:
~/.openclaw/cron/jobs.json— Definições dos jobs~/.openclaw/cron/runs/<jobId>.jsonl— Histórico de execuções
Esses arquivos são gerenciados pelo OpenClaw — não edite manualmente.
Conclusão
O sistema de cron do OpenClaw transforma seu assistente em uma ferramenta de automação completa. Em vez de depender de apps externos de lembretes ou scripts complexos, você tem um agente inteligente que pode:
- Executar tarefas no horário certo
- Analisar informações com IA
- Entregar resultados onde você precisa
- Adaptar-se ao contexto
Comece com lembretes simples e vá expandindo para automações mais complexas conforme ganha confiança no sistema.
Próximos Passos
- Multi-agentes no OpenClaw — Diferentes agentes para diferentes tarefas
- Integrações de canais — Configure onde receber notificações
- Skills personalizadas — Expanda o que seu agente pode fazer
Dúvidas sobre agendamento? Pergunte na comunidade Discord!