«Ксеноморфный софт, который вырос у меня дома». Колонка Сергея Рыжикова

12 мин
343
Нейросети

Почти десять лет назад я рассказывал, как мой дом научился жить на солнечной энергии. Сегодняшняя история тоже начинается с солнечной электростанции. Но этот рассказ будет про другое: про то, как у меня дома выросла программа. Почти сама.

Я давно думаю об одной вещи. Сколько я себя помню в софте, программы всегда поставлялись готовыми. Их проектировали заранее, отливали в одну форму и раздавали всем одинаковыми. Можно было подкрутить настройки, включить или выключить какие-то функции, и на этом все. Если твоего устройства нет в списке поддерживаемых, извини. Подстраиваться всегда приходилось человеку. Мне давно казалось, что должно быть наоборот, но как это сделать, было непонятно — до недавнего времени.

Как все началось

И тут мне довелось приболеть. Сидеть дома с температурой скучно. Я устроился возле компьютера: взял Mac mini, подключил к нему телевизор вместо монитора, настроил ИИ-агента и спросил: «Слушай, у меня в локальной сети есть солнечная электростанция с аккумуляторами. Можешь ее найти?»

Через десять минут агент ответил: «Да, есть стопроцентный кандидат. Минуточку. Это гибридный инвертор Deye, вот такая модель, а вот его логгер. О, монтажники оставили пароль admin-admin, без изменений. Все, у нас полный контроль над электростанцией. Чего изволите?»

Еще через несколько часов был готов первый модуль. Выработка, батареи, потребление дома, графики. Тот самый экран, на который я когда-то смотрел в командировках, чтобы понять, было ли в Калининграде солнце, только теперь мой собственный.

«Энергия» сегодня: солнце, батарея, дом, машины и город. Видно, куда идет ток прямо сейчас

Кстати, в списке устройств роутера агент нашел еще и «Солнце SMA». Это призрак моей первой станции 2015 года, про которую я писал отдельную историю Ее инвертора давно нет, а запись о нем в роутере так и жила.

Читайте также

Солнечная электростанция на западе России
20 октября 2026

Дом знакомится с самим собой

Тут я понял, что одной электростанцией дело не ограничится. И сформулировал агенту, чего хочу на самом деле: свою внутреннюю систему управления домом, которая объединит все, что у меня есть.

Полчаса агент сканировал домашний Wi-Fi и составлял список. Появились кондиционеры, бризеры Tion, телефоны и планшеты, видеорегистратор, все девять точек Wi-Fi. Всего 47 устройств.

И сразу нашлось много ошибок:

  • Служебный порт видеорегистратора смотрел прямо в интернет.
  • У роутера не работал DNS, поэтому прошивка не могла обновиться, и этого никто не замечал.
  • Все девять точек Wi-Fi сами выбирали каналы и мешали друг другу. На всех был включен Telnet.

Агент все это показал и объяснил, что предлагает сделать. Согласовал со мной и исправил все ошибки. Перед каждым изменением он сохранял копию настроек и записывал, как все вернуть назад. Сеть стала заметно лучше.

Дом в разрезе: точки Wi-Fi по этажам, кабели и скорость связи между ними

Признаться, было и смешное. Четыре одинаковых безымянных устройства агент сначала уверенно записал в бризеры Tion. Потом разобрался: это вообще не Tion, а какие-то китайские Tuya. Переименовал и пошел дальше.

Неделя на больничном

Затем все пошло само собой. Я сидел дома, болел, занимался своими делами, а софт рос. Каждый день появлялся новый модуль.

  • «Климат»: кондиционеры и бризеры в одном окне.
  • «Интернет»: вся сеть и ее здоровье.
  • «Видео»: камеры и архив.

Кроме того, Алиса, Hi-Fi колонки, хранилище. А также гараж, который узнает машины, зарядки для машин и сауна. За первую неделю модулей стало тринадцать.

«Климат»: воздух и тепло по комнатам, бризеры и кондиционеры. Автоматика пока работает пробно

А потом появилась «Охрана». Теперь дом можно поставить на сигнализацию и снять с нее одним нажатием, видно все датчики, журналы и логи, открываются ворота гаража. И все это получилось красивенько.

«Охрана». Текущее состояние и журнал на скриншоте я размыл: все-таки это про безопасность

Вот тут у меня возникло очень четкое ощущение. Я посадил в дом зерно, и оно прорастает, осваивается. Само подбирает доступы и способы управления к каждому устройству, начинает их понимать и контролировать. Помогает мне находить и исправлять ошибки, которые годами жили в доме незамеченными.

И я уже не понимаю, зачем мне руками настраивать Hi-Fi колонки. Софт сам выставит скорость соединения, проведет тесты и убедится, что они висят на правильной точке Wi-Fi.

