Разработка

Нейросеть и 1С-Битрикс: подводные камни и как их избежать

27 октября 2026
7 минут

Нейросеть справляется с 1С-Битрикс хуже, чем с открытыми фреймворками вроде Laravel. О ядре платформы ей известно мало, а половина настроек хранится в админке, и в коде их не видно. Обе проблемы решаемы: ИИ-агенту нужна память проекта, настройки из админки стоит перенести в код, а каждое «готово» проверять на тестовой копии сайта.

Кейс: перенос сайта медицинской клиники на 1С-Битрикс

Разберём на примере нашего проекта: сайт медицинской клиники переезжал на 1С-Битрикс с новым дизайном. В работу вошли каталог услуг по отделениям, врачи, отзывы, акции, статьи и онлайн-запись. Цены и расписание приезжают из МИС (медицинской информационной системы) клиники. Главную, страницы услуг и ещё полтора десятка страниц контент-менеджер собирает из блоков конструктора.

С середины августа 2026 года основную часть кода пишет ИИ-агент: мы работаем в Claude Code, часто в нескольких сессиях параллельно, в пике до шести. Наш разработчик ставит задачи, проверяет результат и принимает решения.

Почему ИИ-агент работает с 1С-Битрикс хуже

Причин две, и обе связаны с устройством самой платформы.

Нейросети почти не на чем учиться

Битрикс — коммерческая платформа: код ядра не лежит в открытом доступе, как у Laravel или WordPress. Документации мало, а на английском её почти нет. Модель знает платформу по обрывкам кода с форумов, причём чаще по старым функциям, чем по современному ORM D7 (слою для работы с базой данных). Поэтому агент смешивает два подхода в одном файле, вызывает несуществующие методы и не понимает, как строить архитектуру проекта.

Например, SEO-поля элемента агент записывал методом ElementValues::setValues(). Такого метода нет: скрипт упал, уже создав элемент, и тот остался без SEO. Правильный способ пришлось найти самим и записать для агента.

Половина Битрикса живёт в админке

Инфоблоки (так в Битриксе называются таблицы с контентом), их свойства, формы редактирования и настройки модулей задуманы так, чтобы их настраивали мышкой. Результат оседает в базе, а не в коде, и эту половину проекта нейросеть не видит. Работать через браузер она может, но долго, дорого и ненадёжно. Клики промахиваются мимо полей, а кнопка «Применить» не отправляет форму, хотя клик засчитан, и агент об этом не узнаёт.

Вдобавок настроенное руками не повторить на другом сервере: ID инфоблоков, свойств и файлов на тестовом и боевом сайте могут не совпадать.

Подводные камни 1С-Битрикс: ошибки без сообщений

Обычно агент исправляется по сообщению об ошибке: написал код, получил исключение, исправил. Битрикс часто ошибок не показывает. Значение не сохранилось, кеш не сбросился, страница пустая, а сервер отвечает, что всё в порядке. Агент видит тишину и докладывает «готово». Часть случаев ниже вызвана нашим кодом, а не Битриксом, но ни один не выдал сообщения об ошибке:

  • Обновление стирает свойства. Метод CIBlockElement::Update() с набором свойств заменяет его целиком. Скрипт правил одно поле, а остальные свойства элементов обнулились. Поймали сравнением выгрузок и восстановили из копии, снятой перед запуском. Менять отдельные свойства нужно методом CIBlockElement::SetPropertyValuesEx().
  • База обрезает данные. Содержимое конструктора лежало в колонке TEXT, и MySQL молча отрезал всё длиннее 64 КБ. Три страницы услуг после импорта открывались без основного содержимого, хотя сервер отвечал кодом 200.
  • Задача отчиталась об успехе, но сделала не всё. Перевод блоков вопросов и ответов в раскрывающийся список прошёл не на всех страницах. О пропущенных скрипт написал в лог, но не в итог.
  • Ссылка ведёт не туда. Блок «Похожие услуги» искал страницу по символьному коду (последней части адреса), а один и тот же код носят 12 страниц. Локально ошибка не воспроизводилась, а на сервере чужие услуги показывали 6 блоков из 13.
  • Формы работают только у сотрудников. Токен защиты форм брали из объекта, который Битрикс отдаёт только вошедшему сотруднику. Посетитель без входа в админку не смог бы записаться онлайн, а все проверки шли под учётной записью сотрудника и показывали, что всё работает. Ошибку нашли случайно, ещё до запуска на основном домене.

