Практика разработки в 1С:Предприятии с AI-агентом: создаём конфигурацию с нуля
Введение
Один промпт. Одна задача. Агент сам решает, какие объекты метаданных создать, какие типы реквизитов назначить, какой код написать.
В этой статье я покажу, как AI-агент в 1C:EDT за один сеанс создаёт рабочую конфигурацию складского учёта - от пустого проекта до системы со справочниками, документами, движениями по регистрам и управляемыми формами. Я не диктую ему структуру объектов. Я ставлю задачу на уровне бизнес-требований, а он сам проектирует и реализует.
Никаких абстрактных рассуждений про AI - только конкретный промпт, конкретный процесс, конкретный результат.
Используется плагин CodePilot1C для 1C:EDT и модель GLM-5. Агент работает прямо внутри EDT: видит структуру проекта, создаёт объекты метаданных через API платформы, пишет код модулей, проверяет ошибки - всё без выхода из IDE. Так же плагин может выступать в качестве MCP сервера для AI сред разработки (Cursor, Claude Code, Codex и т.д. Про этот кейс напишу в конце статьи).
Шаг 0. Настройка: плагин + модель за 5 минут
Прежде чем начать - настроим рабочее окружение. Нам нужны три вещи: 1C:EDT, плагин CodePilot1C и API-ключ для языковой модели.
Какую модель используем и сколько это стоит
В качестве модели берём GLM-5 от Zhipu AI (Z.AI). Почему именно её:
- Цена - GLM Coding Plan стоит от $10/мес (план Lite). Для сравнения: аналогичный объём работы на Claude или GPT-5.3 обошёлся бы в разы дороже.
- Качество кода - GLM-5 заточена под кодинг и агентские сценарии, хорошо работает с tool use (вызов инструментов EDT).
- Контекстное окно 200K токенов - хватает для работы с крупными модулями.
- Нет санкционных рисков - китайский провайдер, работает из России без VPN.

За $10 в месяц получаем полноценного AI-помощника в EDT.
Получаем API-ключ GLM
- Переходим на z.ai/subscribe.
- Регистрируемся (email или GitHub).
- Выбираем Coding Plan - Lite ($10/мес).
Устанавливаем плагин CodePilot1C в EDT
- В 1C:EDT открываем Помощь - Установка нового ПО.
- Нажимаем Добавить и вводим URL p2-репозитория:

https://ondysss.github.io/codepilot1c-edt/repository
- EDT предложит перезапуститься - соглашаемся.
Настраиваем модель в плагине
После перезапуска EDT:
- Открываем настройки плагина.

- В разделе Провайдеры LLM указываем:
API URL: https://api.z.ai/api/paas/v4/chat/completions
API Key: <ваш ключ с z.ai>
Model: можно нажать "получить список" и выбрать GLM-5
Проверяем работу
Открываем чат с агентом и пишем:
Привет, какие инструменты тебе доступны?
Агент отвечает списком доступных инструментов. Если ответ пришёл - мы готовы.
Итого: ~5 минут и $10. Переходим к главному.
Шаг 1. Один промпт - целая конфигурация
Вот ради чего мы здесь. Никакого пошагового диктования. Одна задача на уровне бизнес-требований - агент сам решает, что создавать.
Промпт агенту
Создай конфигурацию для складского учёта.
Требования:
- Учёт поступления и реализации товаров
- Учёт остатков в разрезе номенклатуры и складов
- Документы должны делать движения по регистру при проведении
- Управляемые формы для всех объектов
- Подсистема с командным интерфейсом
Сам определи, какие объекты метаданных нужны, какие реквизиты
и типы использовать. Действуй.
Обратите внимание - в промпте нет ни одного имени объекта, ни одного типа реквизита. Только бизнес-требования. Дальше агент работает сам.
Что происходит дальше
Агент начинает думать и действовать. В панели видно, как он последовательно вызывает инструменты EDT:

