Разворачивает новый n8n через n8n-stack-v2 или обновляет уже существующий, спрашивает только недостающие доступы к серверу, домен, admin_email, пароль администратора и x-license-key, а затем поднимает рабочий стек и проверяет результат. Использовать, когда нужно поставить n8n с нуля или обновить уже установленный экземпляр клиента без ручной рутины.
Разворачивает новый n8n через n8n-stack-v2 или обновляет уже существующий, спрашивает только недостающие доступы к серверу, домен, admin_email, пароль администратора и x-license-key, а затем поднимает рабочий стек и проверяет результат. Использовать, когда нужно поставить n8n с нуля или обновить уже установленный экземпляр клиента без ручной рутины.
Развертывание и обновление n8n
Это отдельный навык для работы именно с n8n-stack-v2.
Он должен:
сначала проверить, есть ли в корне проекта файл DANNYE_DLYA_RAZVERTYVANIYA.md;
если файл есть, читать данные оттуда;
если файла нет, создать именно полный канонический шаблон DANNYE_DLYA_RAZVERTYVANIYA.md, а не урезанную версию под текущий этап;
получить доступ к серверу;
проверить, есть ли уже установленный n8n;
если n8n есть, спросить, нужно ли обновление;
если n8n нет, поставить новый;
запросить домен, admin_email и пароль администратора, если их не удалось определить автоматически;
запросить x-license-key, если он нужен для кастомных узлов и дальнейшей связки с MCP;
Не спрашивать пользователя о том, что можно определить на сервере автоматически.
Если в корне проекта есть DANNYE_DLYA_RAZVERTYVANIYA.md, сначала читать его и брать данные оттуда. Если файла нет, создавать полный канонический шаблон целиком.
Если n8n уже найден, до обновления обязательно спросить подтверждение.
Использовать n8n-stack-v2 как единственный стандартный путь установки и обновления.
Деплойный путь считать фиксированным: /root/n8n.
Если нужен x-license-key для кастомных узлов или дальнейшей настройки MCP, обязательно запросить его.
Использовать интерактивную SSH-сессию как основной режим для длинных операций по установке, docker и проверкам.
На этапе этого навыка не создавать прикладные credentials внутри n8n.
Особенно не создавать заранее никакие UI-connections вроде Postgres, Supabase, MCP Postgres, MCP AmoCRM, OpenAI, OpenRouter, Telegram Bot.
Если после чистой установки в UI n8n появился новый прикладной credential Postgres, это считать ошибкой install path, а не допустимым поведением.
Этот навык разворачивает стек и проверяет его целостность. Создание рабочих connections относится только к следующим навыкам.
После установки или обновления выполнять preflight по custom node packages и credential types, а не считать стек готовым только по поднятым контейнерам.
При обновлении сначала делать backup текущего состояния n8n: базы, volume, .env, compose-файлов и пользовательских настроек стека.
При обновлении не допускать потери пользовательских данных: все workflow, credentials, variables, project sharing, tags, users и project bindings должны сохраниться.
Обновление считается успешным только если после перехода на новую версию в n8n остались те же workflow и credentials, а изменилось только состояние стека и версия.
Конфигурация reverse proxy должна быть внутренне согласованной: стек обязан использовать либо docker provider + labels, либо , но не смешивать их внутри одного инстанса.
Обязательные проверки после установки или обновления
проверить, что контейнеры действительно поднялись;
определить project_id;
проверить наличие обязательных custom node packages;
если нужного пакета нет, докачать его сразу;
проверить, что Traefik собран в одном режиме: либо docker provider + labels, либо file provider + dynamic config;
проверить, что при работе за прокси у n8n выставлены N8N_PROXY_HOPS=1 и N8N_EDITOR_BASE_URL;
проверить, что у n8n выставлен N8N_PUSH_BACKEND=websocket;
проверить, что секреты n8n и пароль роли в Postgres совпадают с живым состоянием базы и не разъехались после обновления;
проверить, что после обновления сохранились:
все workflow_entity;
все credentials_entity / shared_credentials;
связи workflow с проектами и credential sharing;
проверить, что у workflow не осталось refs credential.name без credential.id;
открыть editor n8n после полного refresh страницы и убедиться, что нет постоянного Connection lost;
проверить свежие логи n8n и убедиться, что там нет:
Found credential with no ID;
Workflow activation failed validation;
User attempted to access a workflow without permissions;
password authentication failed;
отдельно проверить:
@comandosai/n8n-nodes-amo-crm;
@comandosai/n8n-nodes-doc-extract;
@comandosai/n8n-nodes-lsi-keys;
provider для comandosLsiKeysApi.
Если этих пакетов или credential types нет, навык не должен говорить, что n8n полностью готов к работе отдела продаж.
Что должно быть на выходе
новый или обновленный n8n;
рабочий домен;
рабочий SSL;
согласованная конфигурация Traefik и роутинга;
рабочий n8n editor без Connection lost из-за proxy misconfiguration;
сохраненные настройки стека;
сохраненные workflow, credentials и project sharing;
проверенные или докачанные обязательные packages;
проверенные credential types для кастомных узлов;
отсутствие любых заранее созданных прикладных credentials, особенно Postgres в UI n8n;
отчет о том, что найдено, что обновлено и что осталось сделать дальше.
В конце выдан один конкретный следующий шаг для продолжения общего сценария: векторизация базы или подключение отдела продаж, в зависимости от текущего состояния.
file provider + dynamic config
Если хост или внешний Traefik не поддерживает стабильный docker provider, стек обязан автоматически уходить в file provider, а не ломать install path.
Если n8n ставится за reverse proxy, навык обязан настроить n8n на работу за прокси, включая N8N_PROXY_HOPS=1 и N8N_EDITOR_BASE_URL=https://<домен>.
Для editor push по умолчанию использовать websocket (N8N_PUSH_BACKEND=websocket).
Навык не должен молча перегенерировать пароль приложения n8n, если база уже существует. Секреты .env и пароль роли в Postgres должны оставаться синхронными.
После установки или обновления обязателен smoke-test не только HTTP-доступности, но и переживаемости рестарта: n8n должен подняться повторно с теми же секретами и подключиться к своей базе без password authentication failed.
Нельзя говорить пользователю, что этап завершен, пока editor n8n не открыт после полного refresh страницы и не подтверждено отсутствие постоянного Connection lost.
Нельзя говорить пользователю, что этап завершен, пока не подтверждено, что SQL-аудит refs credential.name без credential.id вернул ноль строк.
Если после обновления или рестарта в n8n остались refs с name без id, нельзя передавать управление следующему навыку.
Нельзя завершать этап, пока в свежих логах n8n не подтверждено отсутствие ошибок:
Found credential with no ID
Workflow activation failed validation
User attempted to access a workflow without permissions
password authentication failed
После каждого этапа самостоятельно предлагать следующий шаг в одном готовом копируемом text-блоке.
Если следующий шаг уже не нужен, потому что он выполнен, пропускать его и предлагать следующий релевантный этап.
Не перекладывать на пользователя навигацию по сценарию.