← Все проекты

Как я сделал свою CRM вайбкодингом

31 октября 2026 · Василий Анисимов

Заказ в центре: переписка, почта, маршрут, документы и оплаты сходятся в одну карточку

Я экономист, а не программист. Моя компания Спецраз.рф оформляет спецразрешения на перевозку негабаритных и тяжеловесных грузов. С мая 2026 года я вместе с ИИ-агентами Claude Code и Codex собираю для неё систему управления заказами — СУЗ. Сейчас в ней работают 6 операторов. Ниже — как это было, без прикрас.

Готовые CRM я пробовал

Сначала был Trello, потом amoCRM. В итоге мы вернулись к Telegram и Google Таблицам.

Дело в том, что заказ на спецразрешение — не «сделка» в воронке. Он складывается из пяти разных вещей:

Коробочная CRM знает про сделки и контакты, но ничего не знает про маршруты, сцепку тягача с прицепом и разрешения. Поэтому жили так: бот заводил на заказ тему в Telegram и строку в Google-таблице. Реестр заказов и реестр проектов — две таблицы, которые вели руками. Данные заявления и маршрута копировали тоже руками.

Один заказ: было и стало
Один заказ: было и стало

Мне не нужна была ещё одна CRM с воронкой. Нужна была понятная таблица всех заказов, где рядом лежит переписка с клиентом. Такую я и решил собрать.

Что получилось

СУЗ: заказ — маршрут на карте, чат клиента и бриф в одном экране
СУЗ: заказ — маршрут на карте, чат клиента и бриф в одном экране

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

С конца октября у СУЗ появились два робота-помощника:

Как это строилось

Дня большого релиза не было. Система растёт как прогрессивный JPEG: сначала грубая, но рабочая картинка, потом детали.

Как я работаю с ИИ-агентами

Я не пишу код. Моя работа — объяснить, что болит, и проверить, что стало лучше.

Как в СУЗ появляется новая функция
Как в СУЗ появляется новая функция
  1. Заметка. Голосом или текстом в Telegram, когда что-то неудобно мне или операторам.
  2. Задача. Бот превращает заметку в задачу на GitHub.
  3. План и макет. Claude Code разбирается в задаче и пишет план. Если меняется экран, сначала рисуется макет. Только для СУЗ их набралось 38, и каждый я посмотрел до того, как написан код.
  4. Код пишет Codex.
  5. Ревью. Второй ИИ-агент проверяет каждое изменение и ищет ошибки. Кругов проверки — не больше трёх, иначе можно шлифовать вечно.
  6. Выкатка — одна кнопка с журналом. Если что-то сломалось, откат той же кнопкой.
  7. Операторы работают и пишут, что неудобно. Круг замыкается.

С сентября задачи делятся на три дорожки по риску. Мелочи ИИ делает и выкатывает сам. Всё, что касается денег, записи в госсистему или необратимых действий, ждёт моего «делай».

Что пошло не так

Красивый макет в Figma. Начал я, конечно же, с фронтенда. Несколько дней с удовольствием рисовал в Figma, как должна выглядеть лента заказов. Этот дизайн так и остался в Figma. Настоящий интерфейс вырос из структуры базы данных и связей между страницами. Вывод: сначала решить, что хранится и как связано, а экран — потом.

Слишком строгое окно. Мы сделали окно «Добавить ТС» — завести машину клиента в госсистему. Ревью нашло кучу ошибок, исправляли в три круга. Запись в госсистему в итоге работала. А я сам не смог пройти через проверки в этом окне — их стало слишком много. С тех пор правило: сначала ядро, которое работает, потом проверки — по реальной боли. Новые проверки удобства — предупреждения, а не запреты. Запретами остаются только безопасность, целостность данных и защита от дублей.

Двойная заявка. После удачного пилота кнопки «Запустить построения» ревью нашло дыру: если перезагрузить страницу и нажать ещё раз, заявка может уйти в госсистему второй раз. Риск вынесли в отдельную задачу. Вывод: всё, что пишет во внешнюю систему, должно быть защищено от двойного нажатия.

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

И что стало лучше. Сужу по себе. Раньше полное заведение заказа — от первого сообщения клиента до оплаты госпошлины — могло занять у меня час. Нужно было завести тему в Telegram и строку в таблице, переписать данные заявления и маршрута, найти оплату в банковской выписке и понять, на каком шаге заказ. Сейчас на то же уходит 15–20 минут. Бриф собирается из переписки, варианты маршрута лежат лентой в самом заказе, робот подсказывает, чей платёж, а статус показывает следующий шаг.

Цифры

Сколько это стоило

Можно ли так же у вас

Заказ собран — груз поехал
Заказ собран — груз поехал

Если вы уже пробовали вайбкодинг сами и упёрлись — в архитектуру, в выкатку, в то, что ИИ ломает работающее, — напишите. Расскажу, как можно сделать такое для вас.

Написать в Telegram