Привет, Хабр!
Автоматизация рутинных процессов уже стала не модным экспериментом, а частью ежедневной продуктивности. В этой статье я расскажу про n8n: как он устроен, зачем его использовать. Первая часть будет вводной, поэтому если вы еще не начали оптимизировать свою жизнь, то эта статья для вас.
Что такое n8n и зачем его использовать
n8n - это платформа для автоматизации рабочих процессов с открытым исходным кодом, которая позволяет создавать и связывать различные сервисы и приложения "без необходимости" программирования. Она предоставляет визуальный интерфейс, где вы можете перетаскивать компоненты (узлы) и настраивать цепочки действий (workflow) для автоматического выполнения рутинных задач, таких как сбор данных, отправка уведомлений или интеграция с CRM и другими системами. Сама платформа появилась в 2019 году, но наибольшую популярность приобрела в 23-24 годах, благодаря интеграциями с различными ИИ сервисами.
Долгое время меня обходила стороной сама идея no-code и low-code, так как я привык все делать сам и писать приложения с нуля, но любопытство взяло верх и я приступил к попыткам автоматизировать свои задачи. Два первых процесса из повседневной жизни, которые мне удалось автоматизировать:
Чтение почты и перенос спама в корзину
Отбор топа новостей за неделю и отправку дайджеста в телеграмм
С помощью них я смог освободить пару часов в неделю. Если вы хотите освободить немного своего времени, то прочитайте эту и последующие статьи.
Установка
Мне было удобнее устанавливать через командную строку, а не через Docker, поэтому покажу этот вариант. Все шаги выполнены под Windows.
Устанавливаем NodeJs:
Перейдите на сайт NodeJs и скачайте последнюю LTS версию: https://nodejs.org/
После установки перейдите в терминал или Power shell и проверьте версию:
node -v
npm -v
Глобальная установка n8n. Введите команду:
npm install n8n -g
флаг -g устанавливает n8n глобально. Это позволит запускать его из любой директории.
1. Запуск n8n:
n8n
Если все установлено правильно, то вы увидите сообщение о запуске на установленном порту:
Initializing n8n process...
n8n ready on 0.0.0.0, port 5678
Version:
Интерфейс
Думаю, стоит сказать пару слов об интерфейсе. После запуска вы перейдете на стартовую страницу в которой нужно будет установить логин и пароль. На главной странице вы увидите:
Ваши рабочие процессы
Сохраненные логины/пароли
Лог выполнения запусков
Data Tables - внутреннее хранилище n8n (появилось в последних версиях)

В первую очередь нас интересует кнопка "create workflow". При создании нового проекта вы попадаете на пустой холст, где мы можем нажать на '+' правой панели.
Ключевые концепции
Workflow - последовательность узлов, видимая на холсте. Каждый workflow - независимая логика.
Node - модуль с конфигурацией: триггер, action, трансформер, код и т.д.
Item - единица данных, которая «плывёт» между узлами; workflow оперирует массивом items.
Credentials - способ безопасно хранить ключи/логины для внешних сервисов (шифруются, см. ниже).
Execution - результат запуска workflow (логи, вход/выход, ошибки). По умолчанию n8n сохраняет истории выполнений; важно настроить retention в проде.
Expressions - внутри параметров нода вы можете писать выражения вида
{{ $json["email"] }},{{ $node["HTTP Request"].json["data"] }}и т.д.
Виды узлов в n8n
-
Триггеры - узлы, которые запускают рабочий процесс в ответ на определенное событие или условие. Триггеры могут быть основаны на вебхуках (слушают событие), периодическом опросе и других механизмах. Наверное, самые часто используемые триггеры:
chat trigger - отправка сообщений в интерфейсе n8n
telegram trigger - отправка сообщений в тг ботов
shedule - запускает процесс по расписанию
on app event - для определенных событий в интегрированных приложениях, например, новое письмо в gmail
-
Действия - узлы, которые выполняют конкретные операции как часть рабочего процесса: манипулируют данными, выполняют операции во внешних системах и т.д. Например, это может интеграция с:
-
API - интеграции:
Google
Notion
Tavily
File / Binary - загрузка/запись и передача бинарных данных (файлы, изображения).
-
-
Узлы обработки и трансформации данных - основа для соединения выводов узлов и преобразования данных. Наиболее важные:
Code - позволяет вручную написать код для обработки данных или собственной интеграции. Код можно писать на JS и Python
Merge - объединяет выводы нескольких узлов
Это были самые часто используемые узлы в n8n, которыми вы будете пользоваться в своих проектах.
Каждый узел имеет собственные поля для настройки. Это могут поля для ввода учетных данных, ключей и т.п или выбор режима работы, например, тип объединения данных. Подробное описание каждого узла вы можете найти в документации n8n
Перемещение данных между узлами
Когда вы поместите по поле необходимые узлы и настроите их, вы сможете их соединить. Тогда при запуске проекта данные будут 'перетекать' от одного узла к другому. Здесь нет ничего сложного, но я хочу сказать про несколько моментов, с которыми у меня возникли проблемы в первый раз:
Вывод одного узла может служить вводом для нескольких узлов. Это полезно в случаях когда вы хотите произвести манипуляции с данными несколькими независимыми способами, например, оправить в телеграмм и сохранить в файл
Чтобы получить входные данные в узле Code можно использовать:
const inputs = $input.all();
Получать выходные данные можно не только из предыдущего узла, но и из любого выполненного узла, например:
const allData = $node['HTTP Request'].item;
Важные переменные окружения и конфигурация
Ключевые настройки управления поведением n8n и безопасностью задаются через env-переменные. Несколько, на которые нужно обратить внимание сразу:
N8N_ENCRYPTION_KEY— ключ шифрования credentials (обязателен для безопасного хранения секретов).N8N_HOST,N8N_PORT,N8N_PROTOCOL,N8N_PATH— базовые сетевые настройки.EXECUTIONS_MODE— режим выполнения (обычноmainилиqueue); в режимеqueuen8n использует Redis как брокер очередей: основной инстанс принимает webhook/таймеры и кладёт задачy в Redis; worker-процессы их подхватывают и выполняют.DB_TYPE
Ещё полезный трюк: многие переменные можно передать через файл, используя суффикс _FILE — удобно для секретов в Docker Secret
Что дальше
Во второй статье я покажу конкретный workflow: автоматизация сбора новостей - от парсинга RSS и API новостных агрегаторов, через фильтрацию и ранжирование, до отправки дайджеста в Telegram и сохранения в базе.
Подписывайтесь на мой телеграмм канал, чтобы не пропустить статью. Также там я выкладываю другие материалы, связанные с AI и LLM.
Полезные ссылки
Официальная документация по установке и npm-инструкции. docs.n8n.io
Перечень переменных окружения и настройки деплоя (ключи, базовые настройки,
_FILEpattern). docs.n8n.ioБольшая подборка пользовательских узлов под разные задачи- GitHub - restyler/awesome-n8n: Useful n8n resources: list of community nodes and tutorials
akod67
С NodeRed имеет смысл пересаживаться?