Справочник нод

Все 124 нод палитры. Группировка та же, что в редакторе: домен → группа → нода. Как читать страницу ноды.

Input / Output

Boundaries

UI Output

AI

LLM

Парсер JSONИнструмент-расширение для агента: принуждает LLM отвечать в формате JSON по схеме. Инжектирует схему в системный промпт и парсит ответ. Подключается к AI Agent через link_extension.json_parserLLMКонфигурация языковой модели (провайдер + модель + температура). Не выполняется сама по себе — подключается к AI Agent, LLM Response или Structured Output LLM через link_llm. Не имеет exec_in/exec_out.llmОтвет LLMОтправляет сообщение в LLM и стримит ответ. Более простой вариант чем AI Agent — без инструментов, один вызов. Требует LLM через link_llm. Поддерживает системный промпт и историю чата.llm_responseСообщениеСобирает каноническое сообщение (role + текст + вложения) из входов text и files. Используется, когда нужно передать сообщение с файлами в LLM-ноду, под-workflow или память.messageСообщенияСобирает массив сообщений (Messages) из нескольких входов. В конфигурации задаётся только количество входных портов типа Message. Любой data-вход превращается в сообщение role=user; если на вход пришёл массив Messages — он распаковывается и вставляется на своё место. Барьер: ждёт все подключённые входы.messagesLLM со структурированным выводомВызывает LLM и возвращает ответ строго в формате JSON по заданной схеме (structured output). Используется когда нужен типизированный вывод, а не свободный текст. Требует LLM через link_llm.structured_output_llm

Agents

План агентаTodo-список для агента: планирование и отметка задач через инструменты. Стрим в панель Extra — «Stream to Extra panel»; порт stream по умолчанию скрыт, включите «Explicit Extra stream port» для ребра к Extra Section.agent_planИИ-агентАвтономный агент с поддержкой инструментов. Получает сообщение, вызывает подключённые инструменты (tool_out) и возвращает ответ. Требует LLM-ноду через link_llm. Опционально: memory (история диалога), skills/extensions (инструменты).ai_agentНабор инструментовОбъединяет несколько инструментов (extension-нод) в один выход для подключения к AI Agent. Удобно когда нужно сгруппировать много инструментов и подключить через один порт агента.toolsetWF-инструментОбёртка подграфа как инструмент агента. Агент вызывает WF Tool по имени, выполняется цепочка нод внутри (порт «Data»/input → … → порт «Result»/result), результат возвращается агенту. Позволяет создавать переиспользуемые инструменты из нод.wf_toolИнструменты виджетаРасширение агента: отдаёт LLM все JS-функции, объявленные в коде встраивания виджета (flowWidget.defineFunction), как инструменты. Когда модель вызывает инструмент — браузер посетителя выполняет привязанный JS и возвращает результат. Работает только в режиме виджета.widget_tools

Agent State

Conversation Memory

Буферная памятьХранит полную историю диалога без ограничений. Подключается к AI Agent или LLM Response через link_memory. Область хранения: thread (между сообщениями), session (в рамках выполнения) или call (разово).buffer_memoryИстория чатаЗагружает недавнюю историю текущего диалога как массив Messages, с ограничением по количеству сообщений (limit). Источник — сохранённые сообщения чата по (workflow_id, session). Работает и для веб-чата, и для Telegram (ходы бота зеркалятся в ту же таблицу). По умолчанию читает текущий тред; можно переопределить session_id.chat_historyИнструмент истории чатаИнструмент для AI Agent: по вызову возвращает недавнюю историю диалога (транскрипт role: text), с ограничением по количеству сообщений. Источник тот же, что у ноды Chat History — сохранённые сообщения чата (веб-чат и Telegram). Подключается к агенту через tool_out → extensions.chat_history_toolСуммаризирующая памятьХранит историю диалога, автоматически сжимая старые сообщения через LLM-суммаризацией. LLM можно брать от подключённого агента или задать отдельным link_llm.summary_memoryОконная памятьХранит только последние N сообщений диалога (скользящее окно). Более предсказуем по объёму контекста чем Buffer Memory. Настраивается через window_size.window_memory

RAG

