Как я бота с телеги на макс переписывал

Никогда такого не было — и вот опять: Telegram в РФ вроде как скоро блокируют

Некоторое время назад я сделал складского Telegram-бота с элементами компьютерного зрения, который ходит в 1С за данными. Складским сотрудникам решение очень зашло — настолько, что от привычного функционала они отказываться не хотят. ТСД мы изначально не рассматривали: склад большой, сотрудников около 20, обеспечивать всех терминалами дорого. Да и разработка отдельного решения под ТСД тоже удовольствие не из дешёвых.

В итоге появилась задача переделать бота под мессенджер MAX. Задача внезапная: 1 апреля уже близко, текущих задач море. Думаю, такие приключения сейчас у многих. Решил попробовать сделать это с помощью Codex. Об этом и будет пост — вдруг кому-то поможет.

Дисклеймер: я никак не связан с ChatGPT / OpenAI и не рекламирую их сервисы. Есть и другие инструменты — DeepSeek, Cursor, ГигаЧат, Алиса и пр. Просто в этот раз решил попробовать именно этот инструмент.

С Codex я раньше не работал, но наслышан о возможностях агентных инструментов для разработки. Быстрое гугление и чатджипитение показало, что основной стек MAX — скорее Java. А я, на секунду, 1С-ник с ML-уклоном. Мне Python подавай. Готовой Python-библиотеки не было, но был REST API — уже надежда. Начал просто: открыл репозиторий Telegram-бота и написал: «Мне нужно переделать этот проект для мессенджера MAX. Предложи оптимальную дорожную карту. Вот документация: https://dev.max.ru/docs-api/methods/GET/chats/-chatId-/» Получил список примерно из 20 пунктов. Но главное Codex вытащил быстро: текущий проект — MVP, используется long polling, бизнес-логика смешана с ботом, архитектура для продакшена так себе. Дальше я немного сыграл роль «знающего тимлида» и спросил: «Если потом захочу использовать сервис через PWA или сайт, что стоит изменить архитектурно?» Ответ стал короче и интереснее, Codex предложил создать новый репозиторий под новую архитектуру. И тут началась магия. Codex сам создал структуру проекта: каталоги, файлы, .gitignore, .env.example, заготовки под web и MAX. Честно говоря, я бы только на создание файлов потратил пару дней и всё равно что-нибудь забыл.

Я посмотрел, что он сделал, поспрашивал: «а это что?», «а это зачем?», делать нечего надо тестить. Вспомнил, что он умеет писать тесты. Взял ответ Telegram-бота по одному товару и предложил Codex'у: «Давай сделаем тест для MAX-бота: для user_id=XXXXXXX и product=20403 должен возвращаться вот такой JSON». Он написал тест, сам его запустил и проверил. А дальше по мере разработки автоматически добавлял новые тесты. Несколько часов мы продолжали работать. И если раньше я воспринимал ChatGPT-подобные инструменты как мидлов, то здесь ощущение было другое: скорее я был продакт-менеджером и архитектором, который ставит задачи очень быстрому сеньору. Когда дошло до деплоя, я спросил: «Как лучше организовать CI/CD?» Он предложил полноценный процесс: ветки, pull request, staging, production. Но так я один из человеков в проекте, попросил его сделать проще: «Собирай всё локально, кроме .env, выкладывай на Docker Hub и дай команды для продовой ВМ». И всё заработало. Он выдал команды для деплоя, обновления и запуска. Заодно выяснилось, что вебхуки MAX без домена не работают. А ещё ботов можно регистрировать только на организацию и не больше пяти на один ИНН. Потом я подключил SSH-терминал в VS Code — и Codex начал работать уже прямо на проде. В какой-то момент диалог выглядел так: Я: «Выдели этот текст жирным, добавь пустую строку перед карточками и выкатывай в прод». Codex: «Изменяю formatter.py, коммичу, собираю Docker-образ, загружаю на Docker Hub, обновляю прод, запускаю». За 10 часов MAX-бот был готов — не просто рабочий, а с более современной архитектурой, чем исходное решение.

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

Как я бота с телеги на макс переписывал | Сетка — социальная сеть от hh.ru