Files
kk0t9 9e685edd02 docs: заложить фундамент проектирования Штурмана
Каркас документации + содержательный фундамент (фаза проектирования,
реализация отложена):

- vision: видение, позиционирование, границы (вариант B, 2 красные линии)
- principles: 13 сквозных принципов (red lines, offline-first, power-safe…)
- architecture: тонкое ядро + SDK, planes, lifecycle, песочница, хостинг UI,
  карта связей + журнал из 6 решений
- dev-environment: разработка с Mac (Lima/ARM64, vcan, Vehicle Simulator)
- индексы contracts/ и domains/ (+ единый шаблон домена, заделы по камерам)
- заготовки glossary, capability-catalog, roadmap

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-20 19:28:16 +03:00

16 KiB
Raw Permalink Blame History

Штурман — видение и позиционирование

Статус: черновик v0.2 (на ревью). Канонический рассказ о смысле проекта. Технические решения — в architecture.md и доменах; здесь — зачем и что.

В одном абзаце

Штурман — открытый (MIT) русскоязычный программный слой для автомобиля. Он превращает дешёвый головной блок или одноплатник в быстрый, красивый и расширяемый бортовой интерфейс с голосовым ассистентом на русском — ассистентом, который не просто болтает, а видит данные твоей машины и объясняет их по-человечески (общение в духе Grok в Tesla). По смыслу имени штурман — со-пилот, который ведёт по маршруту и держит руку на пульсе машины: проект делает ровно это. По сути это операционная система для автомобиля на базе Linux (экран, мультируль и т.д.) со всей стандартной мультимедией и потенциалом расширений. Ничего, что управляет двигателем, тормозами или другими критичными узлами.

Проблема, из которой всё растёт

  • Фрагментация «мозгов». Софт и электроника машин различаются чуть ли не под каждый рестайлинг даже у одного производителя. Боль OEM, владельцев и особенно механиков.
  • Афтемаркет. Миллионы машин без нормального экрана или с дешёвым китайским Android-блоком: медленным, лагучим, уродливым, без кастомизации, с языковым барьером и плохой поддержкой.
  • Взрыв голосовых ИИ в машинах. Mercedes (ChatGPT → Gemini-агент), Tesla (Grok), VW (IDA на ChatGPT), Hyundai (Naver), BMW в Китае (Alibaba/DeepSeek), китайцы агрессивнее всех. Но всё — проприетарное, западное или китайское. Ни одного — ни в российском авто, ни в открытом коде.
  • Российский контекст. После 2022 АвтоВАЗ потерял западных поставщиков и просел по электронике (ЭБУ двигателя, ABS, ESP, приборки). Латается китайским и отечественным, но язык, цена и поддержка китайских решений — заноза. Нужна локализованная, поддерживаемая альтернатива — её нет.

Пустая клетка

Наложив всё друг на друга, видим незанятое место: открытый, русскоязычный, поддерживаемый, кастомизируемый слой для авто. Пусто не случайно, а структурно: на уровне OEM всё закрыто стандартами (AUTOSAR — 20-летний отраслевой стандарт для ECU с сотнями компаний-членов); полноценные открытые автомобильные ОС существуют, но тяжёлые и заточены под автопроизводителей (Automotive Grade Linux); а safety-critical упирается в сертификацию функциональной безопасности и ответственность. Клетка пуста не потому что её легко занять, а потому что некому — кроме того, кто сидит ровно на этом пересечении.

Что Штурман делает на самом деле

  1. Интерфейс. Быстрый, красивый, не-лагучий головной экран: навигация, медиа, телефон, ассистент, экран машины, настройки. Прямой ответ на главный изъян китайских блоков. Дифференциация — в качестве опыта, не в наличии экрана.
  2. Голосовой ассистент на русском. Лаконично интегрирован в интерфейс (как в Tesla). Пайплайн гибридный: распознавание и синтез речи — локально (Vosk, Silero); «мозг» — через сменный бэкенд. Онлайн — российские LLM (GigaChat, YandexGPT; работают в РФ, 152-ФЗ, данные в России). Офлайн — небольшая локальная модель на устройстве, чтобы ассистент не умолкал в тоннеле или без сети. Бэкенд провайдер-независим: один отвалился — автоматически переключились на другой. Ассистент запоминает информацию о водителе в контекстные .md файлы — персонализация со временем.
  3. Контекст машины (главное). Через OBD-II/CAN (строго на чтение) Штурман видит реальные данные: скорость, обороты, температуры, напряжение бортсети, активные ошибки — и подаёт их ассистенту в контекст. На «почему горит чек?» он читает реальный код ошибки из ЭТОЙ машины и объясняет простым русским. Этого нет ни у кого в связке «открытое + русское» — мост к боли механиков и владельцев.

Поверх всего — открытый расширяемый API: сообщество и интеграторы добавляют плагины, экраны, интенты ассистента, не трогая ядро.

Чем Штурман сознательно НЕ является (и почему)