Эмбеддинг текстаВычисляет вектор-эмбеддинг для входного текста. Модель берётся из подключённой Embedding-ноды или из inline-настройки. Вектор можно подать в RAG Query (поиск по готовому вектору) или использовать в любом пайплайне.embed_textМодель эмбеддинговКонфигурация модели эмбеддингов (аналог LLM-ноды). Подключается линком к Embed Text. Сама не выполняет вычислений.embeddingЗапись в KBДобавляет текст в базу знаний: чанкинг → эмбеддинг → vector store. По умолчанию создаёт документ (виден в UI KB); опционально — raw-режим без записи документа.kb_writeБаза знанийКонфигурация базы знаний для RAG. Выбирается существующая KB из системы. Подключается к RAG Query или RAG Tool через data-порт. Сама не выполняет поиск.rag_kbRAG-запросВыполняет семантический поиск по базе знаний и возвращает релевантный контекст. Принимает запрос через порт 'query' и KB через порт 'kb'. Результат передаётся в LLM для генерации ответа.rag_queryRAG-инструментПредоставляет базу знаний как инструмент для AI Agent. Агент сам решает когда выполнять поиск. Подключается через link_extension. В отличие от RAG Query — вызывается агентом, а не детерминированно.rag_toolПереранжированиеПереранжирует список чанков по релевантности к запросу через cross-encoder reranker. Универсально: композируется с RAG Query, RRF Fusion или любым источником чанков.rerankРеранкерКонфигурация reranker'а (Cohere/Jina/Voyage). Подключается линком к Rerank-ноде. Сама не выполняет вычислений.rerank_configRRF-слияниеОбъединяет несколько ранжированных списков чанков по Reciprocal Rank Fusion (rank-only, не зависит от шкал score). Ждёт все входящие ветки, затем сливает. Основа hybrid search.rrf_fusion

Media (Speech / Image / Video)

Stream Observers

Logic & Flow

Branching

Iteration

ФильтрОбходит JSON-массив с ED-порта «Input». Для каждого элемента запускает подграф; значение с порта end должно быть строго bool. При true исходный элемент попадает в выходной массив; при false — отбрасывается. Порядок сохранён. Результат ноды — отфильтрованный массив.filterДля каждогоПоследовательно обходит JSON-массив с ED-порта «Input». Для каждого элемента запускает подграф между портами item и end (как у WF tool). Значение с порта end игнорируется; удобно для побочных эффектов.for_eachМаппингОбходит JSON-массив с ED-порта «Input». Для каждого элемента запускает подграф item→end и собирает сырое значение с порта end в выходной массив (порядок совпадает с входным массивом). Результат ноды — сам этот массив. Опционально — параллельное выполнение с ограничением конкурентности.mapЦикл WhileПовторяет тело цикла пока условие истинно. Порты Start/End — чистый exec (данные не передаются). Done возвращает исходный Input. Опциональный порт Status объясняет причину остановки: condition_false или max_iterations.while_loop

Synchronization

Data

Values & State

Operators

JSON

Code

DataFrame I/O

DataFrame Ops

Инструмент DataFrameПодключает к AI Agent набор инструментов для работы с DataFrame: загрузка CSV/XLSX, фильтрация, объединение, агрегация, сохранение. Требует подключённый file_store для операций чтения/записи.dataframe_toolDF: склейкаSQL UNION ALL / column-stack: склеивает два DataFrame по строкам или колонкам.df_concatDF: уникальные строкиSQL SELECT DISTINCT: удаляет дубликаты по набору колонок.df_drop_duplicatesDF: группировкаSQL GROUP BY + агрегации: задайте колонки группировки и список агрегатов (sum/mean/min/max/count/...).df_groupby_aggDF: соединениеSQL JOIN двух DataFrame: inner/left/right/outer/cross. Подключите левую таблицу к ``left``, правую — к ``right``.df_mergeDF: фильтр строкSQL WHERE: фильтрует строки DataFrame по выражению (синтаксис ``DataFrame.query``). Пример: ``revenue > 1000 and country == 'DE'``.df_queryDF: выбор столбцовSQL SELECT: выбирает/переименовывает/выкидывает колонки. Каждая строка списка задаёт source → alias или drop.df_selectDF: сортировкаSQL ORDER BY: сортировка по одному или нескольким столбцам.df_sortDF: обновлениеSQL UPDATE: задаёт значения колонок строк, соответствующих предикату. Если предикат пуст — обновляются все строки.df_update

Database

Diagnostics

Integrations

HTTP & Web

