Каталог блоков¶
Экспериментальная функция
Данная функция находится в активной стадии публичного тестирования. Она может работать нестабильно и измениться в любой момент. Мы ждём ваших отзывов о работе этой функции, они могут значительно повлять на её развитие.
Каждый блок потока выполняет одно действие и передаёт дальше записи — объекты JSON. Блоки соединяются выходами и входами; связь, которая создаёт цикл, запрещена, кроме возврата в блок цикла.
Триггеры¶
| Блок | Что делает |
|---|---|
| Ручной запуск | Запускает поток кнопкой с формой входных данных |
| Расписание | Запускает по интервалу, каждый день или в выбранные дни недели |
| Webhook | Запускает по входящему HTTP-запросу на локальный адрес |
| Вызов из потока | Запускает поток из другого потока с типизированными полями |
| Ошибка потока | Обрабатывает неудачный запуск другого потока |
У потока должен быть хотя бы один стартовый блок.
Агент¶
| Блок | Что делает |
|---|---|
| Агент | Отправляет записи модели и возвращает структурированный результат |
В настройках блока задаются промпт, модель, уровень размышлений, схема ответа, доступные инструменты и вложения. Агент может обрабатывать все записи сразу или по одной. Ответ проверяется по схеме: если модель вернула не тот формат, блок завершается ошибкой, и следующие шаги не получают некорректные данные.
Интеграции¶
| Блок | Что делает |
|---|---|
| HTTP-запрос | Вызывает HTTP(S)-адрес: метод, заголовки, тело, файл, пагинация |
| MCP-инструмент | Вызывает инструмент подключённого MCP-сервера с заданными аргументами |
HTTP-блок умеет работать с подключением: логин и пароль, API-ключ, bearer-токен или OAuth2. Ответ сохраняется в записи; при ошибке статуса блок может остановить поток.
Локальные файлы¶
| Блок | Что делает |
|---|---|
| Список файлов | Ищет файлы в папке проекта по маске |
| Чтение файла | Читает текст, JSON или CSV |
| Запись файла | Пишет файл, перезаписывает или дополняет его |
| Преобразование | Разбирает JSON, собирает CSV или склеивает строки |
Все пути остаются внутри папки проекта: выйти за её пределы блок не может.
Поля и шаблоны¶
| Блок | Что делает |
|---|---|
| Поля | Создаёт, переименовывает и заполняет поля записи |
| Шаблон | Собирает текст из полей записи |
Шаблон поддерживает выражения вида {{ $json.name }}.
Списки¶
| Блок | Что делает |
|---|---|
| Фильтр | Оставляет записи, подходящие под условия, остальные уходят в выход «Отброшены» |
| Сортировка | Упорядочивает записи по полю |
| Ограничение | Оставляет первые или последние N записей |
| Без дублей | Удаляет повторы по полю |
| Разбить массив | Превращает массив из поля в отдельные записи |
| Собрать | Собирает записи в одну с массивом |
Условия¶
| Блок | Что делает |
|---|---|
| Если | Направляет запись по выходу «Да» или «Нет» |
| Выбор | Проверяет несколько правил и отправляет запись в подходящий выход или в «Иначе» |
Условия сравнивают значения выражения с ожидаемым: равно, содержит, пусто, больше, меньше и другие. Несколько условий можно объединять через «И» и «ИЛИ».
Объединение¶
| Блок | Что делает |
|---|---|
| Объединение | Соединяет записи двух веток: подряд или по ключу |
Циклы¶
| Блок | Что делает |
|---|---|
| Пакетами | Прогоняет тело цикла по частям списка |
| Повторять до | Повторяет тело, пока не выполнено условие выхода, с ограничением итераций и времени |
Тело цикла — всё, что достижимо из входа «Тело». Данные входят в тело только через него, а выходят только в «Конец тела».
Вложенный поток¶
| Блок | Что делает |
|---|---|
| Вложенный поток | Вызывает другой поток и получает его результат |
Вложенный поток должен начинаться блоком Вызов из потока с описанными полями. Глубина вложенности ограничена, а рекурсивный вызов запрещён.
Ожидание и люди¶
| Блок | Что делает |
|---|---|
| Ожидание | Ждёт время, наступление момента или сигнал на локальный адрес |
| Согласование | Ждёт одобрения или отказа, при необходимости с полями формы |
Ожидание не занимает слот выполнения. Запуск, который ждёт решения, виден на странице Ждут решения.
Завершение¶
| Блок | Что делает |
|---|---|
| Результат | Возвращает итоговый результат потока |
| Ошибка | Завершает поток с ошибкой и сообщением |
| Ответ на webhook | Отправляет ответ на входящий запрос |
Оформление¶
| Блок | Что делает |
|---|---|
| Заметка | Текст на холсте; не выполняется |
Выражения¶
В полях блоков можно ссылаться на данные запуска:
| Выражение | Что означает |
|---|---|
$json |
Текущая запись |
$items |
Все записи на входе блока |
$trigger |
Данные запуска: ручные, из расписания, вебхука или другого потока |
$node.<id> |
Выход конкретного блока |
$index |
Номер записи при обработке по одной |
К выражению можно добавить фильтр через вертикальную черту: {{ $json.title | upper }}.
Доступны upper, lower, trim, length, json, parse, number, string, round, default, first, last, join, split, keys, date и slice.
Выражения не выполняют произвольный код: это безопасный разбор путей и фильтров.
Обработка записей и ошибок¶
- Все записи — блок получает весь список и возвращает список.
- По одной — блок выполняется отдельно для каждой записи.
Для блока можно задать повторные попытки: сколько раз, с какой задержкой и при каких ошибках. Действие при ошибке выбирается отдельно: остановить поток, передать запись в выход «Ошибка» или продолжить работу.
Код¶
Блок Код выполняет JavaScript в изолированной среде.
Внутри доступны $json, $items, $trigger, $node, $index и console.log; результат возвращается как JSON.
Лимиты времени и памяти задаются в настройках блока.
Как собрать поток и запустить его — на странице потоков.