Обновление конфигурации с переносом доработок руками ИИ: опыт, границы и грабли

18.06.26

Интеграция - Нейросети

Делюсь практикой переноса доработок при обновлении 1С:КА с 2.5.22 на 2.5.27 с помощью Claude, подключённого к конфигурации в EDT через MCP. Что у ИИ получилось хорошо, где он бессилен, что он осознанно отказался переносить — и какой главный вывод я сделал для следующего раза.

 

Зачем я вообще это затеял

Любой, кто обновлял типовую конфигурацию с большим объёмом доработок, знает эту боль. Включаешь фильтр по дважды изменённым объектам и открываешь окно трёхстороннего сравнения для каждого объекта метаданных. Пробегаешься по методам объекта и принимаешь решения: что затереть, что оставить, что перенести руками, а где отложить — потому что вендор полностью переработал механизм и старую правку в лоб уже не приложишь. И так объект за объектом. Часы или дни механической работы, которая требует внимания и усидчивости.

И вот в чём идея: основная масса этой работы — это перенос кода из одного места в другое по понятным правилам. А перекладывать код по правилам современные модели умеют. К тому же уже есть готовые MCP-серверы, скилы и другие наработки сообщества. Почему бы не попробовать всё это использовать для избавления от самой рутинной части работы 1С-разработчика.

Идея навеяна статьёй «Автоматизированная разработка 1С через нейросети: как мы собрали конвейер из агентов, инструментов и проверок» и другими.


Схема работы

Ключевой идеей было дать модели три вещи: структурированную информацию о текущих доработках конфигурации, исходный код «до обновления» (на случай, когда нужно посмотреть детали) и целевую конфигурацию, доступ к которой предоставлялся через MCP — практически со всей полнотой функционала EDT по рефакторингу, статическому анализу, проверкам и т.д.

Так как основная разработка ведётся через конфигуратор с подключением к хранилищу, для эксперимента потребовалось сделать ряд подготовительных действий.

Пошагово подготовка выглядела так:

  1. Из конфигурации ДоОбновления сохранил отчёт о сравнении с конфигурацией поставщика в текстовом формате. Важно, что в этом файле есть и структура конфигурации, и номера доработанных строк исходной конфигурации: по ним модель может без труда обратиться к нужному месту исходного кода, если перенести правку «в лоб» не получится.
  2. Выгрузил конфигурацию ДоОбновления в файлы.
  3. Загрузил эти файлы в конфигурацию ДляОбновления.
  4. Конфигурацию ДляОбновления обновил до актуального релиза 2.5.27 без переноса доработок.
  5. Снял ДляОбновления с поддержки и сделал из неё проект EDT.
  6. В проект Claude положил отчёт о сравнении и файлы конфигурации ДоОбновления, а саму конфигурацию ДляОбновления в EDT подключил через MCP-сервер.

В результате получились две конфигурации:

  • ДоОбновления — наша рабочая КА 2.5.22 со всеми доработками. Это источник, его трогать нельзя. Эта конфигурация существует и в виде файлов, доступных Claude, и в виде обычной конфигурации, подключённой к хранилищу.
  • ДляОбновления — та же конфигурация, обновлённая до 2.5.27 без переноса доработок. Под этим я имею в виду последовательное обновление через конфигуратор сразу на несколько релизов, при котором в окне сравнения-объединения я каждый раз нажимал «ОК» без каких-либо правок — то есть забирал чистый код вендора, затирая все наши доработки (кроме новых объектов метаданных и неизменённых объектов).

Получилась следующая схема доступа:

Конфигурация Роль Как видит её ИИ Права
ДоОбновления (файлы) Источник, контекст Файлы в проекте Только чтение
Отчёт о сравнении Карта доработок Файл в проекте Только чтение
ДляОбновления (EDT) Цель переноса Через MCP-сервер Чтение метаданных, чтение/запись модулей, проверка ошибок

Из доступных MCP-серверов для EDT я остановился на EDT-MCP от DitriX — большая часть взаимодействий с целевой конфигурацией, а также все проверки происходят именно при помощи него.

Важная деталь про MCP. Мне не удалось найти MCP-инструмент или скилл, который надёжно обрабатывал бы формы. А если даже одна форма из десяти перенесётся криво, это может не дать сохранить cf или привести к другим неприятным последствиям. Поэтому от переноса доработок форм средствами модели я отказался. Если у вас есть положительный опыт на этот счёт — пожалуйста, поделитесь.

Стек, на котором всё это работало: EDT 2025.2.1, MCP-плагин EDT-MCP версии 1.33, клиент — Claude Code (desktop) для Windows.

Так как это все-таки был эксперимент и в каком-то результате не было никакой уверенности, то параллельно с Claude весь процесс обновления с переносом доработок выполнялся ручками по старинке;


Промпт

Задача: перенести доработки конфигурации КА 2.5 после обновления.
В каталоге текущего проекта в файле `ОтчётОСравнении` — информация о доработках конфигурации до обновления. В каталоге текущего проекта в папке `Конфигурация до обновления` — файлы конфигурации до обновления.
При помощи MCP-сервера у тебя есть доступ к конфигурации после обновления, куда нужно перенести доработки. Если что-то непонятно — спроси.

