У клиента уже есть колонка — любая: Bluetooth, AUX, смарт-колонка, телевизор, Hi-Fi. Она остаётся у клиента — покупать нечего. Клиент подключает её к нашему УУП (Устройство Управления Приёмника) — по Bluetooth, AUX-проводу или HDMI — и наш МАЛЫШ сразу делает всё, что положено: говорит погоду, ставит будильник и будит голосом через выбранную колонку. Всё в этой вкладке тюнится под свои потребности — каждое значение дом помнит.
Честно про звук: голос МАЛЫША идёт в системный вывод операционной системы — сделай свою колонку выводом по умолчанию (Bluetooth/AUX), и всё зазвучит из неё. Если браузер умеет выбирать выход напрямую (Chrome/Edge умеют), УУП переключит выход прямо здесь, списком ниже; гонг будильника и проба-тон играют через выбранный выход. OMNISPEAKER-1 (вкладки ниже) остаётся эталонным проектом «железной» колонки — для работы дома он теперь не нужен.
Колонку, подключённую Bluetooth'ом или AUX'ом к компьютеру/телефону, система сама сделает доступной — УУП покажет её в списке. Тон-проба играет 3 секунды через выбранную колонку; выбор дом помнит.
Речь — родной синтез браузера, голоса системы; офлайн работает. Голос, скорость, высота и громкость тюнуются и помнятся.
Источник — Open-Meteo: без ключа, без аккаунта, без слежки; запрос уходит ТОЛЬКО по нажатию кнопки — дом сам погоду не таскает. Без сети — честный кэш: «данные от …».
Честная граница браузера: дверь должна быть открытой (дом открыт в фоне — это нормально для дома), иначе вкладку усыпит система, и МАЛЫШ про это скажет прямо, без обещаний.
Router Agent (SLM 1.5B) разбирает намерение → Planner (LLM 7B) строит DAG → каждый шаг проходит Policy Engine. Риск medium/high — подтверждение голосом или кнопкой; critical — PIN. Замок: policy требует 2FA — демо показывает честный конвейер.
План появится здесь. Каждая строка — шаг с риском и вердиктом политики.
камера 0.80 L · пассивный излучатель TPU 85 мм · настройка ≈ 58 Гц · PETG 35% gyroid
Честно: чертёж — 2D-проекция модели из cad/omnispeaker_shell.scad; «проба звука» — синтез браузера через WebAudio (демо тона), а не динамик колонки. Аппроксимация настройки излучателя: f ≈ 58·√(0.8/V) Гц.
Когда микрик выключен, голосовые шаги DAG-планов помечаются в аудите как «ухо обесточено» — конвейер честно показывает, что слуха нет. Шторка закрыта — бейдж камеры красный.
| откуда | куда | порты | вердикт |
|---|
Это те самые файлы, что лежат в репе рядом (КОЛОНКА/): policy_rules.json — таблица рисков Policy Engine; docker-compose — контейнерный стек (Whisper, Piper, Core) с OFFLINE_MODE=true; OpenWrt — nftables-изоляция VLAN 20 от интернета.
Полная версия с шагами и чек-листами — дистрибутив КОЛОНКА/ (docs/07_DETAILED_ROADMAP.md).
Каждый орган — вещь из window.КОЛОНКА. Проба = вызов безопасной функции органа и замер времени. Мёртвый орган краснеет сразу: деклараций дом не держит.
Демо-режим: любой 4-значный PIN принимается — железо ещё не собрано. В боевом колонке здесь voice_prompt_pin + pwa_2fa по policy_rules.json.
ECDSA P-256 + SHA-256 через Web Crypto: паспорт узла создаётся и проверяется прямо на устройстве; приватный ключ никуда не уходит и не хранится домом. 0 сети.