0 / 0 шагов 0%
🔒
Новичок
У тебя есть ноут — это уже немало
До «Подключён»:
0%
Game Changer Mode · Серверная часть

В вашем ноуте — мощнейший экзокостюм. Сегодня мы строим второй — на сервере, который никогда не спит.

Claude Code на ноуте — это бесконечная сила. Но он умеет всё, кроме одного: пока ваш ноут спит — он спит вместе с вами. Закрыли крышку — встал. Уехали в горы — встал. Ушли спать — встал.

Сегодня мы поднимаем второй экзокостюм на VPS-сервере. Он не спит. Он отвечает в Telegram, пока вы едете в такси. Он крутит n8n-конвейеры, пока вы обедаете. Он генерирует контент, пока вы спите. Это и есть AI-офис 24/7.

Архитектура AI-офиса 24/7: ноут с Claude Code устанавливает софт на VPS-сервер и управляет им; на сервере работают Claude Code, OpenClaw и n8n; результат — 10 AI-агентов, выход в Telegram и мобильное приложение Claude; код синхронизируется с GitHub
Архитектура AI-офиса 24/7 — кто с кем взаимодействует.
Каждый модуль = новая магическая способность вашего AI-двойника. От «Подключён» до «Game Changer» — 11 рангов. На финальном экране ваш Telegram-бот ответит «готово» в 3 ночи, пока вы спите. Это не метафора, это сценарий.
🚀
Следующий уровень — 23 дня полного погружения
Если этого мало — собирай свою AI-операционку под бизнес. Подробности в финале ↓
🛑 Безопасность — прочитать один раз и помнить всегда
  1. Никогда не показывайте никому SSH-ключи, root-пароль, BOT_TOKEN, OpenAI API-ключ, .env файлы. Скриншот с этими данными в чат куратору = чужой получает доступ к вашему серверу.
  2. Никогда не коммитьте секреты в git. В корне репозитория должен быть .gitignore с .env, *.key, secrets/. Если случайно закоммитили — сразу сменить ключ.
  3. Перед публикацией скриншотов закрашивайте: IP сервера, токены, путь до домашней папки, имя пользователя.
  4. Tailscale Funnel = публичный HTTPS. Всё, что туда выставите, видит весь интернет. Защищайте basic auth'ом.
  5. Если что-то пошло не так — спросите Claude Code. Он ваш коллега. Молчать с коллегой — странно. Не угадывайте, не паникуйте — скриншот, вопрос, ответ.
