Документация

Документация/Рабочее место

Разработка на 1С

Что DevMachine даёт разработчику 1С:Предприятия — навыки агента, проверка кода BSL, подключение 1С:EDT, выгрузка конфигуратора, данные базы через OData — и как это включить.

DevMachine работает с конфигурациями 1С так же, как с проектами на других языках: агент читает и правит модули на BSL (встроенном языке 1С), а приложение подсвечивает BSL и язык запросов. Для 1С есть свой модуль навыков агента, проверка кода анализатором BSL и подключение 1С:EDT (среды разработки 1С), через которое агент видит метаданные и ошибки проекта. Обзор для команд 1С — на странице DevMachine для 1С.

Что вы получаете

ВозможностьЧто даётКак включить
Модуль «1С»Навыки агента: модули BSL, проекты EDT, выгрузки конфигуратора, язык запросовПриложение предложит само; или «Настройки → Модули»
Проверка BSLПосле правки модуля агент получает ошибки анализатора BSL и исправляет ихВключать не нужно
1С:EDT через MCPАгент видит метаданные, модули и ошибки проекта, проверяет запросы, добавляет объекты и реквизиты«Настройки → Интеграции → Подключить 1С:EDT»
Выгрузка конфигуратораПапку с Configuration.xml можно открыть как проектОткройте папку
Данные базыОпубликованную базу можно читать через ODataПодключение «1С OData» в «БД»
ПодсветкаBSL и язык запросов — в редакторе и в чатеВключена всегда
EDT на Linux-сервереПроект и EDT — на сервере, окно — у вас«Проект на сервере»

Как приложение узнаёт проект 1С

Приложение считает папку проектом 1С, если в ней есть:

  • src/Configuration/Configuration.mdo — проект EDT (в том числе несколько проектов EDT в подпапках одного репозитория);
  • Configuration.xml — выгрузка конфигуратора в файлы.

Модуль «1С» добавляет агенту навыки разработки на 1С:Предприятии: как устроены модули BSL, проекты EDT и выгрузки конфигуратора, как писать запросы. По умолчанию модуль выключен.

  1. Откройте проект 1С. Приложение покажет тихое уведомление «Включить 1С для этого проекта?» — «Конфигурация 1С: модуль 1С даёт агенту навыки 1С».
  2. Нажмите «Включить…» и подтвердите. То же можно сделать в «Настройки → Модули».
  3. Модуль включится для этого проекта. Чтобы включить его во всех проектах, отметьте «Включить для всех моих проектов».

Модуль появится в новых сессиях агента, а уже открытые останутся с прежним набором. Подробнее — на странице Модули.

Проверка кода BSL

Когда агент правит модуль .bsl или .os, он сразу получает ошибки BSL Language Server и исправляет их. Агент видит только настоящие ошибки: ошибки разбора модуля и текста запроса, пропущенный обязательный параметр, возврат значения из процедуры, функцию без возврата и подобные. Замечаний по стилю он не получает и не берётся чинить то, о чём его не просили.

Набор можно поменять своим файлом .bsl-language-server.json в проекте: команда сама решает, какие проверки показывать агенту.

На macOS с Apple Silicon, Windows x64 и Linux x64 приложение само ставит анализатор при первой проверке: скачивает закреплённую версию и сверяет контрольную сумму. Java отдельно ставить не нужно. На macOS с процессором Intel и на Linux arm64 проверка работает, только если вы сами установили bsl-language-server и он есть в PATH.

Примечание

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

1С:EDT через MCP

1С:EDT подключается к агенту как MCP-сервер — внешний сервис, который даёт агенту свои инструменты. После этого агент видит структуру конфигурации и модулей, читает и ищет код, переходит к определениям и ссылкам, видит ошибки проекта, проверяет запросы, читает справку платформы, записывает модули и добавляет объекты метаданных и реквизиты.