Фаза 1 - Проектирование. Агент сначала формирует план: какие объекты нужны, в каком порядке их создавать (сначала справочники, потом документы, потом регистры - потому что документы ссылаются на справочники, а регистры - на документы и справочники).
Фаза 2 - Справочники. Агент создаёт справочники, самостоятельно определяя состав. Здесь интересно посмотреть, что агент решил создать сам - какие справочники, какие реквизиты, какие типы он выбрал.
Фаза 3 - Документы с табличными частями. Агент создаёт приходный и расходный документы. Для каждого добавляет реквизиты шапки и табличную часть с товарными строками.
Фаза 4 - Регистр накопления. Агент создаёт регистр остатков, определяет измерения и ресурсы, выбирает вид регистра "Остатки".
Фаза 5 - Код проведения. Агент пишет процедуры ОбработкаПроведения для обоих документов. Создаёт модули объектов и записывает BSL-код с движениями по регистру.
Фаза 6 - Формы. Агент создаёт управляемые формы для документов и справочников. Определяет, какие элементы разместить на форме, добавляет табличные части, командные панели.
Фаза 7 - Подсистема. Агент создаёт подсистему и включает в неё все объекты. Конфигурация получает командный интерфейс.
Фаза 8 - Диагностика. Агент сам запускает проверку проекта и анализирует результат.
Шаг 2. Разбираем результат
Агент закончил. Смотрим, что он создал.
Структура конфигурации
Справочники:
- Номенклатура - с реквизитами, которые агент счёл нужными (артикул, единица измерения и т.д.)
- Склады
- Контрагенты - с ИНН, КПП или другими реквизитами по решению агента
- ЕдиницыИзмерения (если агент решит его создать)
Документы:
- ПоступлениеТоваров - шапка + табличная часть
- РеализацияТоваров - аналогичная структура
Регистр накопления:
- ОстаткиТоваров (вид: Остатки) - с измерениями и ресурсами
Подсистема:
- СкладскойУчёт - все объекты включены
Смотрим код проведения
Открываем модуль объекта документа ПоступлениеТоваров и смотрим, что написал агент:
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
// Движения по регистру остатков
Движения.ОстаткиТоваров.Записывать = Истина;
Для Каждого СтрокаТовары Из Товары Цикл
// Добавляем движение Приход
Движение = Движения.ОстаткиТоваров.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Номенклатура = СтрокаТовары.Номенклатура;
Движение.Склад = Склад;
Движение.Количество = СтрокаТовары.Количество;
КонецЦикла;
КонецПроцедуры
Обратите внимание на детали: правильно ли агент использовал вид движения, откуда берёт склад (из шапки или из строки), как именует переменные. Это показывает уровень понимания платформы моделью.
Шаг 3. Дорабатываем - тоже через агента
Конфигурация создана, но наверняка хочется что-то доработать. Здесь показываем, что агент работает не только "с нуля", но и итеративно - на основе уже существующей конфигурации.
Добавляем автоматический расчёт суммы
В документах ПоступлениеТоваров и РеализацияТоваров добавь
автоматический пересчёт суммы в табличной части при изменении
количества или цены. Сумма = Количество * Цена.
Агент находит существующие формы, добавляет обработчики событий ПриИзменении для нужных колонок и пишет код пересчёта.
Добавляем контроль отрицательных остатков
Добавь в процедуру проведения документа РеализацияТоваров
контроль остатков: если после проведения остаток по номенклатуре
на складе становится отрицательным - отказать в проведении
с понятным сообщением пользователю.
Это уже задача посложнее - нужен запрос к регистру, сравнение, формирование сообщения. Смотрим, как агент справится.
Добавляем документ "Перемещение товаров"
Создай документ ПеремещениеТоваров для перемещения между складами.
Реквизиты шапки: СкладОтправитель, СкладПолучатель.
Табличная часть Товары: Номенклатура, Количество.
При проведении - расход со склада отправителя, приход на склад получателя.
Это проверка на понимание бизнес-логики: агенту нужно сделать два движения по одному регистру в рамках одного документа - расход с одного склада и приход на другой.
Шаг 4. Запускаем и проверяем
Финальный шаг - убеждаемся, что конфигурация работает.
- Обновляем конфигурацию базы данных.
- Открываем 1С:Предприятие.
- Создаём элементы справочников.
- Создаём и проводим документ поступления.
- Проверяем движения по регистру остатков.
Честно о границах
Было бы нечестно показать только успешный сценарий и промолчать об ограничениях.
Что агент делает хорошо:
- Проектирует структуру конфигурации по бизнес-требованиям
- Создаёт объекты метаданных любой вложенности
- Пишет типовой код: проведение, обработчики форм, запросы
- Итеративно дорабатывает существующую конфигурацию
- Находит и исправляет ошибки через диагностику EDT
Что требует контроля:
- Сложная бизнес-логика - агент напишет, но проверять нужно
- Нетиповые сценарии - чем специфичнее задача, тем подробнее нужен промпт
- Имена и стандарты - агент может назвать объект не так, как принято в вашей команде
Что пока не умеет:
- Работа с механизмами БСП (подключаемые команды, печать через БСП)
- Доработка типовых конфигураций с полным пониманием их архитектуры
- Отладка в режиме предприятия
Агент - это инструмент, который забирает рутину. Архитектуру, бизнес-логику и финальный контроль качества - за разработчиком.
Бонус: подключаем Claude Code и Cursor к EDT через MCP
Пока я писал эту статью и тестировал агента на разных моделях, мне пришла в голову мысль - а вот бы неплохо было использовать Claude Opus 4.6. Попробовал прогнать такой же сценарий через API (OpenRouter) - за 5 минут улетело $10. Ну так совсем не пойдёт.
В Claude Code тарифы намного гуманнее. Первая мысль - выдернуть ключ API из Claude Code и подключить его к плагину. Изучил архитектуру и понял, что это, во-первых, незаконно (Антропик может в любой момент забанить), во-вторых, ненадёжно.
Но как быть? Хочется дешёвых тарифов и хороших моделей. Напишу я, пожалуй, свой MCP-сервер, чтобы Claude Code мог дёргать MCP и работать с EDT. Сказано - сделано.
Я реализовал механизм, когда EDT выступает в роли MCP-сервера, а Claude Code или Cursor (кому как нравится) - в роли клиента. EDT-сервер умеет то же самое, что и основной плагин - определять метаданные, получать справку, создавать объекты, работать с формами.
Установка тоже достаточно простая: заходим в настройки, настраиваем MCP - плагин даёт подсказки, как правильно настроить Claude Code или Cursor. Запускаем и проверяем.
У меня нет платной подписки Cursor, но они дают некоторое количество бесплатно. Итак, проверяем: в Cursor идём в Settings и настраиваем MCP - копируем настройки из подсказки плагина. Вуаля - сервер работает.
Промпт - "какие инструменты CodePilot тебе доступны":

