Урок 2. Варианты установки HAPI#
Зачем это нужно#
В первом уровне курса вы, скорее всего, установили HAPI самым простым способом. Но HAPI поддерживает несколько вариантов подключения — от «всё работает из коробки» до полностью самостоятельного развёртывания. В этом уроке мы разберём каждый вариант, чтобы вы могли выбрать подходящий.
Напоминание: три компонента HAPI#
Прежде чем выбирать вариант установки, вспомним структуру:
| Компонент | Что делает | Обязателен? |
|---|---|---|
| CLI | Запускает AI-агента | Да |
| Hub | Центральный сервер, хранит данные | Да |
| Runner | Фоновый сервис для удалённого запуска сессий | По желанию |
Установка CLI#
Есть несколько способов установить CLI:
Способ 1: npm (рекомендуется)#
npm install -g @twsxtd/hapinpm — менеджер пакетов для JavaScript. Если у вас установлен Node.js, npm уже есть на вашем компьютере.
Способ 2: Homebrew (для macOS)#
brew install tiann/tap/hapiСпособ 3: Без установки (npx)#
npx @twsxtd/hapiЭтот способ скачивает и запускает HAPI «на лету» — удобно для быстрой проверки.
Способ 4: Готовый файл (binary)#
Скачайте файл с GitHub Releases и выполните:
chmod +x ./hapi # Разрешить запуск
sudo mv ./hapi /usr/local/bin/ # Переместить в системную папкуЧетыре варианта подключения Hub#
Главный вопрос: как вы будете подключаться к Hub с телефона? Вот четыре варианта:
Вариант 1: Relay (по умолчанию) ⭐#
Что это: Встроенный сервис, который автоматически создаёт безопасный туннель к вашему Hub через интернет.
Для кого: Для большинства пользователей. Работает «из коробки».
Как запустить:
hapi hub --relayПосле запуска в терминале появится:
- URL-адрес для доступа
- QR-код — отсканируйте телефоном
Плюсы:
- ✅ Никакой настройки — просто работает
- ✅ Работает за NAT и файрволом (даже если провайдер «прячет» ваш компьютер)
- ✅ Шифрование WireGuard + TLS
- ✅ Бесплатно
Нюансы:
- По умолчанию используется UDP-протокол. Если возникают проблемы с подключением, включите TCP-режим:
export HAPI_RELAY_FORCE_TCP=true
hapi hub --relayUDP и TCP — два способа передачи данных в интернете. UDP — быстрее, но может блокироваться некоторыми сетями. TCP — надёжнее, работает практически везде.
Вариант 2: Cloudflare Tunnel#
Что это: Бесплатный сервис от компании Cloudflare, который создаёт безопасный туннель к вашему серверу.
Для кого: Для тех, кто хочет свой домен (например, hapi.вашсайт.com) и больше контроля.
Как настроить:
-
Установите
cloudflaredс сайта Cloudflare -
Создайте именованный туннель:
cloudflared tunnel create hapi
cloudflared tunnel route dns hapi hapi.yourdomain.com- Запустите туннель:
cloudflared tunnel --protocol http2 run hapi- Запустите Hub (без –relay):
hapi hubПлюсы:
- ✅ Свой красивый домен
- ✅ Бесплатно
- ✅ Надёжная инфраструктура Cloudflare
Нюансы:
- ⚠️ Быстрые туннели (TryCloudflare) не поддерживаются — они не работают с SSE, который HAPI использует для обновлений в реальном времени. Нужен именно «именованный» (named) туннель.
- ⚠️ Используйте флаг
--protocol http2— протокол QUIC (по умолчанию) может вызывать проблемы с длительными соединениями.
Вариант 3: Tailscale#
Что это: VPN-сервис, который объединяет ваши устройства в частную сеть. Все ваши устройства получают специальные IP-адреса и «видят» друг друга, как будто находятся в одной локальной сети.
Для кого: Для тех, у кого несколько устройств и кто хочет простую частную сеть.
Как настроить:
- Установите Tailscale: tailscale.com/download
- Подключитесь:
sudo tailscale up- Запустите Hub:
hapi hub- Откройте в браузере телефона (Tailscale должен быть установлен и на телефоне):
http://100.x.x.x:3006Адрес
100.x.x.x— это ваш Tailscale IP. Узнать его можно командойtailscale ip.
Плюсы:
- ✅ Полностью частная сеть — трафик не проходит через чужие серверы
- ✅ Простая настройка
- ✅ Бесплатно для личного использования (до 100 устройств)
Нюансы:
- ⚠️ Tailscale нужно установить на все устройства (компьютер + телефон)
Вариант 4: Самостоятельный хостинг (Self-hosted)#
Что это: Вы разворачиваете Hub на сервере с публичным IP-адресом (VPS, облачный сервер).
Для кого: Для опытных пользователей, которые хотят полный контроль.
Как настроить:
- На сервере (VPS) запустите Hub:
hapi hub- Настройте обратный прокси (Nginx, Caddy) для HTTPS:
Обратный прокси (reverse proxy) — программа, которая принимает запросы из интернета и перенаправляет их на ваш Hub. Она также может добавить шифрование HTTPS.
- На вашем рабочем компьютере настройте подключение CLI к серверу:
export HAPI_API_URL="https://ваш-сервер.com"
export CLI_API_TOKEN="ваш-токен"
hapiИли используйте интерактивную авторизацию:
hapi auth loginПлюсы:
- ✅ Полный контроль над всем
- ✅ Минимальная задержка (если сервер близко)
- ✅ Не зависите от сторонних сервисов
Нюансы:
- ⚠️ Нужен сервер (VPS) — от ~$5/мес
- ⚠️ Нужно настроить HTTPS (Let’s Encrypt — бесплатно)
- ⚠️ Нужно следить за безопасностью
Сравнительная таблица#
| Критерий | Relay | Cloudflare | Tailscale | Self-hosted |
|---|---|---|---|---|
| Сложность | ⭐ Легко | ⭐⭐ Средне | ⭐⭐ Средне | ⭐⭐⭐ Сложно |
| Стоимость | Бесплатно | Бесплатно | Бесплатно | VPS ~$5/мес |
| Свой домен | Нет | Да | Нет | Да |
| Шифрование | WireGuard+TLS | TLS | WireGuard | Настраиваете сами |
| Приватность | Через Relay-сервер | Через Cloudflare | Полная | Полная |
Настройка Runner (фоновый сервис)#
Независимо от варианта подключения, вы можете настроить Runner — фоновый сервис, который позволяет запускать сессии с телефона:
hapi runner start # Запустить
hapi runner status # Проверить статус
hapi runner logs # Посмотреть логи
hapi runner stop # ОстановитьС запущенным Runner:
- Ваш компьютер появится в списке «Машины» в Web App
- Вы сможете запускать новые сессии удалённо
- Сессии работают даже после закрытия терминала
Как сделать, чтобы HAPI работал постоянно#
Чтобы Hub и Runner не останавливались при закрытии терминала:
Быстрый способ (nohup):#
nohup hapi hub --relay > ~/.hapi/logs/hub.log 2>&1 &
nohup hapi runner start --foreground > ~/.hapi/logs/runner.log 2>&1 &Надёжный способ (pm2):#
npm install -g pm2
pm2 start "hapi hub --relay" --name hapi-hub
pm2 start "hapi runner start --foreground" --name hapi-runner
pm2 startup # Автозапуск при перезагрузке
pm2 savepm2 — менеджер процессов, который автоматически перезапускает программы при сбоях и при перезагрузке компьютера.
Итоги урока#
- Relay — самый простой вариант, работает из коробки, подходит большинству
- Cloudflare Tunnel — если хотите свой домен и надёжную инфраструктуру
- Tailscale — если хотите полностью частную сеть между устройствами
- Self-hosted — если хотите полный контроль и у вас есть свой сервер
- Runner позволяет запускать сессии удалённо с телефона
- Используйте pm2 или systemd для постоянной работы HAPI