Примечания:
- Папка `Конфигурация до обновления` очень объёмная — не анализируй там всё подряд, используй точечно: конкретный файл; диапазон строк кода.
- Часть доработок уже может быть перенесена.
- MCP-сервер доступен только для конфигурации `ДляОбновления` — для всех операций с ней используй только его.
- `Конфигурация до обновления` доступна только в виде файлов. Не изменяй их, используй как контекст для переноса.
- Если сильно сомневаешься в правильности переноса — не переноси.
- С особой осторожностью переноси изменения элементов и реквизитов форм. Сомневаешься — не переноси.
- После переноса предоставь структурированную информацию: что получилось, что не получилось, в чём сомневаешься — в иерархии объектов метаданных.

Что получилось хорошо

Перенос кода модулей — что и следовало ожидать. Модули объектов, модули менеджеров, модули форм перенеслись на отлично, разница с ручным переносом была только в пробелах (табуляциях) в строках с комментариями.

Что порадовало:

  • МенеджерОбмена, МенеджерРегистрации — огромные модули с кучей мелких и не очень доработок. Модель успешно поняла логику доработок и перенесла их в изменившиеся методы поставщика, в том числе специфический синтаксис отборов менеджера регистрации.
  • Дублирование функционала — в новой версии вендор добавил-таки ОсновнойБанковскийСчет организации, который ранее нам пришлось делать самим. Так как в обоих случаях была доработана функция ПолучитьБанковскийСчетОрганизацииПоУмолчанию, модель это поняла и дублировать логику не стала. В итоговом отчете о своем решении дала знать.
  • СКД - на то, что модель сможет перенести доработки СКД отчетом, я изначально не надеялся, поэтому попросил об этом (один отчетик) после завершения основной работы, в которой более-менее был уверен. Но на удивление, несмотря на изменившуюся СКД вендора, модель успешно перенесла доработки запроса, поля, ресурсы, новое поле структуры, формат полей и (уже само собой) код ПриКомпоновкеРезультата модуля объекта. Запустил отчет в предприятии - действительно все работает.
  • Роли, ввод на основании, состав подсистем и т.п. - мелочь, а приятно

Каждое изменение в целевой конфигурации прогонялось через get_project_errors. Финальное состояние — без ошибок проекта.


Где инструмент упёрся в потолок

Как я писал ранее, у меня не получилось добиться стабильного результата при доработке форм средствами ИИ: в MCP-серверах такого инструмента либо нет, либо работает через раз, скилы с правилами редактирования файлов форм тоже уверенности не внушают. Поэтому макеты форм в данном случае - большой пробел.

Что осталось на ручной перенос в EDT:

  • Изменения форм — элементы, реквизиты, команды и т.д.
  • Макеты — печатные формы и т.д.

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


Главные грабли и вывод: журнал на диске

Проблема. Контекст модели не резиновый — он сжимается. На длинной задаче (а перенос доработок крупной конфигурации — это длинная задача на много сеансов) модель начинает терять из виду, что уже сделано. В моем случае контекст в 1 000 000 токенов сжимался несколько раз. Хуже того: она может «помнить», что чанк готов, хотя реально его не доделала. В моём случае это привело к тому, что были пропущены доработки общих модулей — и всплыло это далеко не сразу. Также в итоговом отчете о проделанной работе часть информации по этой же причине была упущена.

Решение, к которому я (конечно, не я - Claude) пришёл, — вынести статус из контекста на диск. Контекст сжимается, файл — нет. Правила, которые модель предложила заложить с самого начала:

# Правила ведения отчёта о переносе доработок

## Журнал на диске (обязательно)
Веди файл `ОтчётПереноса.md` — это единственный источник правды по статусу.
- В НАЧАЛЕ каждого сеанса сначала прочитай этот файл целиком. Если его нет — создай по шаблону.
- ПОСЛЕ обработки каждого чанка СРАЗУ дописывай строку статуса (не в конце работы, не «потом»).
- Никогда не отмечай чанк готовым по памяти — только после реальной сверки с целевой конфигурацией.

## Формат строки (по чанку/объекту)
`- [СТАТУС] <номер> <ОбъектМетаданных> — <что сделано>; <что отложено/пропущено + причина>`
СТАТУС: x=перенесено, ~=частично, o=отложено, -=пропущено осознанно, пусто=не начато.

## Проверка «снизу вверх»
Статус «перенесено» ставь только после сверки целевой конфигурации:
grep по маркерам доработок (`// МАРКЕР` и т.п.) и по именам функций/реквизитов из чанка. Помни: фича может быть размазана по нескольким объектам (модуль + форма + реквизит) — проверяй ВСЕ части, прежде чем считать её готовой.

## Список задач — гранулярно
Заводи задачи по объектам/чанкам, а не пачками «модули 013–029».

## Память проекта
Устойчивые решения (что отложено и почему, принятые соглашения, паттерны пропуска) сохраняй в память проекта — она подгружается в каждый сеанс.