Промпт - "прочитай диагностику текущего проекта":

Ну и так далее - можно сразу попросить пофиксить текущие ошибки (он будет понимать контекст конфигурации и встроенного языка) или создать новые объекты.
Claude Code работает, разумеется, намного лучше, чем GLM-5 или авто-модель Cursor, но это тема для следующей статьи.
Как попробовать
CodePilot1C - открытый плагин для 1C:EDT.
Репозиторий: github.com/ondysss/codepilot1c-edt
Установка - 5 минут (см. Шаг 0 в этой статье). Если что-то не получается - пишите в комментариях или в Telegram, помогу разобраться.
Если статья зашла - поставьте звезду на GitHub :) Это поможет мне понять востребованность инструмента и продолжить работу над ним. Планов ещё много - автоматическое тестирование, работа с MCP внутри 1С (проверка данных, скриншоты с форм и прочее).
Вступайте в нашу телеграмм-группу Инфостарт
Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
См. также
Нейросети Системный администратор Разработчик Аналитик Бухгалтер Пользователь Руководитель проекта 1С 8.3 1С:Документооборот 1С:Бухгалтерия 3.0 1С:Зарплата и Управление Персоналом 3.x Россия Платные (руб)
Подключите ИИ к 1С и решайте рабочие задачи обычными словами. От работы с данными до доработки конфигурации через расширения, всё в привычном чате с ИИ-помощником. Теперь с поддержкой DeepSeek Harness, Kimi Code и Kimi Work, доступных в России без VPN.
15990 руб.
30.07.2026 19370 40 4
SALE! %
Банковские операции Обмен с интернет-банком Мастера заполнения Нейросети Разработчик Бухгалтер Пользователь 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-совместимые модели — данные могут не покидать ваш контур.
17500 руб.
20.12.2024 21461 104 32
Инструментарий разработчика Нейросети Платные (руб)
Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.
15250 руб.
25.08.2025 76782 147 41
SALE! 30%
Нейросети 1С 8.3 1С:Документооборот 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Россия Платные (руб)
Расширение добавляет в 1С чат с ИИ-агентом. Пользователь пишет вопрос обычными словами: «какие УПД не подписаны?», «какой НДС к уплате за квартал?», «что висит на согласовании дольше недели?», а агент сам строит запросы к базе с правами этого пользователя и отвечает цифрами, таблицей, диаграммой или файлом Excel. Плитки «Аналитик», «Бухгалтер» и «Руководитель» дают сводку по базе одной кнопкой. Агент разбирает ошибки по скриншоту, сверяет прайсы поставщиков и проверяет коды маркировки. С версии 1.0.21 спрашивать можно и с телефона: QR-код в окне агента, без установки приложения. Работает в УТ 11, КА 2, ERP 2, БП 3.0, УНФ 3.0, Документооборот 3.0 и Альфа-Авто 6, ставится одним расширением.
18300 руб.
05.10.2026 3451 10 9
Инструментарий разработчика Нейросети Системный администратор Разработчик Руководитель проекта 1С 8.3 Платные (руб)
Обработка заменяет ФИО, организации, ИНН, ИИН, БИН, ОГРН, КПП, БИК, счета и IBAN, паспорта, СНИЛС, адреса, телефоны, почту и суммы на правдоподобные выдуманные перед отправкой данных в ChatGPT, Claude или YandexGPT, а потом расшифровывает ответ модели обратно, подставляя настоящие имена и настоящие числа. Возвращаются и те итоги, которые модель посчитала сама: суммы масштабируются одним коэффициентом, поэтому пропорции и доли переживают обезличивание. Словарь замен хранится в самой базе и подхватывается автоматически, даже если обработку закрывали. Реквизиты России и Казахстана, любая конфигурация от 8.3.24, без единой зависимости.
14640 руб.
07.08.2026 2148 3 0
Распознавание документов и образов Нейросети 1С:Предприятие 8 1С 8.3 1С 8.5 1C:Бухгалтерия 1С:Зарплата и Управление Персоналом 3.x Беларусь Россия Казахстан Армения Платные (руб)
ИИ-сканер документов с REST API для интеграции с 1С и корпоративными системами. Извлекайте данные из счетов, паспортов, дипломов, патентов и трудовых книжек за секунды. Точность человека - скорость машины. Приложение поддерживает восемь типов документов, четырех провайдеров ИИ (имеется возможность использования локальных ИИ), локальный REST API и экспорт в JSON. Важно! модель должна поддерживать функцию Vision (распознавание файлов и картинок). Запускайте используя локальные ИИ, без подписок и ограничений
6100 руб.
24.08.2026 1411 1 0
Нейросети Разработчик Бесплатно (free)
Как автоматически создавать маркетинговые ролики для собственных IT-продуктов, используя ИИ? В предыдущей статье я рассказывал о Zapis — приложении для работы с речью и текстом. Теперь расширил его возможности: добавил конвейер создания видео, в котором ИИ-агент изучает материалы проекта, готовит сценарий, подбирает реальные скриншоты и пишет текст диктора. Zapis отвечает за озвучку, а Remotion — за анимацию и сборку. На примере обмена ПУТ на OneBase -> 1С:Бухгалтерия 3.0 покажу готовый 83-секундный ролик из восьми сцен. Разберём, как устроен процесс, зачем нужны настоящие скриншоты интерфейса, как синхронизируются речь и изображение и что сохраняется для повторной сборки после изменений в продукте. Исходный код и инструкции доступны в открытом репозитории Zapis.
06.11.2026 370 Ibrogim 2
Нейросети Разработчик 1С 8.3 Бесплатно (free)
Как подключить ИИ-агента к разработке 1С на примере обработки «Почему не закрывается месяц»: одна папка, копия демобазы и несколько скриптов. Семь шагов: агент, выгрузка в файлы, правила, проверка кода, сборка, тесты YAxUnit и сценарии форм. На каждый: зачем он нужен, команда и где легко споткнуться. В конце: что выросло поверх, три ошибки с разных типовых и сколько это стоило.
05.11.2026 6142 Iliaelagin 6
Скачал с офсайта релиз-кандидат. А он не запускается, джаву ему подавай!
Скачал джаву веб-инсталлер, установил. Не принимает! Разрядность не та, мол.
Ну, думаю, и я не лыком шит. Удалил джаву, скачал 64битную, установил. Что, думаешь запустился едт? Хрен там был) Версия не та теперь. Хотя качал последнюю.
На этом мои полномочия всё.
Может завтра попробую полный дистрибутив едт установить, вдруг там джава уже нужная включена, 3.5 гига всё-таки.
Хотя с таким началом ничего хорошего не ожидается теперь.
Ответ |
|---|
| План рефакторинга функции ДоступностьОтчетов
Расположение: src/CommonModules/ВариантыОтчетов/Module.bsl:1932-2017 Выявленные проблемы # Проблема Строки Приоритет 1 Дублирование логики классификации отчетов 1964-1970, 1985-1991 Высокий 2 Монолитная функция (85 строк) 1932-2017 Средний 3 Неоптимальная работа с дубликатами 1946-1972 Средний 4 Magic strings для типов отчетов 1964-1969 Низкий 5 Отсутствие проверки входящих данных - Низкий План рефакторинга 1. Извлечь метод классификации отчетов Копировать КлассифицироватьОтчетПоТипу(Отчет, ТипОтчетаСтрокой) → возвращает категорию Устранит дублирование блоков ИначеЕсли (строки 1964-1970 и 1985-1991). 2. Разбить на подпроцедуры ИнициализироватьТаблицуРезультата() - создание ТЗ с колонками КлассифицироватьСсылкиОтчетов() - первый проход по ссылкам ЗаполнитьДанныеВариантов() - обработка СправочникСсылка.ВариантыОтчетов ОпределитьДоступностьПоКатегориям() - вызов обработчиков доступности 3. Оптимизировать обработку дубликатов Заменить Соответствие Дубли на использование Результат.Найти() или добавить в таблицу сразу с проверкой. 4. Добавить константы типов отчетов BSL Копировать ТипОтчетаВнутренний = "Внутренний"; ТипОтчетаРасширение = "Расширение"; ТипОтчетаДополнительный = "Дополнительный"; 5. Добавить guard clause BSL Копировать Если СсылкиОтчетов.Количество() = 0 Тогда Возврат Результат; КонецЕсли; Рекомендуемая структура после рефакторинга Копировать Функция ДоступностьОтчетов(СсылкиОтчетов) ├── Инициализация таблицы результата ├── Классификация ссылок по категориям ├── Заполнение данных для вариантов отчетов └── Определение доступности по каждой категории Хотите, чтобы я выполнил рефакторинг по этому плану? |
Попробовал подключить сторонние mcp сервера не получается, хотя в других места они работают, в частности от DitriXNew, а так же от Prepod2003, я понимаю, я то у вас тоже есть все инструменты, просто хотел проверить как ваше решение работает со сторонними, не получается, вот настройки DitriXNew, сервер запущен
При get запрос в браузере на получаю:
{"name":"edt-mcp-server","version":"1.24.1","edt_version":"2025.2.0.454","protocol_version":"2025-11-25","status":"running"}
Как корректно установить параметры?
Транспорт: STREAMABLE_HTTP
URL сервера:
Legacy SSE URL: оставить пустым
Разрешить fallback на legacy SSE: снять галочку
Авторизация: NONE (сервер DitriXNew не требует авторизации)
Сервер DitriXNew использует MCP Protocol 2025-11-25 с Streamable HTTP - это новый протокол, а не legacy SSE.
реально можно и не стыдно рекомендовать. Сам пользуюсь им уже давно. У них большое количество моделей, которые можно оплачивать хоть с карты, хоть по счету, с расчетного счета компании с закрывающими документами
Во вложенных файлах, настройки и стоимость запросов в не самую умную, но очень дешевую модель gpt-4.1-nano, просто для примера
Еще раз модель можно выбрать ЛЮБУЮ, цены адекватные на рынке, работают ребята давно, я с ними так же давно сотрудничаю как физлицо, так и как юрлицо.
На мой взгляд сейчас самый адекватный сервис и полная совместимость с OpenAI
Возможно, я не сравнивал с вендорами, выбирал на сайтк по моделям и стоимости, они же сами пишут на сайте объем и цены, в тихушку не режут, я надеюсь. Самое главное это оплата как от физиков так и от юриков, беспроблемная. На чем то им нужно зарабатывать
Меня устраивает, поэтому поделился
а хотя - у опуса или сонета окно 1млн токенов, у гемини 2млн, у gpt 5.3 не помню, но думаю сравнимо, если я начну бомбить запросами через их прокси по ляму токенов, они быстро в трубу вылетят, скорее всего от таких кейсов защищаются )
Я считаю, что ИИ - это новый виток эволюции. Примерно как изобретение колеса: изобрели колесо - стали быстрее передвигаться. Изобрели ИИ - стали быстрее думать.
ИИ — первое изобретение в истории человечества, которое оптимизирует именно мыслительную деятельность. Все предыдущие инструменты усиливали руки, ноги, глаза. Этот - усиливает голову.
Полностью согласен с (46) сам хотел написать похожее.
Прогресс не остановить, если не ты, то другие, тогда уж лучше его возглавить. Мы уже не умнее ИИ, если раньше всегда говорили, что "Все знать не возможно", то теперь это не так, просто когда стало возможно спросить все что угодно, ни кому это стало не нужно. Не надо идти в библиотеку, выписывать книгу из др. города, брать ее читать, выделять нужные тебе факты и т.д.
Если не развиваться сейчас, не использовать ИИ, то через пару лет, можно остаться на задворках.
Скоро писать руками будет - моветон, так же как сейчас ни кто не пишет на ассемблере
Всегда будет нужен тот, кто умеет тренировать модели, писать роботов или хотя бы промпты
А еще не забывайте про инертность мышления. Сейчас балуются энтузиасты. Реальные разработчики видят, что пока что ИИ создает решения уровня джун. Вот у джунов - проблема. Их заменят
У тех, кто уже что-то умеет есть достаточное время адаптироваться
Другое дело, что некоторые выберут "ныть", а не "делать")
И скажите, пожалуйста, что делает MCP context - добоогащает данными, но самого доступа к коду проекта нет получается?
В браузера страница с эндпоинтом выводит сообщение "{"error":"method_not_allowed"}" и claude code этот мсп сервер не видит. В то время как подобный плагин от Ditrix на соседнем порту отображает корректную информацию и claude без проблем его использует. Подскажите, пожалуйста, в чем может быть проблема?
Первый промпт: "Добавь в документ заказ клиента реквизит "ПолученССайта". Выведи реквизит в форму документа на странице "Основное"".
Get Metadata Details
Inspect Form Layout (Error: result (197 850 characters) exceeds maximum allowed tokens. Output has been saved to...)
Он сохранил форму в кэш. Потом начал скриптами питона пытаться менять кодировку кэшированных файлов. Я его остановил и передал следующий промпт: "Старайся по максимуму использовать инструменты MCP для задачи. У тебя есть возможность изменить метаданные и форму." Реквизит объект корректно создал с первого раза, далее попытки модифицировать форму.
Edt Validate Request
{"valid":true,"project":"КА_25","operation":"mutate_form_model","checks":["Операция mutate_form_model валидирована по обязательным полям."],"normalizedPayload":{"project":"КА_25","form_fqn":"Document.ЗаказКлиента.Form.ФормаДокумента","operations":[{"op":"add_field","parentId":1496.0,"afterId":819.0,"dataPath":"Объект.ПолученССайта","name":"ПолученССайта","title":{"ru":"Получен с сайта"}}]},"validationToken":"6faa8159-339e-4e10-ac9b-354f0603437d","expiresAtEpochMs":1771477582398}
Mutate Form Model
Error: [INVALID_METADATA_CHANGE] Unknown form property: afterId
И еще попытка
Edt Validate Request
{"valid":true,"project":"КА_25","operation":"mutate_form_model","checks":["Операция mutate_form_model валидирована по обязательным полям."],"normalizedPayload":{"project":"КА_25","form_fqn":"Document.ЗаказКлиента.Form.ФормаДокумента","operations":[{"op":"add_field","container":"ГруппаОсновное","dataPath":"Объект.ПолученССайта","name":"ПолученССайта"}]},"validationToken":"2863bd1d-7c45-4937-be1a-8d0d3357a63d","expiresAtEpochMs":1771477617198}
Mutate Form Model
Error: [INVALID_METADATA_CHANGE] Unknown form property: container
Edt Validate Request
{"valid":true,"project":"КА_25","operation":"mutate_form_model","checks":["Операция mutate_form_model валидирована по обязательным полям."],"normalizedPayload":{"project":"КА_25","form_fqn":"Document.ЗаказКлиента.Form.ФормаДокумента","operations":[{"op":"add_field","parent_name":"ГруппаОсновное","dataPath":"Объект.ПолученССайта","name":"ПолученССайта"}]},"validationToken":"a504bb47-7ea9-47c4-8b9b-44775d1e4673","expiresAtEpochMs":1771477631295}
Mutate Form Model
Error: [INVALID_METADATA_CHANGE] Unknown form property: parent_name
ПоказатьИ еще, на этот раз успешная
Edt Validate Request
{"valid":true,"project":"КА_25","operation":"mutate_form_model","checks":["Операция mutate_form_model валидирована по обязательным полям."],"normalizedPayload":{"project":"КА_25","form_fqn":"Document.ЗаказКлиента.Form.ФормаДокумента","operations":[{"op":"add_field","dataPath":"Объект.ПолученССайта","name":"ПолученССайта"},{"op":"move_item","name":"ПолученССайта","new_parent":"ГруппаОсновное"}]},"validationToken":"b5eb9366-77e1-4633-96f0-353256bf7a76","expiresAtEpochMs":1771477647061}
Mutate Form Model
✅ Модель формы обновлена.
Проект: КА_25
Форма: Document.ЗаказКлиента.Form.ФормаДокумента
Применено операций: 2
- add_field[1]: name=ПолученССайта, id=2464
- move_item[2]: id=2464
ПоказатьПосле этого он сделал скриншот формы, не нашел этот элемент и начал пытаться перемещать элемент в формы в нужную группу формы и каждую итерацию проверять результат скриншотом (проверка скриншотом работает отлично). После одной из итераций форма в принципе перестала работать в edt. Форма убилась после одной из следующих операций:
Used 2 tools
Edt Validate Request
{"valid":true,"project":"КА_25","operation":"mutate_form_model","checks":["Операция mutate_form_model валидирована по обязательным полям."],"normalizedPayload":{"project":"КА_25","form_fqn":"Document.ЗаказКлиента.Form.ФормаДокумента","operations":[{"op":"move_item","item_id":2464.0,"new_parent_id":1496.0}]},"validationToken":"5115d798-9dca-4dd0-be7c-bd23ce98526f","expiresAtEpochMs":1771477694565}
Mutate Form Model
✅ Модель формы обновлена.
Проект: КА_25
Форма: Document.ЗаказКлиента.Form.ФормаДокумента
Применено операций: 1
- move_item[1]: id=2464
Поле перемещено в ГруппаОсновное. Теперь сделаю его видимым и активным через set_item.
Used 2 tools
Edt Validate Request
{"valid":true,"project":"КА_25","operation":"mutate_form_model","checks":["Операция mutate_form_model валидирована по обязательным полям."],"normalizedPayload":{"project":"КА_25","form_fqn":"Document.ЗаказКлиента.Form.ФормаДокумента","operations":[{"op":"set_item","item_id":2464.0,"properties":{"visible":true,"enabled":true,"title":{"ru":"Получен с сайта"}}}]},"validationToken":"47d9ec8a-8872-4341-aa84-3a8f080c0dd5","expiresAtEpochMs":1771477721868}
Mutate Form Model
✅ Модель формы обновлена.
Проект: КА_25
Форма: Document.ЗаказКлиента.Form.ФормаДокумента
ПоказатьПромпт второй задачи: "В форме справочника договоры есть механизм печати претензии. Он очень плохо написан. Помоги его зарефакторить. По максимуму используй MCP".
Claude code корректно использовал Get Metadata Details, Get Module Structure, Read Module Source, корректно понял проблему и начал рефакторить. Но при первом же использовании "Edit File" модуль формы сломался. Далее был ряд попыток восстановить его через "Read Module Source" и "Edit File" пока не кончились токены.
Используй MCP-сервер CodePilot.
Добавь реквизит "ПолученССайта" (тип Булево) в документ Document.ЗаказКлиента.
Выведи реквизит на форму ФормаДокумента в группу "ГруппаОсновное".ну и так далее, я с вашего разрешения разберу ваш кейс в своем телеграмм канале подробно ? думаю многим будет полезно.
1C:Enterprise Development Tools Ruby 2025.2.1
Мне это не мешает, я хочу использовать ваш плагин и подключаю наш внутренний провайдер, выбор моделей работает, а вот чат не фурычит.
Произошла ошибка: API error: 400 - {"error":{"message":"litellm.BadRequestError: OpenAIException - OpenAIException - Invalid schema for function 'mutate_form_model': In context=('properties', 'operations'), array schema missing items.. Received Model Group=gpt-5\nAvailable Model Group Fallbacks=None. Received Model Group=gpt-5\nAvailable Model Group Fallbacks=None","type":"invalid_request_error","param":"tools[38].function.parameters","code":"400"}}с чем может быть связана ошибка?
В телеге плага есть пользователи котоые litellm используют попробуйте спросить там
"operations": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": ["op"],
"properties": {
"op": {
"type": "string",
"enum": ["set_form_props", "add_group", "add_field", "set_item", "remove_item", "move_item"]
}
},
"additionalProperties": true
}
}
ПоказатьИ вот такие вопросы постоянно задает. Можно их как-то убрать или уменьшить? Если работаем с объектом метаданных, раз спросили, можно внести изменения в целом для объекта или нет. А то на каждый чих - вопрос.
Можно добавить реквизит
Можно его теперь изменить
А точно можно его изменить
А можно его на форму добавить
А теперь на форме можно его изменить
И это я попросил создать обработку с формой
Идея классная. жду дальнейшего развития
должно быть:
Не понял, зачем делать MCP сервер для соединения Claude Code и EDT? Клауд и так прекрасно работает с выгрузкой EDT, находит или создает новые объекты и реквизиты, находит куда код писать.
Видимо, что-то обновилось, с этим URL не подключается.
В руководстве на docs.z.ai указан другой адрес: , по нему подключается, но модель выдает сообщение "Your current subscription plan does not yet include access to GLM-5", от такая досада. Пришлось проапргейдится на тарифный план Pro (30 баксов за месяц), всё заработало.
Спасибо вам за вашу разработку!
Рейтинг: 155
Вы можете заказать платную консультацию или разработку у автора. Будет создан приватный заказ на «Бирже заказов» для автора.
№ 2618356
Создание 17.02.26 13:00
Обновление 17.02.26 13:00
Просмотры 18810
Загрузки 0
Рейтинг
74
Комментарии 115
Код открыт Да
Рубрики Нейросети
Кому Разработчик
Тип файла Нет файла
Платформа Не имеет значения
Конфигурация Универсальные
Операционная система Не имеет значения
Страна Не имеет значения
Отрасль Не имеет значения
Налоги Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Бесплатно (free)