Подписки на события

🔵 Обзор того, как события попадают в платформу и запускают агентов. Механизмы делятся на pull (платформа сама опрашивает), push (внешняя система присылает) и внутренние (события процессов ядра).

Механизм Тип Что запускает Где настраивается
Cron pull (таймер) ход агента по расписанию/интервалу cron: в agent.yaml / config/cron.yaml
Мониторы pull (источник) ход агента на новые элементы источника config/monitors.yaml
Входящий webhook push один ход агента по POST /v1/inbound/:template server.yaml → inbound
Webhook воркфлоу push запуск воркфлоу по POST /v1/workflows/<name>/webhook triggers.webhook
Реакции внутренние события действие на событие процесса (on:) config/reactions.yaml
await_event ожидание ход агента ждёт событие (webhook или таймер) тул kind: await_event

Push vs pull. Push удобен, когда внешняя система сама знает о событии (платежи, CRM, CI). Pull — когда надо опрашивать источник; при этом монитор стреляет только на изменения, а cron — всегда по расписанию.

Внутренние события. Реакции подписываются не на внешние системы, а на события процессов ядра (ProcessEvent): старт/завершение, вызовы инструментов, содержимое ответа, бюджет и т.д. — и запускают агента, инструмент, webhook или signal (steering живого процесса).

Ожидание события внутри хода. await_event приостанавливает ход и ждёт внешний колбэк POST /v1/events/callback (по event_id) или таймер; async_action делает полный асинхронный флоу (запрос → показ URL → колбэк → результат).

Доставка результата. Итог хода/воркфлоу раздаётся в sink'и (notify): log, webhook, telegram, vk, yandex_messenger, email, messages_db, agent, workflow, storage — см. Cron.

Разница между push-точками входа (inbound webhook, каналы Telegram/email) — в Виджет и каналы.