Скиллы Новичок Разное

Cron Mastery

Скачать ZIP
13
Предупреждение о рисках!

Установка скиллов и плагинов OpenClaw осуществляется на ваш страх и риск. Все файлы были получены из открытых источников и предоставляются «как есть». Мы не гарантируем их корректную работу, безопасность или совместимость с вашей системой. Перед установкой настоятельно рекомендуется ознакомиться с содержимым кода и убедиться, что вы понимаете, какие изменения будут внесены в вашу систему.

Cron Mastery

Правило №1: Heartbeat дрейфует. Cron — точен.

Этот материал — практическое руководство по управлению временем в OpenClaw версии 2026.2.15+. Он решает классическую проблему «я пропустил напоминание», жестко разделяя два подхода: неформальные проверки (heartbeat) и точные расписания (cron). :

Базовый принцип

СистемаПоведениеЛучшее применениеРиск
Heartbeat«Проверю, когда получится» (например, каждые 30–60 минут)Проверка почты, новости, низкоприоритетные задачиДрейф: задача «напомни через 10 минут» не сработает при интервале 30 минут
Cron«Выполню точно в заданное время»Напоминания, ежедневные отчёты, системное обслуживаниеЗасорение: создаёт одноразовые задачи, требующие очистки

1. Настройка надёжных напоминаний (стандарт 2026.2.15+)

Правило: никогда не используйте act:wait или внутренние циклы для длительных задержек (> 1 минуты). Вместо этого используйте cron:add с одноразовым расписанием at. :

Точность и «тик планировщика»

Хотя Cron работает точно, фактическое выполнение зависит от heartbeat шлюза (обычно каждые 10–60 секунд). Задача, установленная на :00, выполнится на первом «тике» после этого момента. Возможна погрешность до ~30 секунд в зависимости от конфигурации. :

Современный паттерн одноразовых напоминаний

Используйте следующую структуру payload для задач формата «напомни через X минут».

  • Выбор payload: используйте AgentTurn со строгими инструкциями для push-уведомлений. Для фоновых задач — systemEvent.
  • Надёжность: исправлены ошибки nextRunAtMs и deadlock-паттерн «Add-then-Update».
  • Автоочистка: одноразовые задачи удаляются автоматически (deleteAfterRun: true).

КРИТИЧНО: push-уведомления vs тихие события

  • systemEvent (тихо): записывает текст в историю чата, но не отправляет уведомления.
  • AgentTurn (активно): пробуждает агента для отправки сообщения. Обязателен для уведомлений.

Пример: напоминание с push-уведомлением

{
 "name": "Remind: Water",
 "schedule": { "kind": "at", "at": "2026-02-06T01:30:00Z" },
 "payload": {
 "kind": "agentTurn",
 "message": "DELIVER THIS EXACT MESSAGE TO THE USER WITHOUT MODIFICATION OR COMMENTARY:\n\n💧 Выпей воды!"
 },
 "sessionTarget": "isolated",
 "delivery": { "mode": "announce", "channel": "telegram", "to": "1027899060" }
}

Пример: фоновый лог

{
 "name": "Log: System Pulse",
 "schedule": { "kind": "every", "everyMs": 3600000 },
 "payload": {
 "kind": "systemEvent",
 "text": "[PULSE] Система работает нормально."
 },
 "sessionTarget": "main"
}

Правило конкурентности Cron (обновлено)

До версии 2026.2.15 паттерн «Add-then-Update» вызывал взаимные блокировки. Теперь это исправлено, но рекомендуется передавать все параметры сразу в вызове cron.add (включая wakeMode: "now") для максимальной эффективности. :

2. Janitor (автоочистка) — устаревшее

Начиная с версии 2026.2.14, OpenClaw автоматически очищает зависшие задачи и восстанавливает повреждённые расписания.

Ручная очистка требуется только в случаях:

  • одноразовые задачи с deleteAfterRun: false;
  • устаревшие периодические задачи, которые больше не нужны.

Файл из источника

10883_cron-mastery-1.0.3.zip