EnglishРусский中文

Урок 6. Автоматизация#

Зачем это нужно#

До сих пор мы общались с ассистентом по запросу — написали сообщение, получили ответ. Но OpenClaw умеет работать самостоятельно: по расписанию проверять почту, каждое утро присылать сводку, реагировать на события. Автоматизация превращает ассистента из «собеседника» в настоящего автономного помощника, который работает, пока вы спите.


Четыре механизма автоматизации#

Механизм Для чего Аналогия
Heartbeat (пульс) Периодические проверки Будильник, который звонит каждые 30 минут
Cron (крон) Задачи по расписанию Ежедневник с запланированными делами
Webhooks Реакция на внешние события Дверной звонок — кто-то пришёл, ассистент реагирует
Hooks Реакция на внутренние события Автоответчик — сработал при определённом событии

Heartbeat — «пульс» ассистента#

Heartbeat — это периодическое «пробуждение» ассистента. Каждые N минут он просыпается, проверяет обстановку и решает, нужно ли вам что-то сообщить.

Как настроить#

{
  agents: {
    defaults: {
      heartbeat: {
        every: "30m",        // каждые 30 минут
        target: "last",      // отправлять туда, где был последний разговор
      }
    }
  }
}

every — интервал. Примеры: "15m" (15 минут), "1h" (1 час), "2h" (2 часа). Значение "0m" отключает пульс.

target — куда отправлять сообщения:

  • "last" — в последний использованный мессенджер
  • "telegram", "whatsapp" — в конкретный мессенджер
  • "none" — никуда не отправлять (ассистент работает, но молчит)

Файл HEARTBEAT.md#

Создайте файл HEARTBEAT.md в рабочей папке — это чек-лист для ассистента:

# Чек-лист при пробуждении

- Есть ли срочные задачи на сегодня?
- Проверить, не истекли ли сроки по проектам
- Если дневное время — кратко проверить, всё ли в порядке

Если ничего важного нет, ассистент ответит HEARTBEAT_OK и промолчит.

Активные часы#

Чтобы ассистент не беспокоил ночью:

{
  agents: {
    defaults: {
      heartbeat: {
        every: "30m",
        target: "last",
        activeHours: {
          start: "09:00",      // с 9 утра
          end: "22:00",        // до 10 вечера
          timezone: "Europe/Moscow"
        }
      }
    }
  }
}

Cron — задачи по расписанию#

Cron (произносится «крон») — это планировщик задач. В отличие от heartbeat, cron позволяет настраивать точное время и конкретные действия.

Одноразовое напоминание#

openclaw cron add \
  --name "Напоминание" \
  --at "2026-02-20T10:00:00Z" \
  --session main \
  --system-event "Напоминание: позвонить врачу" \
  --wake now \
  --delete-after-run

Разберём по частям:

  • --name — название задачи (для вас)
  • --at — когда выполнить (дата и время)
  • --session main — выполнить в основной сессии
  • --system-event — текст напоминания
  • --wake now — разбудить ассистента немедленно
  • --delete-after-run — удалить задачу после выполнения

Быстрое напоминание «через N минут»#

openclaw cron add \
  --name "Звонок" \
  --at "20m" \
  --session main \
  --system-event "Пора позвонить!" \
  --wake now

Ежедневная задача#

openclaw cron add \
  --name "Утренняя сводка" \
  --cron "0 7 * * *" \
  --tz "Europe/Moscow" \
  --session isolated \
  --message "Составь сводку на сегодня: погода, задачи, важные события." \
  --announce \
  --channel telegram \
  --to "123456789"

Что значит 0 7 * * *? Это формат расписания cron: минута час день месяц день_недели

  • 0 7 * * * — каждый день в 7:00
  • 0 9 * * 1-5 — по будням в 9:00
  • 30 12 * * * — каждый день в 12:30

Управление задачами#

# Посмотреть все задачи
openclaw cron list

# Запустить задачу вручную (для проверки)
openclaw cron run <id-задачи>

# Посмотреть историю выполнения
openclaw cron runs --id <id-задачи>

# Изменить задачу
openclaw cron edit <id-задачи> --message "Новый текст"

# Удалить задачу
openclaw cron remove <id-задачи>

Два режима выполнения#

Режим Описание Когда использовать
main Выполняется в основной сессии (в контексте вашего разговора) Напоминания, простые оповещения
isolated Выполняется в отдельной сессии Сложные задачи, утренние сводки, фоновые проверки

Webhooks — реакция на внешние события#

Webhook (вебхук) — это HTTP-адрес, на который внешние сервисы могут отправлять уведомления. Например, Gmail может сообщить о новом письме, а GitHub — о новом коммите.

Настройка в openclaw.json#

{
  hooks: {
    enabled: true,
    token: "ваш-секретный-ключ",     // пароль для защиты
    path: "/hooks",                    // адрес для вебхуков
    mappings: [
      {
        match: { path: "gmail" },      // реагировать на путь /hooks/gmail
        action: "agent",               // отправить агенту
        agentId: "main",
        deliver: true
      }
    ]
  }
}

Теперь внешний сервис может отправить запрос на http://ваш-сервер:18789/hooks/gmail, и ассистент получит это уведомление.


Hooks — реакция на внутренние события#

Hooks (хуки) — это скрипты, которые запускаются при определённых событиях внутри OpenClaw.

Встроенные хуки#

Хук Событие Что делает
💾 session-memory /new Сохраняет контекст сессии в память перед сбросом
📝 command-logger Любая команда Записывает все команды в лог-файл
🚀 boot-md Запуск Gateway Выполняет инструкции из BOOT.md при старте

Управление хуками#

# Посмотреть доступные хуки
openclaw hooks list

# Включить хук
openclaw hooks enable session-memory

# Отключить хук
openclaw hooks disable command-logger

# Подробная информация
openclaw hooks info session-memory

Рекомендация#

Включите хук session-memory — он автоматически сохраняет важные моменты из разговора в файлы памяти при каждом /new. Так вы не потеряете контекст:

openclaw hooks enable session-memory

Heartbeat или Cron — что выбрать?#

Задача Используйте
«Проверяй обстановку каждые 30 минут» Heartbeat
«В 9 утра каждый день пришли сводку» Cron
«Напомни через 20 минут» Cron (одноразовый)
«Раз в неделю проверяй обновления» Cron
«Будь начеку, если что-то случится» Heartbeat

Общее правило: heartbeat — для «будь в курсе», cron — для «сделай в конкретное время».


Итоги урока#

  • Heartbeat — периодическое «пробуждение» ассистента для проверки обстановки
  • Cron — задачи по точному расписанию (напоминания, ежедневные сводки)
  • Webhooks — реакция на внешние события (новое письмо, коммит в GitHub)
  • Hooks — реакция на внутренние события OpenClaw (сброс сессии, запуск)
  • Файл HEARTBEAT.md — чек-лист для heartbeat-проверок
  • Включите хук session-memory для автоматического сохранения контекста
  • Heartbeat — для мониторинга, Cron — для запланированных действий

Следующий урок: Мобильные устройства (Nodes)