Загрузить веб-страницуИнструмент загрузки веб-страниц для AI Agent: читает контент URL и возвращает текст. Агент вызывает его для получения содержимого конкретных страниц. Подключается через link_extension.fetch_webpageHTTP-запросВыполняет HTTP-запрос (GET/POST/PUT/PATCH/DELETE/HEAD) и возвращает статус, заголовки и тело ответа. Поддерживает JSON/text/form-тело, bearer/basic/custom-header авторизацию, шаблонизацию URL/headers/body через Jinja. Защита от SSRF — запросы в приватные сети заблокированы.http_requestMCP-инструментИнструмент MCP через сохранённое подключение workspace (URL, auth, режим, tool).mcp_toolВеб-поиск (OpenRouter)Ищет в интернете через OpenRouter и возвращает и ответ модели, и сами источники с выдержками текста. Работает как обычный шаг графа (порт Query) и как инструмент AI Agent через link_extension. Движок поиска — нативный у провайдера модели либо Exa/Parallel/Perplexity.openrouter_web_searchВеб-поискИнструмент поиска в интернете для AI Agent. Агент вызывает его автоматически когда нужна актуальная информация. Подключается через link_extension (tool_out → агент).websearch

Email

Calendar

Конфигурация CalDAVВыбор сохранённого CalDAV-подключения workspace. Учётные данные в настройках workspace.caldav_configУдалить событие календаряDELETE ресурса календаря.calendar_delete_eventЗанятость календаряREPORT free-busy-query для заданных календарей.calendar_freebusyПолучить событие календаряGET одного ресурса календаря (iCalendar).calendar_get_eventСписок календарейСписок коллекций календарей для подключённого аккаунта CalDAV.calendar_list_calendarsМультизапрос календаряREPORT calendar-multiget для списка href.calendar_multigetИзменить событие календаряПатч по схеме read-modify-write первого VEVENT в ресурсе.calendar_patch_eventЗаписать событие календаряPUT ресурса iCalendar (создание без etag, обновление с If-Match).calendar_put_eventЗапрос к календарюREPORT calendar-query для VEVENT или VTODO в диапазоне времени.calendar_queryПланирование в календареPUT планирующего сообщения (приглашение/ответ/отмена) в настроенный outbox.calendar_scheduleИнструмент календаряИнструменты CalDAV для ИИ-агента. Требуется calendar_store из caldav_config.calendar_tool

Files

Поиск файловВозвращает список файлов, подходящих под glob-шаблон, относительно корня настроенного хранилища.file_globЧтение файлаЧитает текстовый файл из файлового хранилища.file_readИнструмент файловДаёт ИИ-агенту файловые инструменты (fs_glob, fs_read, fs_write). По умолчанию работает с собственным хранилищем этого воркспейса; поставьте «Источник подключения» = «Внешнее подключение», чтобы указать на хранилище, подключённое к порту 'file_store'. По умолчанию только чтение — отметьте fs_write, чтобы разрешить модели создавать и перезаписывать файлы.file_toolЗапись файлаЗаписывает или заменяет строки в файле в файловом хранилище.file_writeЛокальная ФС (только DEV)ТОЛЬКО DEV. Локальная папка на сервере как файловое хранилище для File Glob/Read/Write/Tool — аналог WebDAV Config на локальном диске. В production отключено и ограничено LOCAL_FS_ALLOWED_ROOTS.local_fs_configWebDAV-конфигурацияВыбирает сохранённое WebDAV-подключение этого воркспейса (Nextcloud, ownCloud, Yandex.Disk, …) как хранилище для File Glob/Read/Write/Tool. Учётные данные лежат в настройках воркспейса, а не на ноде.webdav_configХранилище workspaceСобственное файловое хранилище текущего воркспейса — то же дерево, которое показывает вкладка Files. Подключайте его к File Glob/Read/Write/Tool; записанные туда файлы появятся во вкладке Files. Учётные данные не нужны.ws_store_config

Telegram