Потом пришла очередь стиральных машин, домашнего кинотеатра и много чего еще. Вот еще несколько органов, которые выросли сами.

«Зарядки»: кто сейчас заряжается и сколько взял. Машины со своими именами

«Стирка»: стиралка и сушилка. О том, что они закончили работу, сообщают колонки

«Сауна». Внизу справа ее правила: включать только из дома, сторож следит, не больше двух часов, а греть можно, пока батарея выше 40%

Немного статистики. С 27 сентября прошло 17 дней. За это время в проекте появилось 2 285 изменений, больше 200 тысяч строк кода, почти 300 тысяч строк тестов, больше семи тысяч самих тестов и 18 модулей. Сам я не написал ни строчки кода. Я просто разговаривал.

У дома теперь есть имя — Марта. Ее можно позвать по имени, поговорить с ней голосом и даже перебить, если она увлеклась. А под меню висит светящийся шар, по которому видно, слышит ли она меня и что отвечает. Он виден почти на всех скриншотах выше, слева внизу.

Представьте себе сцену

На Mac mini одновременно работают пять-шесть агентов. Один растит «Энергию», другой чинит «Климат», третий делает мне голосовой шар. Выкатывать изменения в работающий дом нужно по очереди, поэтому агентам приходится договариваться между собой. В каждом чате вежливо: «Начинаю деплой, остановите, пожалуйста, тесты». — «Тесты остановлены». — «Деплой закончен, можно подтягивать». И так обычно идет по кругу.

В какой-то момент мне надоело читать эту переписку во всех чатах, и я попросил агентов договариваться без меня. Тогда один из агентов сам придумал правило очереди: выкатывать изменения может только тот, кто сейчас занял очередь, а остальные ждут, пока он закончит. Переписка прекратилась, очередь осталась. Колония организовалась сама.

Умеет и уменьшаться

Живое умеет не только расти, но и избавляться от того, что больше не нужно. Для софта это не менее важно.

Когда я заменил старую точку Wi-Fi на новую, «Интернет» продолжал рисовать ее на схеме серым призраком «не в сети». Тогда агент научил модуль понимать: точки нет в списке — значит, ее убрали — ее нужно сразу забыть.

В «Видео» сначала была лента событий с картинками. В тот же день стало понятно, что камеры смотрят на улицу, событий сотни в сутки, толку от ленты нет, а картинки тянули полтора гигабайта трафика в сутки. Ленту убрали, остался журнал тревог на 0,3 мегабайта в сутки.

А если какой-то «орган» не работает неделю, Марта сама предложит убрать его из меню. Скажу «да» — спрячет, «вернуть» — вернет. Уменьшаться тоже нужно обратимо.

Так возникла концепция

Я назвал это ксеноморфным софтом. Знаю, о чем вы сейчас подумали. Да, ксеноморфами зовут Чужих из фильмов. Но само слово научное, оно гораздо старше кино и объясняет суть даже лучше.

Почему «ксеноморфный». В переводе с греческого — «имеющий чужую форму»: xénos — чужой, morphḗ — форма. В геологии так называют кристаллы без собственных граней: они кристаллизуются позже других, заполняют оставшиеся пустоты и принимают ту форму, которую им оставили соседи.

Противоположность — идиоморфный кристалл, со своими четкими гранями. В палеонтологии ксеноморфна раковина устрицы, которая повторяет форму предмета, к которому приросла.

Обычный софт идиоморфный: у него свои грани, и подстраиваться под них приходится нам. Ксеноморфный принимает форму дома, в котором вырос.

Чужой оказался очень точной метафорой: ксеноморф не приходит готовым. Он вырастает внутри своей среды и берет от нее форму. В «Чужом 3» ксеноморф, выросший в собаке, бегает на четырех лапах. Один и тот же зародыш в разной среде становится разным существом.

Ровно это происходит с моим софтом. Обычная программа заранее содержит все, что умеет: список поддерживаемых устройств, функций и сценариев. Ксеноморфная такого списка не содержит. Она приходит в среду ростком с предназначением, у меня это «чтобы в этом доме хорошо жилось».

Дальше сама изучает, что вокруг, доращивает нужное и отпускает отжившее. Через год два одинаковых ростка станут двумя разными существами, потому что выросли в домах разных людей.

Человек в этой схеме не пользователь и не администратор. Он хозяин среды. Задает направление и говорит «да» или «нет».

Битрикс24 Вайбкод
Превращайте идеи в готовые решения за минуты. Просто расскажите, что нужно, — остальное AI сделает сам.
Попробовать

Честно о страхах

