За последний год про связку «ИИ и 1С» написано много, и почти все - про MCP-серверы. Ставим сервер в контур, поднимаем HTTP-сервис на стороне базы, подключаем расширение, настраиваем агента - и модель пишет код почти как разработчик. Это по-настоящему полезные инструменты, и я снимаю шляпу перед их авторами.
Но у этой волны есть слепое пятно. Посмотрите, кто на самом деле задает вопросы базе 1С в течение дня:
-
Руководитель, которому нужна дебиторка по менеджерам до планерки.
-
Консультант, который сопровождает три УТ и одну УПП.
-
Бухгалтер, у которого закончился договор сопровождения.
Никто из них не будет поднимать сервер, открывать порты и разбираться, почему HTTP-сервис отдает 405.
Им нужен другой жанр: подключился за пять минут с нуля, спросил обычными словами, получил таблицу с цифрами из своей базы, закрыл окно. Все.
Вот про этот жанр и статья.
Как к этому пришли
Мы небольшая команда, которая много лет сопровождает чужие базы: УТ 11 разных лет, КА 2, и еще живые УПП 1.3 и УТ 10.3, которые никуда не денутся еще лет пять. Когда появились нормальные ИИ-модели, первым желанием было дать им доступ к данным 1С по согласованию с клиентами. И тут же выяснилось, что весь модный инструментарий рассчитан на идеальный мир:
-
В идеальном мире у базы есть современная платформа - у нас в парке 8.3.5, со всеми вытекающими проблемами;
-
В идеальном мире можно поставить расширение - на обычных формах УПП расширения не живут;
-
В идеальном мире админ разрешит открыть порт наружу - в реальном мире фраза «опубликуйте базу в интернет» заканчивает разговор.
Поэтому пошли от худшего случая. Правила себе поставили такие: в конфигурации не меняем ничего, наружу не открываем ничего, на компьютер клиента не ставим ничего. Все, что можно себе позволить - одна внешняя обработка, запущенная штатными средствами.
Из этих ограничений архитектура вывелась сама. Если входящих подключений быть не может, значит база должна сама ходить за заданиями: обработка опрашивает шлюз исходящим HTTPS, забирает очередной запрос, выполняет его внутри своего сеанса со своими правами и возвращает результат. Снаружи у базы нет ни адреса, ни порта, ни белого IP - ей это все просто не нужно. ИИ при этом разговаривает со шлюзом и знать не знает, где стоит база.
Отключение такое же простое, как подключение: закрыл окно обработки - обмен остановился. Выключил ключ доступа - остановился мгновенно и гарантированно, даже если окно кто-то оставил открытым.
Что внутри, если коротко
Пара технических абзацев для тех, кто будет задавать вопросы - остальные могут смело листать к кейсам.
Запросы. ИИ получает язык запросов 1С практически целиком: пакеты, временные таблицы, соединения, ИТОГИ, виртуальные таблицы регистров - Остатки, ОстаткиИОбороты, СрезПоследних. Изменение данных запросом отсекается стоп-листом на двух сторонах сразу (и в обработке, и на шлюзе), а сама обработка выполняет команды в безопасном режиме. Большие выборки уходят порциями, чтобы ни база, ни модель не захлебнулись.
Запись. По умолчанию ключ доступа читающий: изменить данные через него нельзя физически, какую бы фантазию ни проявила модель. Запись включается отдельным режимом и работает иначе, чем чтение: сначала пробный прогон - скрипт выполняется в транзакции и откатывается, человек смотрит на результат, и только после явной команды выполняется по-настоящему.
Метаданные. Половина проблем «ИИ и 1С» - модель выдумывает имена реквизитов. Отдаем модели описание объектов конкретной базы, а при ошибке запроса возвращаем причину от платформы и фрагмент текста с меткой места ошибки - модель сама себя чинит со второй попытки.
Обработки открыты
Сами внешние обработки лежат в открытом репозитории: https://github.com/anoviul/-anoviul-onecdatalinkru
Там пять сборок: управляемые формы (УТ 11.4/11.5, УНФ, КА 2, ERP 2, БП 3), обычные формы (УПП 1.3, УТ 10.3, КА 1.1), отдельные сборки для платформ 8.3.5 и варианты для старых Windows, где нет TLS 1.2 - те работают через маленький локальный прокси.
Код обработок не закрыт: откройте .epf в конфигураторе и посмотрите своими глазами, что уходит наружу и что не уходит. Пароля на модулях нет - это принципиально.
Про обычные формы скажу отдельно, без сравнений с кем-либо: похоже, мы одни из немногих, кто всерьез поддерживает этот сценарий. Если у вас в хозяйстве есть УПП или УТ 10.3 - это для вас.
Кейс 1. Консультант 1С, у которого нет свободного программиста 1С
Знакомая ситуация: вы консультант, сопровождаете торговую базу, клиент пишет «почему по складу Основной минус 120 метров кабеля?». Программист 1С занят, до RDP клиента добираться десять минут.
Вместо этого вопрос уходит в чат как есть, словами. Дальше происходит то, за что мы любим эту связку: модель сама строит запрос к остаткам, сама догадывается посмотреть движения за период, и отвечает не цифрой, а историей: минус появился 28 числа, реализация на 350 метров проведена раньше поступления, поступление от 29 числа так и висит непроведенным, а контроль остатков на складе выключен. И тут же - что сделать: провести накладную, включить контроль.
Это ответ уровня хорошего консультанта, полученный за минуту, без единого открытого отчета. Роль человека - проверить и принять решение: важные цифры по-прежнему сверяются с отчетами, ИИ ошибается как стажер, просто очень быстрый.
Или как Вам такой кейс после переезда на ERP? Промт для ИИ: есть основное средство в ERP, сходи в УПП и проанализируй, не ошиблись ли в переносе остатков между базами.
Кейс 2. Программист 1С без консультанта 1С
Другая ситуация: вы программист, консультант в декретном, а бухгалтер уже неделю просит дать комментарий по учету затрат в налоговом учете. Благодаря ИИ, подключению к базе, когда ИИ знает и код расчета, и метаданные, поиск проблем идет на минуты.
Агент делает разведку сам: смотрит метаданные, точечно читает исходники, строит запросы на живых данных и рассказывает, где типовое поведение переопределено.
Кейс 3. Бухгалтер, оставшийся без сопровождения
Самый недооцененный пользователь. Договор сопровождения кончился, франч уехал, а работа осталась. Вопросы у бухгалтера простые: «почему не закрывается авансы», «откуда разница в начислении амортизации между БУ и НУ».
Для каждого из них раньше нужен был консультант 1С или программист.. Теперь это три вопроса в чат и готовый ответ. Ключ при этом читающий: испортить базу таким доступом нельзя в принципе, и это ровно то, что бухгалтер хочет услышать первым.
Кейс 4. Вайб-кодинг по живой базе. В частности в битрикс24
Отдельное удовольствие - режим ИИ-агента в среде разработки: Cursor, Claude Code и им подобные. Агент получает короткий промпт с адресом шлюза и правилами, и дальше работает как младший разработчик с доступом к базе: сам строит запросы, сам проверяет их на реальных данных, а потом зашивает алгоритм например в готовое вайб приложение Битрикс24. Нажали на кнопку- получили цену и остаток на товар 1С
Мой любимый момент: агент пишет выгрузку, тут же гоняет ее на живых данных порциями, видит расхождение и сам исправляет запрос. Цикл «написал - проверил - поправил», на который у человека уходит вечер, проходит за минуты. Запись при этом по-прежнему за человеком: агенту доступен пробный прогон, а настоящая запись - только по явной команде.
Чего этот подход не умеет
Честный абзац, чтобы не было завышенных ожиданий.
Это не инструмент разработки конфигураций: он не создаст вам документ и не перепишет модуль - для этого есть те самые MCP-серверы и EDT-интеграции, и там они сильнее. Ответ приходит не мгновенно: база забирает задания своим темпом, обычно это секунды, но на занятой базе может быть и минута.
И главное - модель ошибается в бизнес-логике: перепутать вид цены или взять не тот период она может так же уверенно, как и ответить правильно. Правило одно: цифры для решений сверяются с отчетами, ИИ отвечает быстро, а отвечает за цифры по-прежнему человек.
Вопросы, которые вы все равно зададите
Это MCP или нет? Для Claude подключение работает как обычный пользовательский коннектор, для ChatGPT - как действие GPT по OpenAPI-схеме, для агентов - как простой HTTP API. Протокол здесь вторичен: суть решения - в том, что на стороне базы нет ни сервера, ни расширения, ни открытого порта.
Куда уходят данные? Транзитом через шлюз к тому, кто спросил. Шлюз не складирует результаты запросов: хранятся настройки ключей и журнал обращений. Весь трафик от базы - исходящий HTTPS.
Почему внешняя обработка, а не расширение? Потому что расширения не работают на обычных формах, а УПП 1.3 жива и здорова. И потому что на сопровождаемой базе слово «расширение» означает в общем-то сложный процесс накатки, особенно в облачных базах 1С, а «внешняя обработка» - пять минут. Обработка не меняет конфигурацию вообще.
А если ИИ решит удалить данные? Читающим ключом - никак: изменение данных отсекается до исполнения, на двух сторонах. Пишущим - только через пробный прогон и явную команду человека. Плюс журнал: видно каждый запрос дословно.
Что с лицензиями 1С? Обработка работает в обычном сеансе 1С и использует его лицензию. Для постоянной работы она вешается регламентным заданием через «Дополнительные отчеты и обработки» - это штатный механизм.
Старые платформы правда работают? Правда. Для 8.3.5 собрана отдельная сборка без "штатного" JSON, для старых Windows без TLS 1.2 - вариант через локальный прокси. Это была самая кропотливая часть проекта, и именно поэтому она есть: с современными платформами справляются все.
Вместо заключения
Если у вас в хозяйстве есть база, которой не хватает «просто спросить» - возьмите обработку из репозитория и попробуйте на копии базы: подключение к копии ничем не отличается от рабочей. А если у вас УПП 1.3 - попробуйте обязательно и напишите в комментариях, что получилось.
Вступайте в нашу телеграмм-группу Инфостарт