Что нужно в EDT

  1. Установите в 1С:EDT плагин EDT-MCP, откройте проект и запустите сервер плагина. Шаблон «1С:EDT» в DevMachine ждёт сервер на этом компьютере, на порту 8765. Шаблон — это готовые настройки подключения, их подставляет кнопка «Подключить 1С:EDT» в «Настройки → Интеграции» (см. Подключение в DevMachine ниже).
  2. В EDT откройте Preferences → MCP Server → Destructive operations и разрешите modify_metadata. Иначе EDT будет спрашивать подтверждение в своём окне, а через 120 секунд откажет.

Подключение в DevMachine

  1. Откройте «Настройки → Интеграции» и нажмите «Подключить 1С:EDT».
  2. Шаблон заполнит всё сам: имя edt, адрес http://localhost:8765/mcp, таймаут 120 секунд и рекомендованный набор инструментов. У modify_metadata стоит отметка «спрашивать».
  3. Нажмите «Сохранить». Сервер подключится сразу, и в строке появится «Подключён».

Набор инструментов меняют кнопкой «Выбрать…»: «Рекомендованные», «Все» или «Ничего», а ещё инструменты можно отметить по одному. В рекомендованный набор не входят отладка, запуск 1С, информационные базы, git, переводы, создание и удаление проектов: нужные отметьте сами. Описание каждого инструмента уходит в модель с каждым запросом, поэтому чем меньше инструментов, тем быстрее и дешевле ответы. Новый набор заработает, когда нажмёте «Перезапустить агента».

Перед каждым вызовом modify_metadata, например перед сменой типа реквизита, в DevMachine придёт карточка подтверждения. Подробнее о MCP — на странице MCP-серверы, о карточках — в разделе Разрешения и вопросы агента.

EDT на сервере

Если EDT работает на Linux-сервере или виртуальной машине, откройте проект через «Проект на сервере» — см. Проект на сервере по SSH. Плагин EDT слушает только сам сервер, приложение подключается к нему через SSH, поэтому открывать порт наружу не нужно. В таком проекте «Интеграции» настраивают список MCP-серверов на самом сервере, а EDT подключается тем же шаблоном «1С:EDT».

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

Выгрузка конфигуратора

Папку с выгрузкой конфигурации в файлы (Configuration.xml в корне) можно открыть как обычный проект. Агент правит модули, анализатор BSL их проверяет. Изменения в Конфигуратор потом загружаете сами: из DevMachine в базу они не попадают.

Данные базы через OData

В инструменте «БД» есть тип подключения «1С OData». Он работает через стандартный интерфейс OData базы, опубликованной на веб-сервере.

  1. Нажмите «Добавить подключение» и укажите «Тип базы»: «1С OData».
  2. Вставьте адрес опубликованной базы или укажите хост и имя публикации, пользователя и пароль.
  3. В консоли пишите запросы OData по одному на строку, например Catalog_Номенклатура?$top=10.

Подключение только читает. Видны только объекты, которые администратор 1С включил в состав интерфейса OData. Агент может читать эти данные, если включён модуль «Databases» и уровень доступа это позволяет. Модуль включают в «Настройки → Модули», там он подписан по-английски (см. Базы данных). Уровень доступа агента к базе задают в «Настройки → Безопасность агента», на вкладке «Подключения» (см. Доступ агента к базам, кластерам и очередям).

Ограничения

  • Анализатор ставится сам только на macOS с Apple Silicon, Windows x64 и Linux x64.
  • Проверка BSL не видит правки, сделанные командами в терминале.
  • Выгрузка конфигуратора загружается обратно в базу вручную.
  • OData — только чтение и только опубликованные объекты.
  • Проект на сервере открывается из приложения для macOS и Windows.

Данные

1С:EDT и анализатор BSL работают на вашем компьютере или на сервере проекта. Всё, что прочитал агент, уходит в модель: код, метаданные, данные OData. Подробнее — на странице Данные и приватность.

Что дальше

Обновлено · Нашли неточность? Напишите на support@devmachine.ai или в Telegram.