Hercules спроектирован как крошечный самообучающийся микро-агент. Один из самых убедительных сценариев развёртывания — Raspberry Pi на edge: недорогое устройство, на котором работает агент с одной чёткой задачей, подключённый к сенсорам и актуаторам и при необходимости участвующий в большей сети агентов. Сам LLM работает вне Pi (YandexGPT, Ollama Cloud или любой OpenAI-совместимый провайдер) — Pi исполняет runtime агента, а не модель.
Этот документ собирает реалистичные микро-сценарии для B2C и B2B. Каждый сценарий намеренно мал, вертикально сфокусирован и развёртывается как один агент Hercules на одном Pi.
┌───────────────────────────────────────────────┐
│ Raspberry Pi (edge) │
│ ┌────────────┐ ┌──────────┐ ┌───────────┐ │
│ │ Сенсоры │ │Актуаторы │ │ Hercules │ │
│ │ GPIO/I2C │ │ GPIO │ │ micro- │ │
│ │ MQTT │ │ relay │ │ agent │ │
│ └─────┬──────┘ └────┬─────┘ └─────┬─────┘ │
│ │ │ │ │
│ └──────────────┴───────────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ skills/ memory │ │
│ │ data/ (local) │ │
│ └─────────────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ LLM-провайдер │ │
│ │ (cloud/fallback)│ │
│ └─────────────────┘ │
└───────────────────────────────────────────────┘
Ключевые допущения на этой фазе:
- Pi хостит runtime Hercules, навыки, память и интерфейсы к устройствам.
- LLM работает вне Pi (облачный провайдер по API-ключу).
- У агента одна чёткая ответственность на устройство.
- Несколько Pi-агентов могут находить друг друга и формировать mesh.
Цель: поддерживать комфортные условия в одном балконном ящике, небольшой теплице или grow tent.
Имя агента: hercules-greenhouse-{id}
Устройства на Pi:
- DHT22/BME280 — температура и влажность
- Датчик влажности почвы
- Модуль реле — помпа для полива и фитолампа
- Опционально: датчик освещённости
Навыки:
water-plant— полив, когда влажность почвы ниже порога и по расписанию.control-climate— включение вентилятора/обогрева/увлажнителя по температуре/влажности.light-schedule— фитолампа по времени суток и сезону.alert-owner— Telegram-оповещение при аномалии.
Память:
- Профиль растения (вид, предпочтительная температура/влажность, график полива).
- История минимумов/максимумов/средних значений сенсоров.
- Предпочтения владельца (тихие часы, режим отпуска).
Почему микро: один Pi, одна теплица, один агент. Пользователь пишет в Telegram: "Как мой базилик?" — агент читает сенсоры, сверяется с памятью и отвечает с контекстом.
Цель: отслеживать расход электроэнергии одного прибора или комнаты и давать советы.
Имя агента: hercules-energy-{id}
Устройства на Pi:
- PZEM-004T или Shelly EM — счётчик мощности по TTL/Wi-Fi
- Опционально: реле для отключения standby-нагрузки
Навыки:
log-consumption— читать ватты каждую минуту, писать в SQLite.detect-anomaly— помечать необычные всплески относительно исторического baseline.suggest-savings— раз в день суммировать расход и предлагать действия.appliance-identify— отвечать на "сколько мой холодильник потребляет?" по сигнатурам.
Память:
- Сигнатуры приборов (паттерны включения/выключения, типичная мощность).
- Потребление по дням/неделям/месяцам.
- Тарифы.
Почему микро: дёшево развернуть на комнату. Со временем навыки улучшаются и отличают приборы по сигнатуре мощности.
Цель: следить за комфортом и безопасностью одной комнаты, а не всего дома.
Имя агента: hercules-room-{id}
Устройства на Pi:
- DHT22 — температура и влажность
- PIR — движение
- Микрофонный модуль (только локальный триггер, без облачного аудио) — детектор плача/крика
- Опционально: датчик качества воздуха
Навыки:
comfort-check— сообщать, если в комнате жарко/холодно/сыро.presence-summary— в конце дня отмечать необычные паттерны присутствия/отсутствия.cry-alert— локальный триглер шлёт оповещение родителю.sleep-insight— коррелирует температуру/влажность с движением/плачем со временем.
Память:
- Нормальный дневной паттерн.
- История оповещений и false-positive feedback.
Почему микро: privacy-first, одна комната, только локальные аудио-триггеры. LLM используется для естественно-языковых саммари, а не для потоковой обработки аудио.
Цель: кормить питомца по расписанию и отвечать хозяину об истории кормления.
Имя агента: hercules-pet-{id}
Устройства на Pi:
- Серво или реле для управления кормушкой
- Тензодатчик — измерить остаток корма
- Датчик движения у миски
Навыки:
feed-now— выдать порцию.schedule-feed— ежедневный план кормления.low-food-alert— предупреждать, когда корм заканчивается.diet-qna— отвечать "кошка сегодня ела?" по логам.
Память:
- Профиль питомца (вид, вес, диетические замечания).
- Лог кормления и feedback владельца.
Почему микро: один питомец, одно устройство, один агент. Навыки развиваются вокруг распорядка конкретного питомца.
Цель: защищать одну комнату (гараж, мастерская, комната 3D-печати) от вредного воздуха.
Имя агента: hercules-air-{id}
Устройства на Pi:
- MH-Z19B / SCD40 — CO2
- PMS5003 — частицы
- SGP30 — VOC
- Реле — вытяжной вентилятор
Навыки:
ventilate-on-threshold— включать вентилятор при превышении безопасного уровня.air-report— естественно-языковое саммари текущего качества воздуха.job-safety-check— перед шлифовкой/печатью проверять, достаточно ли вентиляция.maintenance-reminder— предлагать калибровку сенсора или замену фильтра.
Память:
- Базовые уровни по сезону/времени суток.
- Лог событий (циклы вентилятора, всплески).
Почему микро: нацелен на одну опасную комнату, а не на всё здание HVAC.
Цель: следить за температурой одного холодильника/морозилки и вести compliance-лог.
Имя агента: hercules-coldchain-{id}
Устройства на Pi:
- Водонепроницаемый датчик температуры DS18B20
- Датчик двери
- Опционально: 4G USB-модем для удалённых точек
Навыки:
temperature-log— лог каждую минуту.out-of-range-alert— немедленное оповещение при выходе за допустимый диапазон.compliance-report— ежедневный PDF/CSV для инспектора.door-left-open— оповещение, если дольше открыта.
Память:
- Профиль продукта (вакцины, молочка, заморозка) с требуемым температурным диапазоном.
- История инцидентов.
Почему микро: один холодильник = один агент = одна лицензия/подписка. Навыки улучшаются под тип продукта на разных объектах.
Цель: оптимизировать одну переговорку или зону open-space.
Имя агента: hercules-room-comfort-{id}
Устройства на Pi:
- BME680 — температура, влажность, CO2, VOC
- PIR — occupancy
- Реле — управление локальным вентилятором/розеткой кондиционера или жалюзи
Навыки:
occupancy-boost— предварительно проветривать/охлаждать перед бронированием.air-quality-alert— предупреждать при высоком CO2.end-of-day-report— саммари комфорта и энергии.book-room-qna— отвечать "комфортно ли сейчас в переговорке 3?"
Память:
- Интеграция с календарем помещения.
- История comfort score.
Почему микро: одна комната, один агент, легко масштабировать этаж за этажом.
Цель: мониторить один шкаф, стойку или edge-узел и реагировать на экологические проблемы.
Имя агента: hercules-closet-{id}
Устройства на Pi:
- DS18B20 — температура на входе и выходе
- DHT22 — влажность
- Реле — умная розетка PDU
- Сетевой интерфейс — ping локальных устройств
Навыки:
thermal-alert— оповещение при перегреве выходного воздуха.device-ping-check— проверка доступности роутера/коммутатора/NAS.graceful-shutdown— отключение некритичного оборудования при критической температуре.incident-summary— генерация таймлайна событий.
Память:
- Инвентарь устройств и их критичность.
- Тепловой baseline и сезонные корректировки.
Почему микро: один шкаф = один агент. IT может развернуть десятки с одинаковым базовым конфигом и per-site overrides.
Цель: сделать один автомат разговорчивым и проактивным.
Имя агента: hercules-vending-{id}
Устройства на Pi:
- Сенсорный экран или подключённый планшет
- GPIO к контроллеру автомата / платёжному модулю
- Датчик температуры (для food-машин)
- Камера (опционально, для визуальной проверки остатков)
Навыки:
answer-product-question— "Этот снек веганский?" по каталогу.report-stock— оповещение оператора при низком запасе.temperature-alert— для refrigerated-машин.handle-complaint— логировать проблему и предлагать код возврата.
Память:
- Каталог продуктов.
- История транзакций и жалоб.
- График пополнения.
Почему микро: один автомат, один агент, независимость от центральной платформы.
Цель: отслеживать использование и состояние одного генератора, компрессора или комплекта лесов.
Имя агента: hercules-equipment-{id}
Устройства на Pi:
- Датчик вибрации (SW-420 / ADXL345)
- Токовые клещи — моточасы
- GPS-модуль — геолокация
- Реле — остановка двигателя (только авторизованно)
Навыки:
usage-log— считать моточасы.geofence-alert— оповещение при выезде со стройплощадки.maintenance-due— прогнозировать следующее ТО по часам/вибрации.rental-summary— ежедневный отчёт об использовании для арендного отдела.
Память:
- Модель оборудования и интервалы обслуживания.
- Границы стройплощадки.
- Даты арендного договора.
Почему микро: один актив, один агент, переживает нестабильную связь, буферизуя данные локально.
| Паттерн | Как это помогает Hercules |
|---|---|
| Один агент = один физический объект | Простое развёртывание, владение, биллинг. |
| Локальные навыки, облачный LLM | Pi отвечает за логику; LLM даёт естественный язык и reasoning. |
| Навыки улучшаются на каждом объекте | Каждое устройство учит свои пороги и предпочтения владельца. |
| Mesh при необходимости | "Домашний хаб" или "флит-менеджер" может спросить у комнатного агента статус. |
| Устойчивость к офлайну | Сенсоры продолжают логироваться; алерты ставятся в очередь; навыки не зависят от постоянного облака. |
Минимальный референсный набор Pi для любого сценария:
- Raspberry Pi 4 (2 ГБ) или Raspberry Pi Zero 2 W для лёгких нагрузок.
- SD-карта 32 ГБ+ (или SSD для интенсивного логирования).
- Ethernet или Wi-Fi.
- Docker или самодостаточный
dotnet-исполняемый файл. - API-ключ внешнего LLM в
appsettings.jsonили переменной окружения.
Сам Hercules остаётся маленьким: один процесс, одна папка data/, один конфиг.
Для каждого сценария путь к продаваемому продукту одинаков:
- Шаблон агента — готовые навыки, схема памяти и схема подключения устройств.
- Образ SD-карты — ready-to-flash Pi-образ с Hercules + шаблон.
- Flow активации — пользователь задаёт Wi-Fi и API-ключ, агент регистрируется в mesh/облаке.
- Управляемый mesh — опциональный центральный dashboard со списком всех развёрнутых агентов.
Тот же runtime обслуживает B2C (одно устройство дома) и B2B (сотни устройств в поле). Разница только в масштабе и способе провижининга.
- Выбрать один сценарий как референсную реализацию.
- Определить GPIO/MQTT-интерфейс между Hercules и железом.
- Собрать первый шаблон агента (теплица рекомендуется как самый дружелюбный старт).
- Валидировать схему памяти и навыков на реальных сенсорных данных.
За mesh-видением см. docs/AGENT-MESH-RU.md.
За поэтапным roadmap см. docs/ROADMAP-RU.md.