## Итог сеанса
Перед завершением убедись, что журнал на диске отражает фактическое состояние, и кратко перечисли, что осталось доделать вручную.

В следующий раз так и сделаю, а пока, может кому-то поможет избежать моих ошибок. 


Что в итоге

10 000 строк отчета о сравнении конфигурации Claude Opus обработал и перенес за 3 пятичасовых лимита 20$ подписки.

EDT проект с итогом работы модели я сохранил в .cf для сравнения со своим (ручным) переносом доработок. Если не считать проблем, описанных выше, модель справилась не хуже меня (местами лучше). Хотелось бы полностью делегировать эту задачу ИИ...

Достаточно много статей о применении ИИ в разработке с 1С в последнее время, но о самой рутинной операции в виде переноса доработок я почти не встречал. Хотелось бы услышать ваш опыт и предложения на этот счет.

Вступайте в нашу телеграмм-группу Инфостарт

Конфигурация обновление нейросети

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.

15250 руб.

25.08.2025    64254    130    36    

139

SALE! 30%

Банковские операции Обмен с интернет-банком Мастера заполнения Нейросети Программист Бухгалтер Пользователь 1С:Предприятие 8 1C:ERP 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:ERP. Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 3.0 Платные (руб)

Корректируйте банковские документы быстро и легко! Создайте правило обработки — и оно автоматически применится при загрузке выписки (отбор по любому реквизиту или регулярному выражению). Решение заполняет расшифровку платежа, комиссию эквайринга, подбирает ведомости на выплату зарплаты, помечает дубли из банка на удаление и многое другое. Доплачивать за алгоритмы не нужно — они включены в решение. Обработка работает при загрузке из файлов клиент-банка и через DirectBank. Новое — искусственный интеллект: модель приводит нестандартные назначения платежа к виду, понятному алгоритмам, а ИИ-ассистент прямо в 1С консультирует по решению и разбирает код правил и алгоритмов. Поддерживаются локальные и облачные OpenAI-совместимые модели — данные могут не покидать ваш контур.

15250 руб.

20.12.2024    16806    82    29    

75

Нейросети Программист Бесплатно (free)

Эта статья не столько про новую программу, сколько про путь: от желания немного улучшить чужой open-source проект — до создания собственного инструмента, который закрывает весь цикл работы с речью. Транскрибация, генерация статей и описаний через LLM, синтез аудиокниг — всё локально, в одном приложении. Исходники открыты, лицензия MIT.

вчера в 10:30    466    Ibrogim    21    

20

Нейросети Программист Бесплатно (free)

Новые результаты теста топовых ИИ в вайбкодинге на 1С. Это продолжение прошлой статьи, где нейросети написали внешнюю обработку за 19 минут. Теперь же с этой же задачей справляются за 3–4 минуты. Прошло всего несколько недель. Что будет дальше?

24.07.2026    9301    top_1c    64    

35

Нейросети Бесплатно (free)

OneBase продолжает развиваться благодаря обратной связи сообщества. В этом обновлении платформа получила ИИ-помощника, визуальный конструктор форм, СКД, push-уведомления и множество других улучшений. Рассказываю, что изменилось, какие решения были приняты и почему OneBase постепенно превращается из pet-проекта в полноценную open-source платформу для разработки бизнес-приложений.

21.07.2026    2676    Ibrogim    43    

20

Нейросети Программист Бесплатно (free)

Нейросеть для 1С, которая пишет рабочий код на BSL по вашей конфигурации: четыре месяца и больше сорока релизов после первой статьи про бесплатный MCP-сервер mcp-1c. Разберём, что изменилось: память на больших базах упала в разы, поиск по коду ускорился, добавилась параллельная работа и совместимость с Claude, Cursor и другими ИИ-клиентами. И что осталось прежним.

08.07.2026    8715    VyachGo    5    

26

Рефакторинг и качество кода Обновление 1С Программист 1С:Предприятие 8 1С:ERP Управление предприятием 2 Бесплатно (free)

На проекте сложного обновления 1С:ERP 2.4.14.181 до версии 2.5.22.106 нам было нужно уложить обновление в технологическое окно 48 часов (выходные). Исходный замер, с учетом промежуточных релизов 2.5.8.443, 2.5.12.270, 2.5.17.234, 2.5.22.106, показал требуемое время в 659 часов…

07.07.2026    3777    1c-izh    20    

21

Нейросети Программист Бесплатно (free)

Реальный ML там, где вы зачем-то используете AI. Вкатываемся под катом!

01.07.2026    4322    starik-2005    63    

30
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Elgrego 121 19.06.26 09:47 Сейчас в теме
Я за пару дней перенёс все наши доработки за десятки лет в расширение. Теперь обновление сводится к поверке применения расширения после обновления основной конфы. Если поставить kdiff3 в качестве внешней программы для сравнения текстов модулей, то 98% доработок выполняются автоматически. Обновление занимает 4-6 часов. Быстрее этого способа просто нет ;)
Best40000; solinik; n_mezentsev; +3 Ответить
Для отправки сообщения требуется регистрация/авторизация