Отправить сообщение в TelegramОтправляет сообщение в Telegram-чат. Использует бота, в которого задеплоен этот воркфлоу; поставьте «Источник подключения» = «Внешнее подключение», чтобы выбрать другого бота через порт 'telegram_config'. Chat ID и текст задаются в конфиге (шаблоны поддерживаются); пустой Chat ID означает чат текущего Telegram-хода. Файлы, поданные на порт 'files', уходят после текста, каждый отдельным сообщением (документ/фото/аудио). Не отправить ни текста, ни файлов — ошибка, а не молчаливый no-op.send_telegram_messageРеакция TelegramСтавит (action=set) или снимает (action=clear) эмодзи-реакцию бота на сообщение в Telegram. Пустой Chat ID = чат текущего хода; шаблоны поддерживаются. Использует бота, в которого задеплоен этот воркфлоу; поставьте «Источник подключения» = «Внешнее подключение», чтобы выбрать другого бота через порт 'telegram_config'.set_telegram_reactionИнформация о чате TelegramИнформация о чате и участниках. action: chat (метаданные), member_count (точное число участников), administrators (точный список админов), member (статус конкретного пользователя), known_members (ПРИБЛИЗИТЕЛЬНЫЙ ростер из записанных наблюдений — Bot API не умеет перечислять всех участников, поэтому молчуны в него не попадут), bot_rights (права самого бота: можно ли удалять сообщения и банить). Требует Telegram Config.telegram_chat_infoУправление чатом TelegramУправление чатом: название, описание, режим «только чтение» для всех (mute_everyone/unmute_everyone через setChatPermissions), создание и отзыв инвайт-ссылок, одобрение/отклонение заявок на вступление, индикатор «печатает…». Бот должен быть администратором. Есть dry_run. Требует Telegram Config.telegram_chat_manageTelegram-конфигурацияВыбирает сохранённого Telegram-бота из воркспейса. Учётные данные лежат в настройках воркспейса, а не в графе — эта нода передаёт разрешённый токен нодам-действиям через их порт 'telegram_config'.telegram_configПересылка сообщения TelegramПересылает (forward — с плашкой «Переслано от») или копирует (copy — без указания источника, с возможностью заменить подпись) сообщение в другой чат. Типовой сценарий модерации: скопировать нарушение в лог-чат ДО удаления. From chat пустой = чат текущего запуска. Требует Telegram Config.telegram_forwardПолучить файл TelegramСкачивает вложение Telegram по file_id и кладёт его в файловое хранилище как ссылку (PT_FILE) — её можно подать в LLM/vision или в Send Telegram Message. file_id берётся из записанной истории ({{ nodes.telegram_history_1.rows[0].media_file_id }}). Bot API отдаёт файлы только до 20 МБ. Требует Telegram Config.telegram_get_fileИстория группы TelegramЧитает записанную историю Telegram-чата: сообщения, которые бот наблюдал в группе/канале, включая те, что не запускали воркфлоу. Требует включённой галки «Записывать историю группы» в деплое И отключённого privacy mode у бота (или прав администратора) — иначе бот просто не видит сообщений. Chat ID пустой = чат текущего запуска. Выходы: Messages (для LLM), Records (сырые записи с message_id/file_id) и Transcript (текст).telegram_historyInline-клавиатура TelegramОтправляет сообщение с inline-кнопками или прикрепляет кнопки к существующему сообщению. Кнопки несут command/args — при нажатии workflow перезапускается с data.telegram.command/args/message_id. Требует Telegram Config через порт 'telegram_config'. Target 'reply_message' прикрепляет к текущему ответу бота.telegram_inline_keyboardМодерация TelegramМодерация чата: удаление сообщений, бан/разбан, мьют/размьют, выдача и снятие админ-прав, закрепление. Бот должен быть администратором с соответствующим правом (can_delete_messages / can_restrict_members / can_pin_messages). Свои сообщения удаляются только младше 48 часов; delete_messages шлётся пачками по 100. Есть dry_run. Требует Telegram Config.telegram_moderateПоиск сообщений TelegramИщет по записанным сообщениям Telegram-чатов (полнотекстовый поиск на PostgreSQL, подстрока на SQLite). Ищет ТОЛЬКО по тому, что бот наблюдал — у Bot API нет поиска по истории. Chat ID пустой = поиск по всем наблюдаемым чатам workspace. Возвращает совпадения с message_id, автором и датой (самые свежие первыми).telegram_searchИнструменты TelegramИнструмент для AI Agent: единый доступ к Telegram-чату — чтение (история/поиск/инфо), модерация (delete/ban/mute/pin) и управление (название/инвайты/заявки). Каждое действие включается отдельно в enabled_actions; список тулзов, который видит модель, фильтруется по типу текущего чата. Чат фиксируется конфигом или берётся из запуска — модель НЕ выбирает его. Есть dry_run и потолок длительности бана/мьюта. promote/demote недоступны принципиально. Требует Telegram Config; для модерации/управления — прав администратора у бота. Подключается к агенту через tool_out → extensions.telegram_tools

Widget

Bitrix24

amoCRM

VK / VK Teams