Но раз уж вспомнили «Чужого», давайте честно. Фильмы про монстров — это истории про страх. Люди столкнулись с новым организмом, который растет, меняется и выходит из-под контроля. Признаться, у меня тоже есть этот страх: что агенты однажды вырвутся, а софт начнет расти сам по себе и не туда.

Отрицать его глупо. Но будет ли это опасным, во многом зависит от нас. Мы понимаем саму суть: софт выращивается. Значит, и механизмы защиты нужно выращивать вместе с ним и учиться их контролировать. Вот что у меня получилось на сегодня.

  1. Есть «ступеньки доверия». Каждый новый «орган» сначала только смотрит и показывает. Потом работает в пробном режиме: решает и записывает, что сделал бы, но ничего не отправляет. Право управлять он получает только после моего согласования. Посмотрите на скриншот «Климата», там прямо написано: «пробно 2, боевой 0». У «Стирки» и у части «Зарядок» управление до сих пор выключено, и это нормально. А все опасное, вроде сауны, включается только из дома.
  2. Каждое изменение одного агента проверяют другие. Один строит, остальные ищут ошибки и дыры в безопасности. И это не формальность. Недавно агент, который делал мне голосовой шар, случайно стер кусок собственной документации. Проверяющий заметил, и все вернули.
  3. Новое растет в «клетке». Дом выращивает себе «новые органы» в отдельном аккаунте на Mac mini. Из него он не может дотянуться до всего остального. Доступ я открою только тогда, когда буду уверен.

И последнее — самое важное. Модель нужна для роста, а не для жизни. Выращенные модули — это обычный код. Если завтра отключить всех агентов, дом продолжит работать: станция будет показывать выработку, кондиционеры слушаться, охрана охранять. Агенты нужны, чтобы расти, лечить и разговаривать.

Наш ксеноморф вырос не на чужой планете, а у меня дома. И вырос он для того, чтобы в этом пространстве хорошо жилось.

Зерно и «Садовник»

Сначала мне казалось, что агент должен жить внутри программы. Оказалось, не обязательно. Он может быть снаружи, и выращивание тоже может происходить снаружи. У меня мозг дома так и называется, «Садовник». Это отдельная служба рядом с домом.

Мы уже не пишем программы. Мы их выращиваем.

Получается, что программа — это зерно: предназначение, скелет и способность расти. А садовник может быть где угодно: на том же Mac mini, на соседнем компьютере или в облаке.

От дискеты к «ксеноморфному» софту

Если посмотреть на историю, мы уже несколько раз меняли способ доставки софта. Сначала были коробки с дискетами и CD, потом программы стали скачивать из интернета. Затем софт уехал в облако, и появились SaaS-сервисы — они работают где-то там, а люди открывают их в браузере.

Возможно, следующий шаг — ксеноморфный софт. Он снова работает у нас, рядом с нашими устройствами и данными, но доращивается индивидуально под каждого. А может расти и в облаке, если так нужно для задачи.

В общем, это другая модель доставки: поставляется не готовый продукт, а росток, и он вырастает в продукт на месте.

Поддержка — это врач

Если все «экземпляры» софта разные, поддерживать их привычным методом не получится. Невозможно написать инструкцию для программы, которая у каждого своя.

Мне кажется, поддержка в этом случае становится похожа на врача. Организм вырос — ему нужна помощь доктора, роль которого играет агент. Он изучает изучает историю софта, проверяет, здоров ли он, отвечает ли намерениям и интересам хозяина. Ставит диагноз, лечит, поправляет и снова отпускает расти.

Кстати, вкладка «Здоровье», про которую я рассказывал выше, — это и есть медицинская карта: в ней видно, какой орган когда болел. Так что врачу будет с чего начать.

А разработчик перестает выпускать версии. Он сажает ростки и наблюдает за популяцией, как натуралист: здоровы ли организмы, верны ли предназначению, куда растут.

Еще одна интересная вещь — переселение. Когда тело становится тесным или стареет, софт может переехать в новое железо. Сначала новый экземпляр живет рядом со старым и только потом его сменяет. В концепции это уже описано, а на практике я пока не пробовал. Mac mini справляется.

В завершение

Мне нравится, что дом теперь растет, а программа сама подстраивается под меня. Почти десять лет назад я научил дом жить на солнце. Теперь он учится жить сам.

Концепцию целиком я описал в отдельном документе. Там анатомия такого организма, лестница доверия, принципы и открытые вопросы. Буду рад, если вы со мной поспорите. Сейчас самое время, пока ничего еще не выросло окончательно.

Сергей Рыжиков
Сооснователь компании Битрикс24
Мы используем cookie. Они помогают нам понять, как вы взаимодействуете с сайтом. Изменить настройки. Сейчас вы находитесь на облегченной версии страницы. Если вы хотите узнать больше о нашей политике в отношении файлов cookie, перейдите на полную версию сайта.