Границы держат проект жизнеспособным и юридически чистым.

  • Никогда не пишет в шину и не управляет критичными узлами. Только чтение. Архитектурная гарантия, не настройка: write-пути в системе просто нет. Так снимается вся сертификационная и юридическая яма функциональной безопасности — единственное, что делает проект подъёмным для маленькой команды.
  • Не строит свою ОС — живёт поверх обычного Linux. Ядро решено; ценность — в слое опыта и локализации над ним.
  • Не претендует на индустриальный стандарт — это место AUTOSAR; ценность стандарта определяется принятием, которым владеют консорциумы, а не разработчик.
  • Не обещает работать на любом заводском железе. Универсальность — ловушка масштаба AGL (тачскрины, тюнеры, камеры, питание у всех свои). Вместо этого — один хорошо выбранный таргет, доведённый до конца. НО заложен грамотный API для автопроизводителей/автолюбителей, чтобы адаптировать всё под конкретное железо/авто. Портируемость — через API силами других, а не «универсально из коробки». Это разница между соло-проектом, который заканчивается, и платформой, которая не заканчивается.

Где настоящий моат

ИИ сам по себе — не преимущество: ассистенты коммодитизируются, китайские блоки получат их быстро. Защищённость — в трудноповторимом сочетании: русская локализация (язык + RU-LLM-провайдеры + 152-ФЗ) + открытость (MIT, без AGPL-боли) + трюк с контекстом машины + по-настоящему хороший UX + фокус на нише афтемаркета/ретрофита. Западное проприетарное не зайдёт на этот рынок, китайское не станет локализовать и открывать, OEM строят закрыто.

Как это устроено технически (кратко; детали — в architecture.md)

Голый Linux на одноплатнике класса RK3588 (хватает на красивый UI и локальную небольшую модель, приличная mainline-поддержка). Независимые процессы общаются через шину D-Bus: интерфейс, ассистент, сервис данных машины, питание, связь. Падение ассистента не роняет UI; плагины цепляются к той же шине. Два решения — с первого дня: (1) read-only rootfs с записью только в отдельный раздел (резкое обесточивание корраптит память — так умирают одноплатники от forced power-off); (2) управляемое питание и graceful shutdown по сигналу зажигания. Без них красивый интерфейс однажды просто не загрузится. Навигация, медиа, телефон — наращиваются слоями.

Стратегия: открытость как фундамент, продажа как апсайд

Проект открыт в любом случае; его ценность не зависит от продажи. Открытый Штурман сам по себе — актив: репутация, доверие, сообщество, портфолио, «построил настоящее и довёл до конца». Коммерция — апсайд сверху, а не точка, без которой проект мёртв: сервис интеграции/локализации/поддержки для афтемаркета или Tier-1; демо для АвтоВАЗа строго на несейфти-companion-слое; своя «коробка» для ретрофита. Не выйдет продать — остаётся сильный открытый проект; выйдет — ещё и бизнес. Проигрышного исхода нет.

Для кого

  • Энтузиаст-ретрофитчик — красивый, быстрый, кастомный блок вместо китайского.
  • Механик / владелец — ассистент впервые объясняет ошибки и поведение машины по-русски на основе её реальных данных.
  • (Апсайд) OEM / Tier-1 / афтемаркет-интеграторы и автопроизводители в РФ — локализованная открытая альтернатива без зависимости от китайцев и без языкового барьера.

Как проект растёт (лестница; детали — в roadmap.md)

Каждая ступень — законченная, демонстрируемая вещь: интерфейс → ассистент онлайн → контекст машины (killer-демо) → офлайн + Plugin API (маховик сообщества) → навигация + образ + документированный ретрофит (первый «продукт»). Остановиться можно на любой ступени — каждая самоценна.

Суть

Поставить флаг там, где пусто: первый открытый, русскоязычный, по-настоящему хороший бортовой companion. Глубокий настолько, чтобы его уважали инженеры (Linux-bring-up, голосовой пайплайн, работа с CAN, архитектура из независимых сервисов), красивый и осязаемый настолько, чтобы хотелось показывать, и ограниченный в скоупе настолько, чтобы реально закончить. А повезёт — фундамент для бизнеса.


Рамки — решено (2026-06-15)

Выбран вариант B: Штурман — это полноценная расширяемая платформа («ОС поверх Linux» в широком смысле), и мы сознательно шире, чем §2 спеки. При этом две красные линии остаются абсолютными.

Нерушимые красные линии (не обсуждаются — безопасность + 152-ФЗ/юр. чистота):

  • Никогда не safety-critical — не управляем двигателем, тормозами, ABS/ESP, рулём, подушками.
  • CAN только на чтение — никакой записи в шину, никаких actuator-команд. Write-пути нет в системе в принципе (архитектурная гарантия).

Открыто к пересмотру (закладываем в каталог как возможное; решаем по фазам):

  • Несколько HW-таргетов. Спека требовала один (RK3588). Для платформенной амбиции мульти-железо допустимо — но не ценой bring-up-боли на старте: первый таргет всё равно один, остальное — позже (через HAL/board-support API).
  • Глубже стокового Linux. Допускаем собственный образ/ядро/дистрибутив и более глубокую системную интеграцию, если это реально нужно платформе. Не самоцель — каждое углубление обосновывается потребностью.

§2 исходной спеки (жёсткие «НЕ полноценная ОС» и «один таргет») этим решением переопределяется. Две safety/legal-линии из §2 остаются в силе.