0
Подготовка — что нужно ДО старта
~15 мин · 5 шагов · ранг «Подключён» 🔌
0/5
🔌Цель модуля:ранг «Подключён»
Подписка Claude Max 5 мин
Без неё Claude Code на сервере не запустится. Минимум — план Max ($100/мес), оптимум — Max 5x ($200/мес). Та же учётка, что и на ноуте, авторизация через браузер. claude.com/upgrade
У вас уже есть Max после интенсива? Отлично — проверьте, что сессия живая: запустите claude на ноуте и убедитесь, что не просит логин.
GitHub-аккаунт + приватный репозиторий-воркспейс 3 мин
Создайте на github.com/new приватный репозиторий, например my-claude-workspace. Туда будут попадать ваши промпты, заметки, скилы — и сервер сам подтянет их раз в 30 минут.
Репо должен быть приватным. В нём будут лежать ваши черновики, идеи, контакты. Публичный — это слив наружу.
Банковская карта для Timeweb Cloud 2 мин
Подойдёт казахстанская/российская/международная карта Visa/Mastercard. Для оплаты VPS на месяц нужно ~3500 ₽ на балансе. Без карты не получится — пополнение возможно.
Telegram + готовность создать бота 2 мин
Через @BotFather мы создадим вашего личного помощника. Заранее найдите этих двух ботов в Telegram и нажмите Start: @BotFather (создание ботов) и @userinfobot (узнать свой Telegram User ID).
Только для Windows: установить WSL2 + Ubuntu 5–15 мин
Все команды для сервера выполняются из Linux-терминала, а не из обычной PowerShell. На Windows для этого нужна WSL2 (Linux внутри Windows). Если вы на macOS — пропустите этот шаг.
💻 Windows: PowerShell от имени администратора
wsl --install -d Ubuntu-24.04
После установки обязательно перезагрузите компьютер, затем откройте «Ubuntu» из меню Пуск и придумайте имя пользователя + пароль. Этот пароль ≠ ваш Windows-пароль, его придётся вводить при sudo.
«Я на Windows, поставил WSL2 Ubuntu 24.04. Объясни простыми словами, чем теперь отличается терминал WSL от PowerShell, и какие команды интенсива выполнять где».
1
Берём в руки сервер (Timeweb Cloud)
~45–60 мин · 6 шагов · ранг «Хозяин Сервера» 🗝️
0/6
🗝️Цель модуля:ранг «Хозяин Сервера»
Регистрация на Timeweb Cloud 5 мин
Откройте timeweb.cloud → «Регистрация». Привяжите карту, пополните баланс на ~3500 ₽ (хватит на месяц + резерв).
Это тот самый сервис, на котором стоит сервер Сергея «Intelligent Caelum» — проверено в бою с апреля 2026. Альтернативы: Hetzner, DigitalOcean, Vultr — но шаги в этом чек-листе под Timeweb.
Заказываем VPS 10 мин
В кабинете → «Облачные серверы» → «Создать сервер». Параметры:
📋 Шпаргалка по конфигурации (как у Сергея)
Тариф: Cloud NL-160 — 8 vCPU / 16 ГБ RAM / 160 ГБ NVMe Регион: Амстердам 🇳🇱 (Nederland) Образ: Ubuntu 24.04 LTS Имя сервера: любое, например my-ai-office SSH-ключ: на этом шаге пропустить (добавим потом) Стоимость: ~3300 ₽/мес
Эконом-вариант: Cloud NL-80 (4 vCPU / 8 ГБ / 80 ГБ NVMe, ~1700 ₽/мес) — хватит для 1 OpenClaw + 1 n8n. Если не уверены, начните с него и апгрейдьтесь по мере роста. Меньше 8 ГБ RAM не берите — Docker + Claude + OpenClaw одновременно падают.
Не путайте «облачный сервер» (то, что нужно) с «VDS» или «виртуальным хостингом» (не нужно). Берите именно Cloud.
Получаем root-пароль и публичный IP 2 мин
После создания (1–2 мин) Timeweb пришлёт письмо с данными. В кабинете: ваш сервер → «Дашборд». Запишите два значения:
🔑 Что записать (в безопасное место — менеджер паролей)
IP-адрес: например 185.xxx.xxx.xxx root-пароль: длинная строка Имя сервера: то, что вы дали при заказе
Этот пароль и IP — ключи от вашего сервера. Никому не показывайте, в чат не скидывайте, скриншоты сразу удаляйте после копирования.
Первый SSH-вход на сервер 5 мин
Открываем терминал. На Windows — WSL Ubuntu (НЕ PowerShell). На macOS — Terminal/iTerm. Подставьте свой IP вместо <IP>:
💻 На ПК — терминал (WSL для Windows / Terminal для macOS)
ssh root@<IP>
Введите root-пароль (символы не отображаются — это нормально). Если получилось — слева в терминале появится root@server-name:~#.
«Я первый раз зашёл на свой сервер по SSH. Объясни на русском, что значит каждая часть приглашения root@server-name:~# и почему я не должен пугаться, что пароль не виден при вводе».
Если выдаёт Permission denied — пароль набран с ошибкой (раскладка, Caps Lock). Если Connection refused — IP неправильный. Скриншот ошибки → Claude Code на ноуте: «вот ошибка SSH, что не так?»
Обновляем систему 5 мин
⚠️ НА СЕРВЕРЕ (после ssh root@<IP>)
apt update && apt upgrade -y
Обновление займёт 2–3 минуты. Если спросит «Restart services?» → нажмите Tab, выберите Yes, Enter.
Это команда на сервере, а не у вас на ПК! Слева в терминале должно быть root@…#, а не username@MacBook ~ % или PS C:\Users\…>.
Ставим стартовый стек одной командой 10 мин
«Сейчас я выполню длинную команду на сервере, которая поставит Node.js 22, git, docker, tmux, ufw и curl. Объясни простыми словами, что это за инструменты и зачем каждый нужен в моём AI-офисе».
⚠️ НА СЕРВЕРЕ под root
curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \ apt install -y nodejs git tmux ufw curl && \ curl -fsSL https://get.docker.com | sh && \ node -v && docker --version
В конце на экране должно появиться что-то вроде v22.x.x и Docker version 27.x.x. Если так — стек встал. Если нет — скриншот вывода → Claude Code: «вот что вернул сервер при установке стека, что не так?»
Команда длинная и копипастится в одну строку через \. Не редактируйте, копируйте целиком. Если вставка криво ломается — попробуйте вставить через правую кнопку мыши, а не Ctrl+V.
2
Ставим броню (Hardened SSH + Tailscale VPN)
~60 мин · 9 шагов · ранг «Невидимка» 🕵️
0/9
🕵️Цель модуля:ранг «Невидимка»
⚠️ Самая опасная зона: можно случайно потерять доступ к серверу
В этом модуле мы отключаем root-логин и закрываем публичный SSH. Если перепутать порядок — потеряем доступ. Поэтому шаги идём строго по порядку, ничего не пропуская. Если на любом шаге Claude Code в SSH ругается — скриншот → Claude Code на ноуте: «я делаю модуль 2 шаг N серверного чек-листа, вот что вижу, что дальше?»
Создаём пользователя ikigai с sudo NOPASSWD 5 мин
Работать под root опасно — каждая команда выполняется с максимальными правами. Создаём отдельного пользователя для повседневной работы.
⚠️ НА СЕРВЕРЕ под root
useradd -m -s /bin/bash ikigai && \ usermod -aG sudo,docker ikigai && \ echo 'ikigai ALL=(ALL) NOPASSWD:ALL' | tee /etc/sudoers.d/ikigai && \ chmod 440 /etc/sudoers.d/ikigai && \ mkdir -p /home/ikigai/.ssh && \ chown -R ikigai:ikigai /home/ikigai/.ssh && \ chmod 700 /home/ikigai/.ssh && \ echo "OK: пользователь ikigai создан"
Пользователь называется ikigai, потому что у Сергея так — оставляйте это имя, чтобы все наши промпты совпадали. Можно своё, но придётся вспоминать.
На ноуте создаём SSH-ключ ed25519 3 мин
SSH-ключ — это пара файлов (приватный + публичный), которая заменяет пароль. Безопаснее и удобнее. Если ключ уже есть (вы делали GitHub) — пропускайте, идите к шагу 3.
💻 НА ПК — терминал (WSL / macOS Terminal)
test -f ~/.ssh/id_ed25519 && echo "ключ уже есть" || ssh-keygen -t ed25519 -C "$(whoami)@$(hostname)" -f ~/.ssh/id_ed25519 -N ""
Команда либо скажет «ключ уже есть», либо создаст его без passphrase. Файлы лягут в ~/.ssh/id_ed25519 (приватный, никому!) и ~/.ssh/id_ed25519.pub (публичный, можно показывать).
Копируем публичный ключ на сервер 3 мин
💻 НА ПК — терминал (подставьте свой IP)
cat ~/.ssh/id_ed25519.pub | ssh root@<IP> "cat >> /home/ikigai/.ssh/authorized_keys && chown ikigai:ikigai /home/ikigai/.ssh/authorized_keys && chmod 600 /home/ikigai/.ssh/authorized_keys && echo OK"
Команда заберёт ваш публичный ключ и положит его серверу в правильное место. Введите root-пароль ещё раз. Должно вернуться OK.
Тест: входим под ikigai без пароля 2 мин
💻 НА ПК — новое окно терминала
ssh ikigai@<IP>
Должно зайти без пароля. Если просит пароль — что-то пошло не так с ключом. НЕ закрывайте текущую сессию под root, пока не убедитесь, что вход под ikigai работает! Иначе можете заблокировать себе доступ.
«ssh под пользователем ikigai просит пароль, хотя я скопировал публичный ключ. Помоги разобрать, что не так. Вот вывод ssh -v ikigai@<IP>: [приклеить]».
Отключаем root-логин и пароли в SSH 5 мин
Только когда подтвердили вход под ikigai — отключаем root и парольную аутентификацию. Теперь сервер пустит только по ключу.
⚠️ НА СЕРВЕРЕ — в новой ssh-сессии под ikigai
sudo sed -i 's/^#*PermitRootLogin.*/PermitRootLogin no/; s/^#*PasswordAuthentication.*/PasswordAuthentication no/; s/^#*PubkeyAuthentication.*/PubkeyAuthentication yes/' /etc/ssh/sshd_config && \ sudo systemctl restart ssh && \ echo "OK: SSH захардкорен"
Открываем UFW firewall: 22, 80, 443 3 мин
⚠️ НА СЕРВЕРЕ под ikigai
sudo ufw default deny incoming && \ sudo ufw default allow outgoing && \ sudo ufw allow 22/tcp && \ sudo ufw allow 80/tcp && \ sudo ufw allow 443/tcp && \ echo "y" | sudo ufw enable && \ sudo ufw status
Порт 22 пока открыт миру — закроем его на шаге 9, когда поднимем Tailscale.
Делаем SSH-алиас на ноуте 3 мин
Чтобы не вводить ssh ikigai@<длинный IP> каждый раз — настраиваем короткое имя.
💻 НА ПК — терминал (подставьте свой IP)
cat >> ~/.ssh/config << 'EOF' Host my-ai-office HostName <IP> User ikigai IdentityFile ~/.ssh/id_ed25519 StrictHostKeyChecking accept-new EOF chmod 600 ~/.ssh/config && echo "Теперь работает: ssh my-ai-office"
Откройте ~/.ssh/config в редакторе и замените <IP> на ваш реальный IP. Проверьте: ssh my-ai-office — должно зайти без вопросов.
Поднимаем Tailscale VPN: на сервере и на ноуте 15 мин
Tailscale — это приватная VPN-сеть между вашими устройствами. После настройки сервер и ноут увидят друг друга по приватному IP 100.x.x.x, недоступному из публичного интернета.
⚠️ НА СЕРВЕРЕ под ikigai
curl -fsSL https://tailscale.com/install.sh | sh && \ sudo tailscale up --ssh
Команда выведет URL вида https://login.tailscale.com/a/xxxxxxxx. Откройте его в браузере на ноуте и авторизуйтесь через Google или GitHub. Сервер появится в вашей сети.
💻 НА ПК — поставить Tailscale
https://tailscale.com/download
Скачайте Tailscale на ваш ноут, авторизуйтесь под той же учёткой Google/GitHub. После установки в трее (Windows) или меню-баре (macOS) появится иконка. На сервере проверьте:
⚠️ НА СЕРВЕРЕ — проверить, что ноут виден
tailscale status
В выводе tailscale status должны быть обе машины с приватными IP 100.x.x.x. Запишите Tailscale-IP сервера — он понадобится дальше.
Закрываем публичный 22 порт — SSH только через VPN 5 мин
🛑 СТОП. Перед этим шагом:
1) tailscale status на ноуте показывает сервер; 2) Вы можете зайти ssh ikigai@<tailscale-IP> с ноута. Только тогда закрывайте 22-й порт. Если ошибётесь — потеряете доступ. Если страшно — пишите Claude Code: «безопасно ли мне закрывать публичный 22 порт сейчас? Вот вывод tailscale status: [приклеить]».
⚠️ НА СЕРВЕРЕ под ikigai
sudo ufw delete allow 22/tcp && \ sudo ufw status && \ echo "OK: публичный 22 закрыт. SSH только через Tailscale 100.x.x.x"
Обновите алиас в ~/.ssh/config на ноуте: вместо публичного IP теперь Tailscale-IP сервера.
Поздравляю — ваш сервер только что стал невидимым для всего интернета. Зайти можно только из вашей VPN-сети. Это уровень защиты, до которого 95% владельцев VPS не доходят.
3
Поднимаем мозги (Claude Code на сервере)
~30 мин · 4 шага · ранг «Двойной Разум» 🧠
0/4
🧠Цель модуля:ранг «Двойной Разум»
После этого модуля у вас будет два экзокостюма: один на ноуте — для творчества и видео; второй на сервере — для непрерывной работы 24/7. Они говорят на одном языке. Подробнее в статье «AI-офис IKIGAI за 1 день».
Ставим Claude Code на сервере 5 мин
⚠️ НА СЕРВЕРЕ под ikigai (НЕ под root!)
sudo npm install -g @anthropic-ai/claude-code && claude --version
Установка глобальная (-g) через sudo, но работаем под ikigai, не под root. Версия должна быть 2.x.x или новее.
Авторизуемся через Claude Max 10 мин
⚠️ НА СЕРВЕРЕ под ikigai
claude
При первом запуске Claude Code попросит выбрать тему оформления, а потом — авторизоваться. Появится URL вида https://claude.ai/oauth/authorize?.... Скопируйте его и откройте в браузере на ноуте (через буфер обмена), залогиньтесь в свой Max-аккаунт, скопируйте обратно код подтверждения, вставьте в терминал.
«Я авторизуюсь в Claude Code на сервере. Должен ли я использовать ту же учётку Anthropic, что на ноуте, или создать отдельную? Что будет с лимитами Max?»
После успешной авторизации файл ~/.claude/.credentials.json сохранится на сервере — больше логиниться не нужно. Лимиты Max работают суммарно на ПК + сервер; если сильно нагружаете — берите Max 5x.
Опционально: /config — авто-режим и русский язык 5 мин
Внутри claude наберите /config. Там можно включить «Auto-edit mode» (Claude правит файлы без подтверждения каждого) и сменить интерфейсный язык. Для серверного помощника удобно — он работает в фоне.
Auto-edit mode — мощно, но Claude не спросит перед изменениями. Включайте, когда привыкли. Для повседневной работы на сервере — норм. Для критичных папок — оставьте подтверждения.
Тест двойного разума 10 мин
Внутри claude на сервере напишите буквально это:
🤖 В Claude Code на сервере
Создай в моей домашней папке файл hello-from-server.txt с текстом "Я работаю на сервере, сегодня [текущая дата]. Я — второй экзокостюм Сергея. Я не сплю никогда." Затем покажи мне его содержимое командой cat.
Если файл создался и Claude показал его содержимое — у вас работает Claude Code на двух машинах одновременно. ПК для творчества, сервер для непрерывной работы. Это и есть «Двойной Разум».
4
Заводим первого помощника (OpenClaw + Telegram)
~75–90 мин · 9 шагов · ранг «Призыватель» 🐉
0/9
🐉Цель модуля:ранг «Призыватель»
⚠️ Самый каверзный модуль. У первого потока многие застряли тут
Если за 30 минут любой шаг не пошёл — пишите куратору @ktotothu в Telegram. Не выгорайте в одиночку. Полезно прочитать заранее: «AI-офис сломался? Починили за 20 минут разговором на русском» — там разобраны типовые косяки.
Создаём бота в @BotFather 5 мин
Открыть в Telegram @BotFather → команда /newbot. Ответьте на два вопроса:
📋 Шпаргалка для @BotFather
Имя бота: любое, например My AI Office Username: уникальное, заканчивается на _bot, например my_ai_office_bot
В ответ BotFather пришлёт строку вида 1234567890:ABCdefGHI... — это ваш BOT_TOKEN. Сохраните в менеджер паролей, никому не показывайте.
BOT_TOKEN = пароль от вашего бота. Если утечёт — любой сможет действовать от его имени и тратить ваш Claude API-баланс.
Узнаём свой Telegram User ID 2 мин
Откройте @userinfobot → нажмите Start. Бот пришлёт ваше Id (число вида 93293819). Запишите.
У Сергея Telegram User ID = 93293819. У вас будет своё число. Это ваш «паспорт» в Telegram, по нему OpenClaw поймёт, что писать ему — это ВЫ, а не чужой.
Ставим OpenClaw на сервере 5 мин
⚠️ НА СЕРВЕРЕ под ikigai
sudo npm install -g openclaw && openclaw --version
«Я только что поставил OpenClaw на свой сервер. Объясни простыми словами, что это такое, чем отличается от Claude Code, и что мы будем делать дальше».
Запускаем мастер настройки openclaw onboard 15 мин
OpenClaw сейчас задаст ~10 вопросов. Не торопитесь, отвечайте по шпаргалке.
⚠️ НА СЕРВЕРЕ под ikigai
openclaw onboard
🗂 Шпаргалка ответов
Bot name: любое, например My AI Helper Telegram bot token: вставьте токен из BotFather (шаг 1) Allowed Telegram user IDs: ваш ID из @userinfobot (шаг 2). Только ваш! Anthropic API key: пропустить (Enter) — будем использовать Claude Code subscription MCP-серверы: пока пропустить (No), добавим позже
«Я в OpenClaw onboard, мастер задал такой вопрос: [скопировать вопрос]. По шпаргалке вижу [то-то], но не уверен. Объясни, что отвечать и почему».
Если в «Allowed user IDs» введёте чужой ID или оставите пустым — любой человек в интернете сможет писать вашему боту и тратить ваш Claude API-баланс. Это критично.
Первый ручной запуск: пишем боту «привет» 5 мин
⚠️ НА СЕРВЕРЕ под ikigai
openclaw start
В терминале появятся логи запуска. Откройте Telegram, найдите своего бота (по username из шага 1), нажмите Start. Напишите «привет».
Если бот ответил — вы только что призвали своего первого AI-помощника. Если молчит — скриншот терминала с логами OpenClaw → Claude Code на ноуте: «OpenClaw запущен, бот не отвечает в Telegram, вот логи: [приклеить]».
Делаем 24/7: systemd user service для OpenClaw 15 мин
Сейчас OpenClaw работает только пока вы держите SSH открытым. Делаем так, чтобы он стартовал автоматически и пережил перезагрузку.
⚠️ НА СЕРВЕРЕ под ikigai (сначала Ctrl+C на запущенном openclaw start)
mkdir -p ~/.config/systemd/user && \ cat > ~/.config/systemd/user/openclaw.service << 'EOF' [Unit] Description=OpenClaw Gateway After=network.target [Service] Type=simple ExecStart=/usr/bin/openclaw start Restart=on-failure RestartSec=10 [Install] WantedBy=default.target EOF systemctl --user daemon-reload && \ systemctl --user enable openclaw && \ systemctl --user start openclaw && \ systemctl --user status openclaw --no-pager
«Я создал systemd user service для OpenClaw. Объясни, что значит каждая строка в .service-файле и как мне теперь смотреть логи и перезапускать сервис».
Для логов: journalctl --user -u openclaw -f. Для перезапуска: systemctl --user restart openclaw. Запомните или сохраните в заметки.
Включаем lingering — сервис живёт даже после выхода 2 мин
⚠️ НА СЕРВЕРЕ под ikigai
sudo loginctl enable-linger ikigai && echo "OK: OpenClaw переживёт выход и reboot"
Без этой команды systemd user service умирает, когда ikigai выходит из системы. С ней — живёт всегда.
Проверка боем: reboot и тест бота 10 мин
⚠️ НА СЕРВЕРЕ под ikigai
sudo reboot
Подождите 1–2 минуты, пока сервер перезагрузится. Затем напишите боту в Telegram «ты живой?». Бот должен ответить, не дожидаясь вашего захода по SSH.
Если ответил — OpenClaw работает 24/7. Это значит: вы выключаете ноут, идёте спать, а ваш AI-помощник продолжает отвечать в Telegram. Это и есть AI-офис.
Бонус: первая полезная задача через бота 10 мин
Напишите своему OpenClaw-боту в Telegram реальную задачу:
📱 В Telegram-боте
Напиши мне план поста для LinkedIn на 200 слов про то, как я поднял свой первый AI-сервер 24/7 за один вечер. Тон — экспертный, без хайпа. В конце — призыв спросить меня, как.
Получите готовый текст. Опубликуйте, если хочется — это ваш первый «контент с автомата». Сохраните чат — пригодится для финального achievement-блока.
5
Конвейер автоматизации (n8n + Docker)
~45 мин · 6 шагов · ранг «Архитектор» 🏛️
0/6
🏛️Цель модуля:ранг «Архитектор»
n8n — это «Lego» для автоматизации. Drag-and-drop конструктор: триггер (Telegram / Webhook / Cron) → действие (OpenAI / Notion / GoogleSheets / WhatsApp). Без кода. На нём в 7-м модуле вы запустите своего первого AI-сотрудника-копирайтера.
Проверяем Docker 2 мин
⚠️ НА СЕРВЕРЕ под ikigai
docker --version && docker compose version
Если обе версии вернулись — Docker встал из Модуля 1. Если нет — sudo apt install -y docker.io docker-compose-plugin.
Создаём docker-compose.yml для n8n 10 мин
⚠️ НА СЕРВЕРЕ под ikigai
mkdir -p ~/n8n && cd ~/n8n && cat > docker-compose.yml << 'EOF' services: n8n: image: n8nio/n8n:latest restart: always ports: - "5678:5678" environment: - N8N_BASIC_AUTH_ACTIVE=true - N8N_BASIC_AUTH_USER=${N8N_USER} - N8N_BASIC_AUTH_PASSWORD=${N8N_PASSWORD} - N8N_HOST=0.0.0.0 - N8N_PROTOCOL=http - GENERIC_TIMEZONE=Asia/Almaty - TZ=Asia/Almaty volumes: - n8n_data:/home/node/.n8n volumes: n8n_data: EOF echo "OK: docker-compose.yml создан в ~/n8n/"
Параметр GENERIC_TIMEZONE=Asia/Almaty критичен — иначе крон-задачи в n8n будут срабатывать в UTC и отстанут на 6 часов от Алматы.
Создаём .env с паролем admin 3 мин
⚠️ НА СЕРВЕРЕ в ~/n8n/
cd ~/n8n && \ PASS=$(openssl rand -base64 24 | tr -d '+/=') && \ echo "N8N_USER=admin" > .env && \ echo "N8N_PASSWORD=$PASS" >> .env && \ chmod 600 .env && \ echo "Логин: admin" && \ echo "Пароль: $PASS"
СОХРАНИТЕ пароль немедленно в менеджер паролей. Файл .env на сервере, его никто не увидит, но если вы потеряете пароль — n8n не пустит. Никогда не коммитьте .env в git.
Запускаем n8n 5 мин
⚠️ НА СЕРВЕРЕ в ~/n8n/
cd ~/n8n && docker compose up -d && docker compose logs --tail=20
В логах должно появиться Editor is now accessible via: http://localhost:5678. Контейнер запустился.
Открываем n8n в браузере через Tailscale 5 мин
На ноуте откройте: http://<tailscale-ip-сервера>:5678. Войдите под admin + пароль из .env. Создайте свой n8n-аккаунт (имя, email, пароль) — это владелец workspace.
«Я открыл n8n в браузере по адресу http://100.x.x.x:5678, страница не загружается. Что проверить? Tailscale на ноуте включён, сервер виден в tailscale status».
Делаем публичный HTTPS через Tailscale Funnel 10 мин
Funnel — это публичная HTTPS-ссылка, которая нужна для webhook'ов (Telegram → n8n, Stripe → n8n и т.д.). Сначала включите Funnel в админке Tailscale: login.tailscale.com/admin/dns → DNS → MagicDNS = on, HTTPS Certificates = on.
⚠️ НА СЕРВЕРЕ под ikigai
sudo tailscale funnel --bg 5678
Команда вернёт URL вида https://my-ai-office.<name>.ts.net. Это публичный HTTPS-доступ к вашему n8n. Откройте его в браузере на телефоне — должна спросить логин/пароль admin.
Funnel = публичный интернет. Любой по этой ссылке попадёт на ваш n8n. Поэтому basic auth (логин/пароль admin) обязателен. Без него любой школьник угонит ваш n8n за 5 минут.
6
GitHub auto-pull + единая память (24/7)
~30 мин · 5 шагов · ранг «Нон-стоп» ♾️
0/5
♾️Цель модуля:ранг «Нон-стоп»
После этого модуля любой коммит из вашего рабочего репозитория с ноута через 30 минут окажется на сервере. Claude Code на сервере увидит свежие промпты, скиллы и контекст. Единый мозг на двух машинах. Подробнее в документе «AI-офис IKIGAI: кто что сделал».
Генерируем deploy key на сервере 3 мин
⚠️ НА СЕРВЕРЕ под ikigai
ssh-keygen -t ed25519 -f ~/.ssh/github_deploy_key -N "" -C "ikigai@ai-office" && \ cat ~/.ssh/github_deploy_key.pub
Команда выведет публичный ключ — длинная строка, начинается на ssh-ed25519 AAAA.... Скопируйте её целиком — она нужна для GitHub.
Добавляем deploy key в GitHub-репозиторий 5 мин
Откройте свой приватный репозиторий-воркспейс на GitHub → Settings → Deploy keys → Add deploy key. Заполните:
📋 Шпаргалка для GitHub Deploy Key
Title: my-ai-office (Timeweb) Key: вставьте публичный ключ из шага 1 Allow write access: не ставить галочку — read-only безопаснее
Read-only deploy key позволяет серверу только читать репо, не писать. Если кто-то взломает сервер — он не сможет испортить вам историю коммитов.
Настраиваем SSH для GitHub и клонируем репо 5 мин
⚠️ НА СЕРВЕРЕ под ikigai (замените USER/REPO на ваш репозиторий)
cat >> ~/.ssh/config << 'EOF' Host github-ai-office HostName github.com User git IdentityFile ~/.ssh/github_deploy_key StrictHostKeyChecking accept-new EOF chmod 600 ~/.ssh/config && \ mkdir -p ~/projects && cd ~/projects && \ git clone git@github-ai-office:USER/REPO.git workspace && \ cd workspace && git log --oneline -5
Команда покажет последние 5 коммитов вашего репо — значит подключение работает. Если ошибка Permission denied — deploy key не добавлен или с опечаткой.
Cron auto-pull каждые 30 минут 5 мин
⚠️ НА СЕРВЕРЕ под ikigai
cat > ~/git-auto-pull.sh << 'EOF' #!/bin/bash cd ~/projects/workspace git fetch origin git reset --hard origin/main echo "$(date): pulled" >> ~/git-pull.log EOF chmod +x ~/git-auto-pull.sh && \ (crontab -l 2>/dev/null; echo "*/30 * * * * /home/ikigai/git-auto-pull.sh") | crontab - && \ crontab -l
Теперь каждые 30 минут сервер сам забирает свежие коммиты с GitHub. Логи — в ~/git-pull.log.
Опционально: переносим скиллы и агенты с ноута на сервер 15 мин
Если вы за интенсив накопили ~/.claude/skills/, ~/.claude/agents/, ~/.claude/commands/ — перенесите их на сервер, чтобы там был тот же арсенал.
💻 НА ПК — терминал (с алиасом my-ai-office из Модуля 2)
scp -r ~/.claude/skills my-ai-office:~/.claude/ && \ scp -r ~/.claude/agents my-ai-office:~/.claude/ && \ scp -r ~/.claude/commands my-ai-office:~/.claude/ && \ echo "Скиллы, агенты, команды на сервере"
«Я перенёс свои Claude Code скиллы и агенты с ноута на сервер через scp. Что мне нужно сделать ещё, чтобы Claude на сервере их подхватил? Нужен ли рестарт?»
7
Запускаем первого AI-сотрудника (Copywriting Agent)
~45 мин · 6 шагов · ранг «AI-сотрудник» 🤖
0/6
🤖Цель модуля:ранг «Первый AI-сотрудник»
Это боевой агент-копирайтер из IKIGAI AI Library — тот же, что мы разворачиваем у клиентов. На вход — задача в чат («напиши пост / письмо / VSL-скрипт»), на выход — готовый текст. Внутри: GPT-4.1-mini + два sub-workflow (черновик + редактура).
Скачиваем workflow-архив 2 мин
Скачайте архив с двумя JSON-файлами воркфлоу: copywriting-agent.zip (4 КБ). Распакуйте — внутри GoDmjHs7o-M - 1.json (главный) и GoDmjHs7o-M - 2.json (sub-workflow).
Открываем n8n 2 мин
Откройте n8n в браузере — либо через Tailscale (http://<tailscale-ip>:5678), либо через Funnel-URL из Модуля 5. Войдите под admin.
Импортируем оба workflow 5 мин
В левом меню n8n → Workflows → Import from File. Выберите сначала GoDmjHs7o-M - 2.json (sub-workflow), сохраните. Затем — GoDmjHs7o-M - 1.json (главный), сохраните.
Импортируйте именно в таком порядке: сначала sub-workflow, потом главный. Иначе главный не найдёт свою «руку помощи».
Создаём credential для OpenAI 10 мин
Получите OpenAI API-ключ: platform.openai.com/api-keys → Create → скопируйте (sk-...). На балансе должно быть минимум $5 (этот агент использует gpt-4.1-mini — копейки за вызов).
В n8n → Settings → Credentials → New → OpenAI. Вставьте ключ. Сохраните. Затем откройте импортированные workflow и в OpenAI-нодах привяжите этот credential.
OpenAI API-ключ ≠ ChatGPT-аккаунт. Это отдельная штука с отдельным балансом. Без баланса агент будет ругаться insufficient_quota.
Активируем оба workflow 2 мин
В каждом workflow — переключатель Active в правом верхнем углу. Включите оба. Без этого триггеры не сработают.
🌟 ВАУ-МОМЕНТ: запускаем агента 15 мин
В главном workflow — нода Chat Trigger. Нажмите на неё — справа появится Chat URL вида https://...ts.net/webhook/.../chat. Откройте URL в новой вкладке браузера. Появится чат-окно. Напишите буквально это:
📱 В чат-окно Copywriting Agent
Напиши пост для LinkedIn на 200 слов про то, как я (опиши себя в одном предложении) помогаю клиентам с (опиши услугу). Тон — экспертный, без хайпа. В конце — призыв написать в личку.
Подождите 10–15 секунд. Агент через GPT-4.1-mini вызовет два своих под-агента (черновик + редактура) и вернёт готовый пост. Это первый ваш AI-сотрудник, работающий на вашем сервере 24/7. Не на чужом облаке. На вашем.
Если ошибка про OpenAI: «n8n Copywriting Agent вернул такую ошибку при запуске: [приклеить]. Ключ привязан к credential, баланс есть. Что не так?»
🎯 Закройте ноут. Зайдите с телефона по той же chat-URL. Напишите снова. Получите ответ. Поняли? Сотрудник работает, даже когда ноута нет рядом. Вот ради этого мы 6 часов ставили сервер.
8
Бонус: карманный CEO (Claude Code в Telegram)
~30 мин · 4 шага · ранг «Карманный CEO» 📱
0/4
📱Цель модуля:опциональный — для самых смелых
Этот модуль даёт вам полноценный Claude Code в Telegram: пишите ему задачу с метро («собери дайджест продаж за неделю», «напиши черновик письма клиенту X»), он выполняет на сервере и присылает результат. Сложно, нестабильно, но если получится — это уровень Сергея, у которого Claude Code управляется со смартфона прямо из такси.
Создаём отдельного Telegram-бота для Claude Code 3 мин
Через @BotFather создайте нового бота (не используйте OpenClaw-бота из Модуля 4). Username, например, my_claude_code_bot. Сохраните токен.
Устанавливаем плагин channels для Claude Code 5 мин
⚠️ НА СЕРВЕРЕ под ikigai
claude
Внутри Claude Code: /plugin marketplace add anthropics/claude-plugins, затем /plugin install telegram@claude-plugins-official. Подтвердите.
«Я ставлю Telegram-плагин для Claude Code на сервере. Объясни, чем этот режим отличается от OpenClaw, и в каких случаях лучше использовать каждый».
Настраиваем токен и allowlist 10 мин
⚠️ НА СЕРВЕРЕ под ikigai
mkdir -p ~/.claude/channels/telegram && \ echo "TELEGRAM_BOT_TOKEN=<ваш_новый_токен>" > ~/.claude/channels/telegram/.env && \ echo '{"allowlist": ["<ваш_telegram_user_id>"]}' > ~/.claude/channels/telegram/access.json && \ chmod 600 ~/.claude/channels/telegram/.env
Allowlist обязателен. Без него любой пользователь Telegram сможет писать вашему Claude Code и тратить ваши лимиты Max.
Запускаем в tmux + автостарт по reboot 10 мин
⚠️ НА СЕРВЕРЕ под ikigai
cat > ~/start-claude-tg.sh << 'EOF' #!/bin/bash cd ~/projects/workspace tmux kill-session -t claude-tg 2>/dev/null tmux new-session -d -s claude-tg tmux send-keys -t claude-tg 'claude --channels plugin:telegram@claude-plugins-official' Enter sleep 3 tmux send-keys -t claude-tg 'y' Enter EOF chmod +x ~/start-claude-tg.sh && \ (crontab -l 2>/dev/null; echo "@reboot sleep 30 && /home/ikigai/start-claude-tg.sh >> /home/ikigai/claude-tg.log 2>&1") | crontab - && \ ~/start-claude-tg.sh && \ echo "OK: Claude Code в Telegram запущен. Напиши боту в TG."
Откройте своего Claude-Code-бота в Telegram, нажмите Start, напишите: «собери и пришли мне 3 свежих новости про AI на русском, со ссылками». Если ответил — у вас в кармане ваш собственный CEO-помощник.
«Claude Code в Telegram запущен на сервере, но бот не отвечает. Покажи, как смотреть логи, где какие файлы и что чаще всего ломается».
⚡ AI-Сенсей · следующий уровень

Вы построили инфраструктуру. Дальше — готовые AI-связки

Сегодня вы подняли сервер и запустили один AI-агента. У нас в IKIGAI таких агентов работает десять штук — копирайтер, контент-агент, аналитик трендов, лидген, AmoCRM-синхро, конкурентный мониторинг и ещё. Если не хотите 3 месяца собирать каждую с нуля — берите готовое.

Открыть IKIGAI AI Library →
Все пакеты разворачиваются на вашем новом сервере через Claude Code за 1–2 часа.
🚀 Следующий уровень

Хочешь глубже? 23 дня полного погружения

Не курс — а сборка собственной AI-операционной системы под задачи бизнеса.
«Сервер — это инфраструктура. Полное погружение — это операционка, которую ты строишь под себя и масштабируешь.»
01
AI-first база
Как думают нейросети, продвинутый промптинг, ускорение аналитики ×5
02
AI-агенты
n8n, архитектура агентов, первый AI-ассистент, база знаний Pinecone
03
Вайб-кодинг
Cursor + Claude Code, MCP, API, парсеры, деплой реальных продуктов
04
AI-маркетинг
Анализ рынка, фабрика креативов, автоматизация контента, cold outreach
05
Финал
Сборка собственных проектов, демо-день, разборы, масштабирование
23
дня
4–5
часов / день
880K
тенге
Результат: ты строишь AI-системы, автоматизируешь процессы и создаёшь продукты без разработчиков.
Узнать подробнее →
deep.ikigaipromotion.kz · следующий поток скоро
🏆
GAME CHANGER
У вас был ноутбук. Теперь у вас — AI-офис, который работает, пока вы спите, едите и живёте. Покажите свой первый автономный результат в общий чат интенсива — пусть остальные увидят, что это возможно.