Всего с августа по начало октября 2026 года в реестре ловушек проекта набралось 205 пунктов. Пик пришёлся на время, когда шла первая выкладка на боевой сервер и перенос контента: 44 записи за два дня.

Как научить ИИ-агента работать с 1С-Битрикс

Промптом эти проблемы не решить. Вокруг агента нужна инженерная работа, и у нас она сложилась из трёх частей. Принципы не привязаны к Claude Code: память проекта и правила можно завести и в Cursor или Codex.

Память проекта

Каждую ловушку мы разбирали и записывали: что случилось, как воспроизвести, как лечить. Чтобы знания не съедали токены (единицы текста, за которые платят при работе с нейросетью), их разложили по уровням:

  • главная инструкция читается в начале каждой сессии. В ней только то, что нужно в любой задаче: запуск, правила и строка-указатель на каждую ловушку;
  • база заметок хранит справочники, решения и полный разбор каждой ловушки. Агент читает только раздел своей задачи;
  • скиллы (готовые инструкции под типовые задачи: блок, страница, миграция) подгружаются сами;
  • общий скилл по Битриксу собирает то, что не зависит от проекта, и подключается к другим проектам студии.

Ловушки самой платформы стали попадаться в разы реже: 53 из 67 записей о Битриксе появились в первые три недели ведения реестра. Чистить реестр всё равно приходится, потому что агент ошибается и в выводах: минимум шесть записей позже пересмотрели.

Тот же принцип работает для клиента. Документацию для контент-менеджера мы опубликовали так, чтобы её могла прочитать нейросеть: любой ИИ-ассистент, умеющий открывать ссылки. Менеджер даёт ChatGPT или Claude ссылку на индекс и получает путь по админке, а не рассказ про «типичный Битрикс».

Настройки из админки переводим в код

Для структуры базы мы взяли модуль Sprint.Migration (он хранит изменения базы в виде скриптов-миграций) и доработали его под агента. Когда понадобился демо-контент, агент пошёл загружать его миграциями. Это опасно: миграции запускаются при каждой выкладке и на живом сайте перетёрли бы правки контент-менеджеров. Поэтому работу разделили на три потока:

  • миграции меняют структуру (инфоблоки, свойства, формы) и запускаются при выкладке сами;
  • сиды (скрипты загрузки данных) загружают контент: страницы с блоками, справочники, демо-тексты. Их запускают только руками;
  • задачи делают разовую правку живых данных. Они лежат в git, у каждого сервера свой журнал «выполнено», а на боевом сайте их запускают только с подтверждения.

ID инфоблоков и свойств в коде не пишем, а находим их по API-коду (постоянному имени инфоблока). Так один и тот же код работает на любом сервере.

«Готово» только после проверки на стенде

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

Часть правил выросла из практики: со стенда на боевой сайт переносится только код, а выкладывать его агент может лишь по прямой просьбе человека.

Чек-лист: ИИ-агент на проекте 1С-Битрикс

Если вы подключаете ИИ-агента к проекту на Битриксе, начните с этих правил:

  1. Найдите в команде человека, который понимает Битрикс: агент ускоряет работу, но знание платформы не заменяет. Если такого человека нет, подключите разработчиков на 1С-Битрикс хотя бы на старте.
  2. Записывайте каждую ловушку сразу, с воспроизведением и способом лечения.
  3. Держите главную инструкцию для агента короткой, а подробности выносите в заметки и скиллы.
  4. Переводите в код всё, что настраивается в админке: структуру в миграции, контент в сиды, разовые правки в задачи.
  5. Не пишите в коде ID инфоблоков и свойств.
  6. Принимайте «готово» только после проверки на стенде, в том числе без входа в админку.
  7. Сверяйте отчёт скрипта с базой, потому что «успешно» ещё не значит «сделано».
  8. Пишите документацию для контент-менеджера так, чтобы её могла прочитать нейросеть.

Итоги: что дал ИИ-агент за два месяца

Нейросеть справляется с проектом на 1С-Битрикс, если вокруг неё выстроена инженерная работа. За два месяца агент сделал 535 коммитов и собрал 44 из 47 блоков конструктора, а документация для контент-менеджера выросла до 111 страниц. Новый сайт уже работает.

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

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

Разрабатываем и поддерживаем сайты на 1С-Битрикс, в том числе с ИИ-агентами. Расскажите о задаче — оценим сроки и подход.

Показать ещё