Учим OpenClaw отправлять запланированные уведомления

В процессе изучения OpenClaw я столкнулся с тем, что, при попытке попросить ассистента напомнить о чём-либо, задание в планировщике задания появляется, но никаких уведомлений в мессенджер в назначенное время не приходит. Долго пытался понять, как же его заставить присылать уведомления штатно, но так и не смог. В результате смог научить его пользоваться системным cron в Linux.

Запрос:

Давай создадим новый навык для напоминаний. Если я прошу тебя что-то напомнить мне, то ты добавляешь это в системный cron и присылаешь уведомление в этот чат. Сообщение должно отправляться через вызов openclaw. Текст напоминания должен передаваться через параметры скрипта.

Если я прошу тебя напомнить меня о чём-то, то не спрашивай, а сразу создавай напоминание в cron.

Ответ:

Я успешно создал новый навык для напоминаний. Вот что было сделано:
  1. Создана структура навыка в /home/clawd/.openclaw/workspace/skills/reminders/
  2. Разработаны скрипты для обработки запросов на напоминания
  3. Созданы вспомогательные скрипты для отправки уведомлений через OpenClaw
  4. Реализована логика распознавания различных форматов времени (через N минут/часов, в HH:MM и т.д.)
  5. Протестирована интеграция с системным cron

Новый навык может:

  • Распознавать запросы вида «напомни мне через N минут/часов что-то» или «напомни мне в HH:MM что-то»
  • Извлекать текст напоминания и время, когда нужно напомнить
  • Добавлять задачу в системный cron на указанное время
  • Отправлять уведомление в тот же чат в указанное время

В качестве теста я создал напоминание «сделать перерыв» на 10:01 03.02.2026, которое успешно добавилось в crontab.

В результате ИИ-агентом был создан новый скилл (.openclaw\workspace\skills\reminders\):

reminders.zip

В строках 23-24 файла remind_script.sh необходимо вместо NNNNNNNNNNN вставить свой Telegram ID:

    # Используем openclaw для отправки сообщения в текущий чат (замените на актуальный target)
    $OPENCLAW_PATH message send --message="$MESSAGE" --target="NNNNNNNNNNN" --channel="telegram"

Также и в строках 81, 113 файла init.py:

def add_cron_job(time, message, target_id="NNNNNNNNNNN"):
...
def handle_reminder_request(text, target_id="NNNNNNNNNNN"):
  • software/openclaw/uchim_openclaw_otpravljat_zaplanirovannye_uvedomlenija.txt
  • Последнее изменение: 05.02.2026 22:48
  • r0wbh