Кейс 03 · мульти-агентные системы · собственный продукт
Система из восьми AI-агентов сказала мне то, что я не хотел слышать: проблема не в продукте, а в том, что я перестал его продвигать
Контекст
У продукта один основатель и восемь зон, каждая из которых требует ежедневного внимания. Юнит-экономика. Конверсия воронки. Когорты и LTV. Реферальная механика. Поддержка клиентов. Продуктовые решения. Контент. И над всем этим — координация, потому что зоны связаны, а решения в одной ломают метрики в другой.
Нанять восемь специалистов на продукт в ранней стадии невозможно: даже частичная занятость каждого — это от 60 до 90 тысяч рублей в месяц, то есть полмиллиона на команду, которой пока нечем платить.
Альтернатива — разбираться самому. Я пробовал. Честная оценка: чтобы пройти все восемь зон и свести их в одну картину, нужно два-три дня. Не два-три часа — дня. А значит на практике это происходит раз в месяц, в лучшем случае раз в две недели. И проблема, возникшая пятого числа, обнаруживается двадцать пятого.
Сценарий, который я хотел научиться ловить, выглядел так: маркетинг льёт трафик, конверсия проседает, стоимость привлечения растёт. Три факта живут в трёх разных местах, и по отдельности каждый выглядит терпимо. Увидеть «мы льём деньги в дырявое ведро» может только тот, кто смотрит на все три одновременно.
Забегая вперёд: система нашла не это. Она нашла кое-что хуже, и об этом в конце.
Ограничения
- Автономность от рабочей машины. Выключенный ноутбук не должен останавливать ни одного процесса. Всё живёт на сервере
- Видимость расходов по каждому агенту. С одним общим ключом невозможно понять, кто сжигает бюджет и кого пора переводить на модель дешевле. Значит — отдельный ключ на каждого
- Никаких вызовов между агентами. Восемь процессов, дёргающих друг друга по API, — это гонки, каскадные падения и отладка, которую нельзя воспроизвести. Обмен только через файлы
- Жёсткое разграничение прав на запись. Каждый агент читает всё, но пишет только в свои файлы. Чужие не трогает никогда, даже если видит там очевидную ошибку — вместо этого докладывает
- Библиотека готовых скиллов не подходила. Взятые за основу скиллы написаны под западный SaaS с подпиской. Продукт — разовая покупка подарка на русском рынке. Прямой перенос давал советы про churn и MRR продукту, у которого нет ни того, ни другого
- Отчёты не должны превращаться в шум. Восемь агентов, пишущих каждый день, — гарантированный способ перестать их читать через неделю
Решение
Что это даёт
Каждое утро в 08:30 приходит короткий брифинг: что произошло за ночь, есть ли аномалии, сколько потрачено, какая главная задача дня. В спокойный день это три строки. Вечером с 19:10 до 19:30 — отчёты по зонам, каждый со своей цифрой и своей тревогой.
Плюс режим расследования: любой вопрос в свободной форме, и система разбирается по всем зонам сразу, а не по той, куда вы догадались посмотреть.
Двух-трёх дней ручного разбора больше нет. Есть три строки утром.
Как устроено
Спроектирован отдел из восьми ролей: Экономист, специалист по конверсии, Аналитик, Вирусолог (реферальная механика), Саппорт, Продукт-стратег, Контент-маркетолог и Супервайзер над всеми. В постоянной работе сейчас пять — остальные включаются по мере того, как соответствующие зоны наполняются данными. Запускать агента, которому нечего анализировать, значит платить за красивые пустые отчёты.
Источник правды один для всех — append-only таблица событий, куда бот пишет всю воронку от анкеты до доставки, включая источник трафика. Никто не ходит в чужие данные напрямую: каждый читает события, считает своё и кладёт результат в собственный файл в общей папке.
Разнос отчётов по минутам — не косметика. Он задаёт порядок чтения и делает мгновенно заметным, если кто-то не отчитался.
Супервайзер — самая проработанная роль и главная ценность конструкции. Он читает всё, но пишет только в свои файлы. Его работа не в том, чтобы пересказать семь отчётов, а в том, чтобы найти связи между зонами, которые не видны изнутри одной. Он разрешает противоречия, когда два агента пришли к разным выводам из одних данных. Проверяет живость остальных по времени изменения файлов. Ведёт расходы. Ловит аномалии — доставленный заказ без оплаты, растущий расход API без продаж, накрутку рефералов. И находит разрывы: зоны, за которые формально не отвечает никто.
Против шума введена норма краткости и трёхуровневые приоритеты — красный пингует немедленно, не дожидаясь вечера.
Правки в поведение агентов вносятся только через слой управления и сохраняются в файл переопределений. Telegram работает исключительно на выдачу. Это осознанное ограничение: канал уведомлений не должен быть каналом управления, иначе конфигурация расползается по чатам и перестаёт быть воспроизводимой.
Архитектура
Файловая шина вместо межпроцессных вызовов. Общая папка, в ней по файлу на каждую зону: экономика, воронка, аналитика, рефералы, поддержка, продукт, маркетинг, сводка. Один владелец на файл — конфликт записи невозможен по построению, а не по договорённости.
Единый формат записи у всех агентов, иначе чтение чужих файлов превращается в парсинг.
Супервайзер как единственная точка входа. Он ведёт обзорный файл проекта, куда приходит любой новый агент или человек, чтобы понять текущее состояние.
Heartbeat по таймстемпам файлов, а не отдельным протоколом: не обновился файл — агент считается упавшим.
Раздельные ключи на каждого агента плюс учёт расхода. Модели подобраны по роли: Супервайзер работает на самой мощной, остальные — дешевле. Отсюда и разброс в расходах: 3 доллара из четырёх с половиной приходятся именно на него, и это правильное распределение — думает больше всех тот, кто сводит картину.
Слой скиллов: библиотека русифицируется и переводится с логики подписки на логику разовой покупки до установки агенту.
Стек
Результат
Система работает автономно и обходится примерно в 2 000 рублей в месяц — около 350 рублей приходится на вызовы модели, остальное на долю сервера. Три четверти расхода на модель съедает Супервайзер, и это правильное распределение: думает больше всех тот, кто сводит картину.
Но главный результат оказался не в экономии.
В одно утро брифинг сообщил: ноль продаж, ноль запусков бота, аномалий нет, расходы нулевые. Последняя продажа — пять дней назад. И дальше строка, ради которой всё это строилось:
«Не аномалия, а суть: маркетинг молчит с 17 июля — ноль постов, трафика в бота нет, значит нет продаж. Дырявого ведра нет — ведро пустое.»
Супервайзер не стал оптимизировать конверсию. Не предложил A/B-тест. Не сгенерировал бодрый отчёт про воронку из трёх заказов. Он посмотрел на все зоны сразу и назвал настоящую причину: продукт не продаётся, потому что его перестали продвигать. И сформулировал задачу дня — запустить публикацию по контент-плану, четырнадцать постов готовы и лежат.
Специалист внутри одной зоны такого не увидит. Специалист по конверсии будет чинить конверсию. Аналитик будет искать тренды в трёх продажах и честно напишет, что данных мало. Увидеть можно только сверху — и ровно для этого нужен восьмой агент, который сам ничего не считает.
| Показатель | Было | Стало |
|---|---|---|
| Разбор всех зон бизнеса | 2–3 дня ручной работы | 3 строки в 08:30 |
| Стоимость аналитического контура | найм от 60 000 ₽/мес | ~2 000 ₽/мес за систему |
| Обнаружение остановки маркетинга | по пустому счёту через месяц | на следующее утро |
Что бы сделал иначе
- Файловую шину надо было выбрать сразу. Соблазн сделать «правильно», через сервисы между агентами, был велик. Восемь процессов, дёргающих друг друга, невозможно отлаживать. Один владелец на файл убирает целый класс проблем архитектурно, а не дисциплиной
- Запрет чинить чужое молча оказался важнее самой автономности. Без этого правила агент, увидевший ошибку в соседней зоне, начинает «помогать», и через неделю никто не понимает, кто что посчитал
- Восемь отчётов в день — это ноль прочитанных отчётов. Норма краткости и приоритеты появились не сразу, а после того, как стало ясно: без них система превращается в спам, который перестаёшь открывать. Полезность мульти-агентной системы упирается не в качество агентов, а в дисциплину их вывода
- Запускать всех восьмерых сразу было ошибкой. Трое работали в зонах, где ещё нет данных, и производили корректные, но бессодержательные отчёты. Правильнее включать агента тогда, когда его зоне есть что сказать
- Готовые скиллы не переносятся между рынками механически. Русификация — меньшая часть работы. Основное — переделка логики монетизации
- Канал уведомлений не должен быть каналом управления. Правки только через слой управления, мессенджер строго на выдачу
Нужен контур, который смотрит на ваш бизнес целиком и говорит правду, а не то, что приятно слышать?
Напишите — разберём, что можно автоматизировать в вашем случае.