Инженер опубликовал на Хабре ретроспективу двухмесячной работы с openLight — своим легковесным локальным AI-агентом для управления личной инфраструктурой. Проект начинался как Telegram-бот на Go с SQLite и Ollama для Raspberry Pi. Итог: почти полный рерайт кода и принципиально новое понимание того, что такое полезный AI-агент.
Контекст
Homelab-культура существует давно: держать дома или на арендованном VPS несколько машин — Raspberry Pi, старые ThinkPad, Mac mini — для своих сервисов. Matrix, Tailscale, Docker-стек, локальный мониторинг. Управлять всем этим через SSH с телефона неудобно. AI-агенты казались очевидным решением.
Но стандартные инструменты плохо ложатся на homelab. Kubernetes избыточен. Большие AI-agent frameworks — тяжёлые, облачные, рассчитанные на корпоративную инфраструктуру. Ниша «маленьких always-on машин» остаётся плохо закрытой.
openLight — попытка закрыть именно эту нишу: один Go-бинарь весом около 25 МБ, один YAML-конфиг, SQLite. Telegram как интерфейс. Ollama как локальный LLM-fallback. Никаких runtime-зависимостей — деплой через scp + systemd.
Аналитика
Главный вывод автора звучит контринтуитивно на фоне хайпа вокруг autonomous agents: большинство запросов к LLM не должны до него доходить вообще. Правильная архитектура — deterministic-first: rule-based parsing → semantic mapping → и только если ничего не сработало, модель. Половина задержки в ранней версии была банальным ожиданием инициализации модели на Pi. Когда убрали LLM из критического пути — система стала быстрее и предсказуемее одновременно.
Второй инсайт: безопасность через skill-границы, а не через порог уверенности модели. LLM выбирает из заранее определённых функций, каждая из которых имеет allowlist-проверки в Go-коде. Модель — классификатор намерения, не носитель привилегий. Популярная альтернатива — «дать модели shell и надеяться на лучшее» — для инфраструктуры неприемлема.
Третий инсайт касается monitoring loop: кнопки в Telegram-алертах («Restart», «Logs», «Ignore») вызывают тот же skill path, что и ручные команды. Никакого отдельного режима автоматизации с расширенными привилегиями. Один audit path. Это прямо противоположно тому, куда движется мейнстримный AI-agent tooling — и именно поэтому система надёжно работает два месяца без сюрпризов. Маленькие локальные модели вроде Qwen 0.5B на Raspberry Pi вполне справляются с routing и classification — полноценный GPT здесь просто не нужен.
Кейсы применения в бизнесе
B2B-SaaS стартап на VPS. Команда из 3–5 человек держит несколько Docker-сервисов на Hetzner или аналоге. Интегрировать подобный ops-бот как внутренний инструмент команды: перезапуск сервисов, просмотр логов, мониторинг ресурсов — всё через общий Telegram-чат. Эффект: дежурный инженер не нужен для инцидентов уровня «сервис упал, нужно поднять».
Корпорация с legacy-инфраструктурой. Отдел IT держит парк серверов с нестандартным стеком. Тонкий агентный слой поверх SSH-точек входа — без замены инфраструктуры. Audit log всех действий в одном файле упрощает compliance. Подход применим там, где внедрение полноценных ITSM-платформ заблокировано бюджетно или организационно.
SMB и локальный бизнес в КР/СНГ. Небольшая компания с одним сервером или VPS, где нет выделенного sysadmin. Владелец или тим-лид получает Telegram-бота, который умеет перезапускать сервисы и отправлять алерты. Порог входа — понимание Docker Compose. Стоимость — нулевая. При ограниченном IT-бюджете это рабочая альтернатива платным мониторинговым сервисам.
Кейсы в личной жизни
Разработчик с homelab. Raspberry Pi, NAS или старый ноутбук как домашний сервер. Подобный агент убирает необходимость открывать ноутбук ради рутинных проверок: статус сервисов, перезапуск, просмотр логов — с телефона за несколько секунд. Особенно ценно в поездках или когда доступен только смартфон.
Self-hosted энтузиаст. Держит Matrix, Nextcloud, Vaultwarden и ещё пяток сервисов. Watch-цикл мониторинга с настраиваемыми порогами по CPU и доступности снимает необходимость вручную проверять дашборды. Алерт с кнопкой действия прямо в чате — быстрее, чем любой Grafana в браузере.
Студент или джуниор-разработчик. openLight — хорошая учебная кодовая база: Go, SQLite, Telegram Bot API, локальный LLM через Ollama, SSH-управление удалёнными нодами. Изучить детерминированный routing и skill-based архитектуру на реальном рабочем проекте ценнее большинства туториалов. Код открыт.
Как применить сегодня
- Найти репозиторий evgenii-engineer/openLight на GitHub — изучить структуру YAML-конфига и README.
- Если есть Raspberry Pi, VPS или Mac mini с Ollama — попробовать развернуть: бинарь около 25 МБ, деплой через scp + systemd занимает 10–15 минут.
- Изучить паттерн deterministic-first routing как архитектурное решение — он применим к любому проекту, где LLM используется для классификации намерений, не только homelab.
- Если строите собственного AI-агента: проверьте, можно ли убрать LLM из критического пути для большинства запросов. Скорее всего — можно, и это ускорит систему и снизит стоимость.
- Для мониторинга сервисов внедрите паттерн «кнопка в алерте вызывает тот же skill, что и ручная команда» — единый audit path и никаких скрытых привилегий у автоматики.