Как создать ИИ-агента: разбираю свой, который ведёт мои задачи
Короткий ответ: ИИ агент отличается от чата одним - из середины убрали вас. Чат отвечает на вопрос и ждёт следующего. Агент сам смотрит, что пришло, сам решает, что с этим делать, и сам пишет результат туда, где он нужен. Расскажу, как собрал своего за три вечера и почему два главных решения вышли обратными тому, что советуют.
Он ведёт мои задачи, людей и календарь, слушает пересланные переписки и будит меня, когда подходит срок. Ниже - из чего он собран и на чём я обжёгся.
Я партнёр онлайн-проекта, закрываю аналитику, автоматизацию и лидген. Агента собирал себе, потому что задачи из планёрок я терял стабильно. А через месяц на эту же систему пришёл коммерческий заказ от человека, который её увидел. Так что это не концепт, а штука, которая работает и за которую платят.
Чем ИИ агент отличается от обычного чата
Чат отвечает, агент действует. Вы пишете в чат «напомни мне в пятницу про договор» - он отвечает «конечно, напомню» и не напоминает, потому что не может. Агент заводит задачу со сроком, и в пятницу вам приходит сообщение.
Чат ждёт вопроса, агент смотрит сам. Мой разбирает то, что я переслал, даже когда я не формулировал задачу. Переслал голосовое с созвона - из него появились две задачи и карточка человека, которого там упомянули.
Чат живёт одно окно, агент помнит. Это самое недооценённое. Через неделю чат не знает ничего из того, что вы ему объясняли. Агент знает, потому что у него есть база, а не окно.
Агент - это модель, которой дали руки, память и будильник.
Как это выглядит в обычный день
Я сижу на планёрках и созвонах постоянно, и они совсем про разное. Сегодня маркетинг, завтра продажи, послезавтра окупаемость трафика, а следом оценка рисков при покупке бизнеса. После каждой остаётся хвост обещаний: кому-то что-то скинуть, что-то найти, назначить следующую встречу. Раньше часть этого просто терялась.
Сообщение посреди работы
Знакомая сцена. Я делаю одну задачу, и в телеграм прилетает: «Привет, слушай, сможешь до завтра посмотреть вот эту штуку? Нам нужно срочно дать ответ».
Отвечаю «да, конечно, сделаю». И вот тут начиналось самое неприятное: надо оторваться от того, чем занят, открыть трекер, сформулировать задачу, поставить срок. Либо не отрываться и понадеяться, что вспомню.
Сейчас я отвечаю «да, до завтра сделаю», выделяю два сообщения, жму «переслать» и забываю об этом в ту же секунду.
Было
Оторваться, открыть трекер, сформулировать, поставить срок. Или понадеяться, что вспомню.
Стало
Переслал и забыл. Он разберёт, поставит срок и напомнит сам.
Пересылать можно хоть двадцать сообщений подряд - он прочтёт переписку целиком, поймёт, о чём договорились, заведёт задачу и найдёт под неё время в календаре.
После встречи
Созвоны пишутся сами. Я захожу в Zoom, запись включается, расшифровка идёт параллельно. Как только встреча закончилась, расшифровка уходит в разбор.
Оттуда появляется:
- мои задачи и мои обещания
- то, чего я жду от других, - отдельно, чтобы потом спросить
- карточки людей, которых я раньше не знал
С незнакомыми он не выдумывает. Спрашивает прямо: кто это был, дай контакты. Я отправляю телеграм, дискорд или полное имя - он кладёт это в базу людей.
Отдельно ловит договорённости про время. Если на встрече прозвучало «давайте в пятницу в три обсудим результаты», он сам поставит встречу на пятницу на три.
Приглашения он не рассылает, и это сознательно
Тут мы специально не стали автоматизировать до конца.
Он создаёт событие и присылает мне ссылку и список почт тех, кого стоит позвать. Добавляю я руками. Причина простая: у нас нет практики звать на встречу сразу всех, кто упоминался. Половину зовут, половину нет, и решать это должен человек.
Там, где решение зависит от отношений с людьми, автоматизируйте подготовку, а не само действие. Агент, который сам разослал приглашения не тем, стоит дороже, чем сэкономленная минута.
Когда надо вспомнить человека
Я часто хожу на рандом-кофе и знакомлюсь на конференциях. Через два месяца в голове остаётся обрывок: «был парень, занимался чат-ботами».
Раньше это означало перерыть переписки. Сейчас открываю веб-панель, пишу «чат-боты» и получаю список тех, с кем про это говорил, с пометками, кто чем занимается. Контекст разговора возвращается за пару секунд.
Я перестал прерываться, чтобы что-то запланировать. Любой кусок входящего летит агенту, а дальше он сам.
Из чего он состоит: два контура
В облаке живёт то, что обязано сработать вовремя. Приём сообщений, очередь, расписание напоминаний. Никакого ИИ там нет и не нужно.
На компьютере живёт весь разум. Там запускается модель и там идёт разбор.
Почему не всё в облаке? Потому что дорого. Агент работает круглые сутки, и поминутная оплата за токены на таком режиме превращается в счёт, который не хочется открывать. На компьютере он запускается через Claude Code по подписке, и расход предсказуем.
Почему не всё на компьютере? Потому что ноутбук закрывают.
Было
Напоминание срабатывало, когда я в следующий раз открою ноутбук. То есть иногда никогда.
Стало
Дедлайн в 17:00 пингует в 17:00. Облако не спит, и ему всё равно, где я.
Это разделение - самое ценное, что есть в проекте, и его почти нигде не объясняют. Обычно советуют или всё в облако, или всё локально. А правильный ответ: срочное в облако, думающее туда, где дешевле.
Почему компьютер сам спрашивает, а не облако его будит
Инициатива всегда со стороны компьютера. Он сам опрашивает облако - «есть для меня работа?».
И причина скучная. Домашний компьютер сидит за роутером, и снаружи до него не достучаться. Можно было прокинуть туннель, но это дырка наружу ради удобства, и я её делать не стал.
Опрос адаптивный: три секунды, пока идёт разговор, двенадцать в простое и минута ночью. Это не эстетика, а арифметика: каждый опрос - обращение к облаку, а на бесплатном плане их пятьсот тысяч в месяц на всё. В них надо уложиться.
Главная развилка: один агент или двадцать
Модная архитектура выглядит так: главный агент принимает запрос, смотрит, про что он, и раздаёт работу специалистам. Агент по календарю, агент по задачам, агент по встречам, агент по финансам. Красиво на схеме и в постах.
Я так и задумывал. В итоге в рабочем файле с правилами у меня написано ровно обратное:
По умолчанию делаешь сам. Задача, встреча, человек, срок, календарь, перенос, пересланная переписка - это обычный разбор. Никакого делегирования: оно медленнее и теряет контекст.
А подагентов осталось два: один поднимает расшифровки встреч, второй составляет планы. Зовутся они в двух случаях - если я назвал специалиста явно или если запрос очевидно не про трекер.
Почему дробление оказалось вредным. Подагент не видит того, что видит главный: ни входящего сообщения, ни переписки, ни контекста разговора. Ему надо пересказать задачу целиком, и на этом пересказе половина смысла теряется. А обратно он возвращает свой текст, который главный тоже перескажет. Два пересказа на ровном месте.
Дробить на агентов надо не потому, что модно, а когда задача правда другая. В остальных случаях это испорченный телефон.
Третья ветка на схеме - самая полезная. Если агент не уверен, он не выбирает, а спрашивает меня. В правилах это записано прямо: вопрос стоит секунды, а агент, ушедший не в ту сторону, стоит минут и нервов.
Грабля, которую я поймал на живом
Сначала агент разбирал каждое сообщение отдельно и параллельно. Выглядело быстро. А потом случилось вот что: я скинул голосовое про созвон и следом текстом уточнение к нему. Два сообщения ушли в разбор одновременно, друг друга не увидели, и каждое завело свою задачу про один и тот же созвон. Защита от дублей отбила случайную из двух, и какая выживет - зависело от того, кто успел первым.
Сообщения, пришедшие подряд, - это почти всегда одна мысль, разбитая на части. Разбирать их по отдельности нельзя, даже если очень хочется ускориться.
И лечится просто: бот копит подряд идущие сообщения в пачку и отдаёт её разбору целиком. И разбор идёт по одной пачке за раз, без параллели.
Что нужно, чтобы создать ИИ агента самому
- Окно ввода.Телеграм-бот. Он должен подтверждать приём за секунду, пока ответ готовится полминуты, иначе кажется, что всё зависло.
- Память.База, а не окно чата. У меня это бесплатный план облачной базы, растёт примерно на шесть мегабайт в месяц при лимите в пятьсот.
- Руки.Доступ модели к инструментам через [MCP](/blog/mcp-server/): у моего коннектора двадцать четыре умения, от «создай задачу» до «кто свободен в четверг».
- Будильник.Расписание в облаке, которое не зависит от вашего компьютера.
- Правила.Текстовый файл с описанием, кто вы, как к вам обращаться и что делать в спорных случаях. Это важнее кода.
Про последнее отдельно. Правила у меня лежат обычными файлами рядом с проектом, а не зашиты внутрь. Правка не требует ни перезапуска, ни выкладки: поменял текст - агент со следующего разбора работает по-новому. За два месяца я переписывал их раз двадцать, и ни один из этих разов не был связан с кодом.
Безопасность: что агенту нельзя
Агент работает с моими правами, и это надо ограничивать явно, а не надеяться.
| как сделано | |
|---|---|
| Главный ключ от базы | не покидает облако, на компьютере лежит только служебный токен |
| Команды в терминале | отключены на уровне запуска |
| Запись в файлы | только своя папка, остальное закрыто списком |
| Действия наружу | требуют подтверждения кнопкой |
| Свои же правила | агент не может их переписать, это отдельный запрет |
Последняя строка неочевидная, но важная: если агент может править файл с собственными правилами, однажды он это сделает, и вы не поймёте, почему он стал вести себя иначе.
Права задавайте в команде запуска, а не в файле настроек рядом с проектом. Файл настроек агент видит и, если ему не запретить, может поправить. Аргументы запуска он изменить не может в принципе.
Кому такой агент не нужен
Тому, у кого мало входящего. Если задачи приходят раз в неделю и вы их не теряете, вы собираете решение проблемы, которой нет.
Тому, кто не готов к порогу входа. Это не приложение из магазина. Нужен компьютер, который не выключают, подписка, аккаунт в облачной базе и вечер на сборку. Плюс несколько недель, пока правила притрутся.
Тому, кто ждёт, что он всё поймёт сам. Первый месяц агент ошибается в мелочах: не так понял срок, привязал задачу не к тому человеку, разбил одно на два. Это лечится правилами, но лечится не мгновенно.
Сколько это заняло и что было дальше
Первая рабочая версия заняла три вечера. Доведение до состояния, когда я перестал проверять за ним каждую задачу, - ещё примерно месяц правок, почти все в правилах, а не в коде.
А потом случилось то, ради чего, наверное, и стоит писать такие статьи. Знакомый предприниматель увидел, как это работает у меня, и заказал такой же себе. С разбором встреч, финансами, поиском по файлам и вторым пользователем для жены. Шесть этапов, расписанных по часам.
Я собирал эту штуку исключительно под себя, и мысли продавать её не было вообще. Оказалось, что собственная рабочая автоматизация - сама по себе витрина.
Про тот заказ и про то, что в таких системах реально просят, я написал отдельно: ИИ-агенты для бизнеса - что заказывают и сколько это стоит. Там интереснее всего не технологии, а чего люди боятся, когда пускают чужого человека в свою почту и календарь.
Свой ИИ-агент: от пустой базы до бота, который ведёт ваши дела
Набор коротких уроков: собираем агента, который принимает задачи из телеграма, помнит людей и встречи и будит вас по срокам. На вашей подписке и бесплатном плане базы.
Уроки выходят по одному, начиная с октября. Доступ к набору один раз, новые части приходят на ту же почту. Если передумаете, отпишетесь одной кнопкой.
Пишу про свои автоматизации в телеграм-канале: короткие заметки по ходу работы, без расписания и без рекламы.
Читать каналЕсли нужна не инструкция, а готовое решение под ваш бизнес — напишите мне, обсудим задачу.