BSL Forge
Официальный сайт проекта: unikr-pro.ru
Впервые здесь? Начните с быстрого старта — команда «BSL Forge: Быстрый старт» или кнопка на панели «Действия»: от чистого VS Code до первой доработки с ИИ-помощником.
Разработка на 1С:Предприятие 8 в VS Code — вместе с ИИ-агентом и без страха за базы.
Пишете код в VS Code и нажимаете Ctrl+Alt+U. Плагин загружает в базу только изменённые файлы,
проверяет модули и обновляет конфигурацию БД. Ошибки появляются в панели «Проблемы» с точной строкой.
То же самое умеет ваш ИИ-агент: он сам загружает код, читает ошибки и исправляет их.
Все действия собраны на панели «Действия»: значок BSL Forge слева или кнопка с огоньком справа вверху над редактором.
После установки VS Code сам откроет «BSL Forge: начало работы» — пошаговое знакомство с отметками: окружение → проект →
ИИ-агент → первое «Применить». Вернуться к нему — «BSL Forge: Пошаговое знакомство».
Возможности
Работа с базой
- Применить одной кнопкой. По git плагин понимает, что изменилось с прошлой загрузки, загружает только это,
запускает синтаксический контроль и обновляет БД.
- Ошибки в «Проблемах». Каждая ошибка 1С привязана к своему файлу, строке и слову.
- Выгрузка из базы — изменённого или всего. Если полную выгрузку прервать, исходники останутся как были.
- Ветка git = своя база. Для новой ветки плагин предложит свою базу — копию текущей, из резервной копии,
из .dt или пустую из исходников. Дальше при переключении веток база меняется сама, задачи не мешают друг другу.
- Где используется / кто пишет в регистр. Курсор на
Справочники.Валюты или РегистрНакопления.Остатки →
все места по группам: кто пишет (движения документов, наборы записей), код, формы, запросы СКД, типы реквизитов,
подписки, роли, подсистемы. Несколько секунд даже на КА (25 тыс. модулей).
- Подсказки по метаданным.
Справочники. → объекты, Объект. → реквизиты и табличные части с типами,
общий модуль → экспортные методы с параметрами, Движения. → регистры документа; в тексте запроса — поля
таблиц и виртуальных таблиц по псевдониму. Наведение показывает синоним и тип, F12 открывает описание объекта.
Определяемые типы раскрываются, тип параметра берётся из комментария «Параметры:» над методом (стандарт ИТС),
в модуле формы — реквизиты формы, ЭтаФорма., Элементы. и колонки таблиц формы.
- Журнал регистрации в VS Code. Ошибки за период сгруппированы по месту в коде и стоят в «Проблемах» на
строках модулей: сколько раз, когда, у кого. Читается прямо из файлов журнала, без запуска 1С.
- Сценарные тесты Vanessa Automation. Файлы .feature видны в панели «Тестирование» VS Code: запуск файла или
одного сценария, зелёные и красные отметки, упавший шаг подсвечен на своей строке с текстом ошибки. Vanessa
скачивается одной командой, на боевой базе тесты не запускаются. ИИ-агент запускает их сам после правки (
forge_run_tests).
Отчёт о тестах: итог, упавшие шаги со ссылками на строки — прямо в VS Code; если установлена утилита Allure —
полный Allure-отчёт в браузере. Результаты в формате Allure пишутся при каждом прогоне (для CI).
- Внешние обработки и отчёты. «Разобрать .epf/.erf» — файл в XML-исходники (
src/epf, src/erf), их можно
хранить в git и править вместе с ИИ; «Собрать .epf/.erf» — обратно в файл (build/). Незакоммиченные правки
исходников без вашего согласия не перезаписываются. ИИ-агент делает то же сам (forge_build_external,
forge_dump_external): поправил обработку — собрал и проверил.
- Задачи в коде. TODO, FIXME, HACK, ДОДЕЛАТЬ, ИСПРАВИТЬ по всему проекту — отдельным списком в боковой панели,
щелчок открывает строку. Новые, ещё не закоммиченные модули тоже учитываются.
- Проекты 1C:EDT. «EDT → Конфигуратор» переводит проект EDT в XML-выгрузку, с которой работает плагин;
«Конфигуратор → EDT» — обратно. Конвертирует сам 1C:EDT (
1cedtcli), он должен быть установлен. «Создать проект»
в папке с проектом EDT предложит перевести его сам.
- Ошибка пользователя → строка кода. Пользователь прислал «{ОбщийМодуль.ПродажиСервер.Модуль(123)}: Деление на 0»
или отчёт об ошибке (.zip из окна ошибки 1С) — все места цепочки «по причине» попадают в «Проблемы», открывается
строка с причиной. Если код в проекте уже сдвинулся, строка уточняется по фрагменту кода из ошибки.
- Доктор производительности. Технологический журнал включается одной командой: для клиента и файловых баз —
без прав администратора, для сервера 1С на этом компьютере — с запросом прав Windows. Повторите медленное действие,
нажмите «Разобрать» — запросы в цикле, самые тяжёлые запросы, медленные вызовы сервера, исключения и блокировки
попадут в «Проблемы» на свои строки кода. «Найти запросы в цикле» проверяет модули без запуска 1С.
У серверных баз (MS SQL, PostgreSQL) рядом — что нашлось в плане запроса: полный просмотр таблицы, добор полей
по ключу, большая сортировка, с советом, что поправить. Каждый разбор сохраняется, «Сравнить до и после»
показывает, сколько времени и запросов ушло после правки — в целом и по каждому месту в коде. Если мост открыт
в той же базе, в плане вместо
_Reference402 видно имя объекта — «Справочник.Новости».
- Понятный diff метаданных. Вместо сотен строк XML — «Справочник.Товары: добавлен реквизит «Склад»
(СправочникСсылка.Склады), ⚠ сужен тип «Код»: Строка(50) → Строка(25)». Сравнение с тем, что загружено в базу,
с последним коммитом или с веткой — для ревью и описания pull request.
- Всё из базы в проект одной командой. Основная конфигурация и все расширения выгружаются по папкам
и сами прописываются в forge.json. Готовые исходники и непустые папки не перезаписываются.
- Запуск 1С:Предприятия, толстого клиента и Конфигуратора прямо из боковой панели.
- Превью и правка формы (Pro). Превью управляемой формы по Form.xml рядом с редактором; эксперимент — правка
прямо в превью: порядок элементов (▲/▼ и перетаскивание, в том числе в другую группу), подпись, видимость.
Form.xml меняется точечно, Ctrl+Z отменяет; что 1С не загрузит (страница вне «Страниц», колонка вне таблицы), плагин
не даст сделать.
- Снимок формы. Тонкий клиент открывает список объекта или форму обработки, снимок окна открывается в редакторе.
ИИ-агент делает то же сам (
forge_form_screenshot) и после правки видит, как выглядит форма. Снимается только окно
1С — даже если оно под другими окнами, ваш экран на снимок не попадает.
- Конфигуратор или ibcmd. Через ibcmd можно работать без лицензии клиента — с файловыми и серверными базами
(для серверной ibcmd подключается к СУБД напрямую, см. «Серверные и большие базы»).
Когда в базе работают люди
- Правки кода и форм применяются динамически — пользователей не выбивает.
- Если изменения затрагивают структуру данных, плагин покажет, кто сейчас в базе и с какого компьютера,
и предложит отключить выбранных. Отключает только после вашего подтверждения, потом сам повторяет операцию.
Отладка
- F5 — и 1С запущена с отладкой. Точки останова прямо в
.bsl, стек клиента и сервера, переменные,
вычисление выражений, шаги. Ни Конфигуратор, ни EDT для этого не нужны.
- Точки с условием и со счётчиком, точки-логи без правки кода, остановка на ошибках выполнения.
ИИ-агенты
- Подключение к Claude Code, Cursor, Codex, Kimi Code и GigaCode одной командой. Copilot в VS Code видит плагин сам.
- В базу агент записывает только после вашего «Разрешить» в окне VS Code.
- Мост к живой базе: агент выполняет запросы, читает метаданные, журнал регистрации и права базы клиента — и по RDP
без сети и интернета. Выполнить код в базе (Pro) он может только после вашего «Выполнить» в окне 1С.
- Данные не покидают контур (152-ФЗ). Включите режим — агент будет работать с кодом и метаданными, а значения
данных в ответах будут скрыты (подробнее — «Как плагин бережёт базы»).
- Каталог MCP-серверов: 1C MCP Toolkit и любой свой сервер.
- Готовые скиллы 1С для агента: применение и проверка, расширения, стандарты кода, запросы, правка XML и
63 инструмента для метаданных, форм, СКД, макетов, ролей и расширений.
- Документы проекта для агента: окружение и журнал доработок в
docs/1c/ — агент читает их перед задачей и дописывает после.
Консоль запросов
- Запросы 1С прямо в VS Code: подсветка, Ctrl+Enter, параметры, таблица результата, копирование в Excel.
- Выделите запрос в модуле BSL — плагин сам уберёт кавычки и «|».
- Работает через обработку BSL Forge (мост к базе) или 1C MCP Toolkit,
открытые в базе. Данные только читаются.
Мост к базе
- Своя обработка
ForgeBridge.epf — откройте её в базе, и консоль запросов и ИИ-агент работают с живыми данными.
- Сеть между 1С и VS Code не нужна. Обмен идёт через папку на вашем компьютере. Если вы работаете у клиента
по VPN и RDP, а на сервере нет интернета, 1С видит эту папку как подключённый диск RDP (
\\tsclient\C\…).
- Подключение — просто открыть обработку в 1С. VS Code готовит папку сам, обработка находит её сама — пути вводить
не нужно. Разово: включить в RDP подключение дисков (mRemoteNG: Redirect → Disk Drives; mstsc: Локальные ресурсы →
Диски) и положить обработку на сервер — панель «Действия» → «Мост к базе» → «Скопировать файл обработки» → Ctrl+V
в окне RDP.
- В панели «Действия» (группа «Живая база») и в статус-баре видно, какая база на связи и какая версия обработки
открыта; устаревшую VS Code предложит заменить одной кнопкой.
- Около 1 с на запрос через RDP, доли секунды локально. Работает в типовых конфигурациях с запретом синхронных
вызовов, с правами пользователя 1С. Каждая база — свой канал сам собой: две открытые базы не мешают друг другу.
- HTTP или папка — сам. Если 1С достаёт до вашего компьютера по сети (тот же компьютер, VPN с разрешённым портом
6041), обмен идёт по HTTP — быстрее. Нет — через папку, без настройки. Выключить HTTP —
onecForge.bridge.http.
- Для агента, бесплатно: запросы и метаданные (
forge_1c_query, forge_1c_metadata, forge_1c_status), журнал
регистрации базы клиента (forge_1c_event_log), где используется объект (forge_1c_references), права на объект —
у каких ролей и есть ли у пользователя (forge_1c_rights), профиль пакета запросов — какая часть медленная
(forge_1c_profile_query). Всё это только читает.
- Выполнить код в базе (Pro): агент (
forge_1c_execute) или вы (выделите код → «Выполнить код в базе через мост»)
отправляете код, а в форме обработки появляется блок «Агент просит выполнить код» с кнопками «Выполнить» и
«Отклонить». Без вашего нажатия код не выполнится, и командой это подтверждение не подделать. Режим проверки —
транзакция отменяется, данные не меняются.
- Хранение базы (Pro): что занимает место (размер базы, доли по видам, самые тяжёлые объекты), таблицы СУБД
объекта с индексами и числом строк, чья таблица
_Document123 из плана запроса. Файловая база, MS SQL и PostgreSQL —
одинаково, без доступа к СУБД; размеры — с платформы 8.3.15. Для агента — forge_1c_storage.
Как плагин бережёт базы
Главное правило: никаких тихих разрушительных действий.
- Боевая база. У каждой базы есть роль: разработка, тестовая или боевая. Чтобы записать в боевую,
нужно ввести её название. ИИ-агенту запись в боевую базу запрещена.
- Удаление данных. Пакетный Конфигуратор молча удаляет данные, если из конфигурации убрали реквизит
или объект (проверено на 8.5.1). Поэтому перед загрузкой плагин сравнивает файлы с тем, что лежит в базе.
Если пропадут объекты, реквизиты, табличные части, измерения, ресурсы, значения перечислений или сузится тип,
плагин остановится и покажет список. Базу, которую он видит впервые, он сначала выгружает и сверяет.
- Повреждённая выгрузка — пустой Configuration.xml или объекты без файлов — не загружается никогда.
- Резервная копия. Перед записью создаётся .dt: у боевой базы каждый раз, у остальных раз в сутки,
перед полной загрузкой основной конфигурации — всегда. Нет копии — нет записи.
- Объекты на поддержке — «не снимать с поддержки». Если вы изменили модуль типового объекта «на замке», плагин
предложит «Перенести в расширение»: изменённые методы станут перехватчиками
&ИзменениеИКонтроль с маркерами
#Вставка/#Удаление, новые методы — методами модуля расширения, объект заимствуется, а модуль типовой вернётся
к тексту поставщика. Файлы, которые так не перенести (изменения вне методов, удалённый метод, новая сигнатура,
правки XML и форм), остаются как есть — правка не пропадёт; правленые версии сохраняются в .forge/tmp.
ИИ-агент делает то же сам (forge_move_to_extension).
- Очередь. Две операции с одной базой не пойдут одновременно — ни у вас, ни у агента.
- Пароли хранятся в защищённом хранилище VS Code и не попадают ни в git, ни в логи.
- Данные не покидают контур. Команда «Данные не покидают контур (вкл/выкл)» (или
"privacy": "codeOnly" в
forge.json — для всей команды): в ответах инструментов ИИ-агенту вместо значений — «<строка>», «<число>», у ссылок
остаются тип и идентификатор, пользователи заменены на «Пользователь 1, 2…», из текстов ошибок вырезаны фрагменты
в кавычках, почта, телефоны и длинные числа, снимок формы запрещён. Код, метаданные, права и планы запросов
агент видит как обычно. Вы сами в VS Code видите всё.
Требования
- Windows 10 или 11.
- Платформа 1С:Предприятие 8.3 или 8.5 — плагин найдёт её сам.
- git — по нему плагин понимает, что изменилось.
- VS Code 1.140 или новее. Node.js и npm не нужны: MCP-сервер для ИИ-агента встроен в плагин и запускается самим VS Code.
- Желательно расширение Language 1C (BSL) —
подсветка, структура модуля и проверка кода BSL Language Server.
Чего не хватает, плагин проверит сам при запуске: сверху панели «Действия» появится «Начало работы» с кнопкой
«Настроить в один клик». git ставится через winget, Language 1C (BSL) — из магазина расширений, репозиторий,
проект и подключение агента — по шагам. Платформу 1С поставить за вас нельзя (она лицензионная) — её путь можно указать.
Быстрый старт
- Откройте в VS Code папку проекта. Папка должна быть под git.
- Выполните «BSL Forge: Создать проект». Плагин найдёт выгрузки и предложит выбрать базу из списка баз 1С.
Если выгрузок в папке ещё нет, он сам выгрузит из базы основную конфигурацию и все расширения
(в
src/cf и src/cfe/<имя>) и пропишет их в forge.json.
- Сделайте коммит, откройте любой модуль и нажмите Ctrl+Alt+U. В первый раз плагин предложит полную загрузку.
- Для отладки поставьте точку останова (F9) и нажмите F5.
- Для ИИ-агента выполните «BSL Forge: Подключить ИИ-агента (MCP)» и «Установить скиллы 1С для ИИ-агента».
ИИ-агенты
Агент получает те же действия, что и кнопки плагина: применить, проверить модули, выгрузить, сделать резервную
копию, посмотреть сеансы базы, запустить клиент. Работает с текущей базой проекта и на той же платформе,
что выбрана в VS Code.
Всё, что может навредить, агент делает только с вашего явного согласия: удаление данных, правку объектов
на поддержке, перезапись незакоммиченных файлов, отключение пользователей. В боевую базу агент не пишет.
Перед любой записью в базу плагин спрашивает вас сам, а не агента: в VS Code, где открыт проект, появляется
окно «ИИ-агент хочет записать изменения в базу 1С» — что именно, в какую базу, будет ли резервная копия.
Нажать «Разрешить» может только человек. Если VS Code с проектом не открыт, вопрос покажет окно подтверждения
самого агента (Claude Code, Copilot, Cursor). Спросить некого — агенту отказано.
Подключение. Команда «Подключить ИИ-агента (MCP)» записывает настройки для выбранных агентов: Claude Code
(.mcp.json), Cursor (.cursor/mcp.json), Codex (.codex/config.toml), Kimi Code (.kimi-code/mcp.json),
GigaCode на GigaChat (.gigacode_vsc/gigacode.jsonc). Copilot в VS Code видит BSL Forge сам — и с любой моделью
в его чате, включая Ollama. В настройках пути
вашего компьютера, поэтому в общий git они не попадают. Для любого другого агента команда скопирует настройки
в буфер обмена. Пароль 1С для агента задаётся переменной окружения FORGE_PASSWORD.
Мост к базе входит в сервер BSL Forge: отдельно подключать ничего не нужно — откройте обработку в базе, и у агента
появятся данные живой базы.
Каталог MCP-серверов («BSL Forge: Каталог MCP-серверов для ИИ-агента») подключает к агентам и другие серверы:
1C MCP Toolkit — агент сможет выполнять запросы, смотреть метаданные и журнал регистрации живой базы — или любой свой
сервер по адресу. Токен toolkit хранится в защищённом хранилище VS Code, в файлы проекта он не пишется.
Скиллы — готовые инструкции для агента, которые ставятся в проект:
- 1c-forge-apply — цикл «правка → загрузка → проверка → исправление» и когда агент обязан остановиться и спросить;
- 1c-extension-dev — доработка типовой через расширение: заимствование, &Перед, &После, &Вместо, &ИзменениеИКонтроль;
- 1c-bsl-style — стандарты кода: клиент и сервер, области, транзакции, БСП;
- 1c-standards — стандарты разработки фирмы «1С» (ИТС v8std): 109 стандартов короткими правилами с номерами.
Агент открывает только нужную тему; без скиллов — инструмент
forge_standards;
- 1c-query — быстрые запросы: виртуальные и временные таблицы, без запросов в цикле;
- 1c-metadata-xml — правка XML-выгрузки без потери данных;
- 1c-project-docs — как вести документы проекта (ниже).
Вместе с ними ставятся 63 скилла-инструмента со скриптами: чтение, создание, правка и проверка объектов
метаданных, форм, СКД, макетов, ролей, подсистем, расширений, XDTO и внешних обработок, и 1c-specs —
спецификации формата XML выгрузки. Скрипты запускаются через PowerShell (Windows) или Python. В базу они
не пишут: загрузка, выгрузка и резервные копии — только инструментами forge_*.
Документы проекта. Как только в проекте появилась выгрузка, плагин создаёт docs/1c/environment.md —
паспорт проекта (конфигурация и поддержка, базы, расширения, соглашения разработки) и docs/1c/customizations.md —
реестр доработок, известные проблемы и журнал задач. Разделы с пометкой forge:auto плагин обновляет сам по
forge.json и выгрузке, остальное заполняете вы и агент: он читает документы перед задачей и дописывает журнал
после. Документы коммитятся — у всей команды и у всех агентов один контекст. Команда — «Документы проекта для
ИИ-агента», отключить — настройка onecForge.projectDocs.
Скиллы можно закоммитить — тогда они будут у всей команды. Вашу правку скилла обновление плагина не затрёт.
Серверные и большие базы
- Серверные базы (
Srvr="srv1c";Ref="ut";) работают везде: «Применить», выгрузка, проверки, запуск клиентов,
сеансы, отладка.
- ibcmd для серверной базы:
"engine": "ibcmd" и параметры СУБД — ibcmd работает с базой данных напрямую,
кластер 1С не нужен. Пароль СУБД VS Code спросит один раз и сохранит в защищённом хранилище (для агента —
переменная FORGE_DB_PASSWORD); без пользователя — вход по учётной записи Windows:
"dbms": { "type": "MSSQLServer", "server": "localhost", "name": "ut_dev", "user": "sa" }.
Синтаксический контроль по-прежнему выполняет Конфигуратор.
- Сеансы серверной базы — через RAS. Если сервер 1С на этом же компьютере, а RAS не запущен, плагин поднимет
его сам на время запроса и остановит.
- Отладка серверной базы — сервер 1С должен быть запущен с
-debug -http (параметры службы «Агент сервера»).
- Резервные копии. У серверных dev- и test-баз .dt по умолчанию не делается: выгрузка большой серверной базы
идёт часами, такие базы копируют средствами СУБД. Боевая — как и раньше, перед каждой записью. Изменить —
"backup" у базы в forge.json. Для файловой базы больше 5 ГБ плагин сначала спросит, делать ли копию сейчас
(боевую без копии не пишет). На копии одной базы — не больше 20 ГБ, старые удаляются.
- База для ветки от большой или серверной базы — лучше «пустая из исходников»: плагин сам предложит её первой.
Ветка git = своя база
Переключились на новую ветку — плагин спросит, сделать ли для неё свою базу. Варианты:
- копия текущей базы — плагин сделает свежую резервную копию и развернёт её; «Применить» потом загрузит
только изменения ветки;
- из последней резервной копии — быстрее, но копия может быть устаревшей;
- из файла .dt;
- пустая база из исходников проекта — конфигурация из файлов, без данных.
Базы веток лежат в <папка пользователя>\BSL Forge\bases\<проект>-<ветка> (другая папка — настройка
onecForge.branchBasesFolder) и записываются в .forge/local.json: у каждого разработчика они свои и в git
не попадают. При переключении ветки плагин сам выбирает её базу, а при возврате на main — основную.
Общую базу можно привязать к ветке полем "branch" в forge.json, в том числе шаблоном: "release/*".
Ветка влита — «Удалить базу ветки» в боковой панели (папка базы удаляется только после подтверждения).
Нужен ibcmd (платформа 8.3.20 или новее). Выключить — настройка onecForge.branchBases.
Отладка
Поставьте точку останова в модуле (F9) и нажмите F5 — плагин запустит 1С:Предприятие текущей базы с отладкой.
Дальше всё как обычно в VS Code: стек вызовов клиента и сервера, локальные переменные (структуры, массивы и таблицы
раскрываются), вычисление выражения при наведении мыши и в «Контрольных значениях», F10 / F11 / Shift+F11.
- Точка с условием и со счётчиком: правый щелчок по точке → «Изменить точку останова».
- Точка-лог: «Добавить точку журнала…», например
Сумма = {Сумма} — значение попадёт в консоль отладки, код
не остановится и не изменится.
- Ошибки выполнения: в панели «Точки останова» отметьте «Ошибки выполнения»; можно указать текст ошибки.
- Файловая база — плагин сам запускает сервер отладки. Серверная — сервер отладки кластера (ragent запущен
с
-debug -http), по умолчанию порт 1550 на сервере базы; другой адрес — "debugServer" в launch.json.
- Свои настройки — в
.vscode/launch.json (тип onec): база, тонкий или толстый клиент, что подключать к отладке
(фоновые задания, HTTP-сервисы).
- Боевую базу отлаживать нельзя: остановка на точке останова остановила бы пользователей.
Настройки проекта
Настройки лежат в файле .forge/forge.json, его можно хранить в git. Паролей в нём нет. Подсказки по полям
появляются прямо в редакторе.
{
"version": 1,
"platform": "8.5.1",
"sources": [
{ "id": "main", "type": "config", "path": "src/cf" },
{ "id": "MyExt", "type": "extension", "path": "src/cfe/MyExt", "extension": "MyExt" }
],
"bases": [
{ "id": "dev", "name": "УТ разработка", "connection": "File=\"D:\\Bases\\UT_dev\";", "role": "dev" },
{ "id": "prod", "name": "УТ рабочая", "connection": "Srvr=\"srv1c\";Ref=\"ut\";", "role": "prod",
"user": "Администратор", "ras": "srv1c:1545", "clusterUser": "admin" }
],
"defaultBase": "dev"
}
Поля базы:
- role — dev (разработка), test (тестовая) или prod (боевая).
- backup — когда делать резервную копию перед записью: always, daily или never.
- engine — designer (по умолчанию), ibcmd или auto. Серверной базе для ibcmd нужно поле dbms.
- dbms — для ibcmd с серверной базой:
type (MSSQLServer, PostgreSQL, IBMDB2, OracleDatabase), server, name
(база данных в СУБД), user. Пароль — не здесь.
- dynamicUpdate — auto (по умолчанию: сначала монопольно, при пользователях — динамически), never или always.
- user — пользователь 1С. Пароль спросит VS Code и сохранит в защищённом хранилище.
- ras, clusterUser — для сеансов серверной базы: сервер администрирования и администратор кластера.
- branch — ветка git этой базы (можно шаблон
release/*): при переключении на неё плагин выберет эту базу.
Поле проекта privacy — codeOnly включает режим «данные не покидают контур» для всех, кто работает с проектом.
Сценарные тесты — раздел tests (всё необязательно):
"tests": {
"vanessa": "tools/vanessa-automation-single.epf",
"features": ["tests/features"],
"libraries": ["tests/steps"],
"params": "tests/VAParams.json",
"base": "dev",
"client": "thin",
"timeoutMinutes": 30
}
- vanessa — обработка Vanessa Automation. Не задана — плагин ищет её в tools/, vendor/ и среди скачанных
командой «Скачать Vanessa Automation» (~/.onec-forge/vanessa).
- features — папки с .feature, по умолчанию tests/features, features или tests.
- params — свой VAParams.json: плагин берёт его за основу и заменяет только отбор сценариев и пути отчётов.
- base — база для тестов, по умолчанию текущая. Боевую (prod) указать нельзя.
Команды
| Команда |
Клавиши |
| Применить в базу |
Ctrl+Alt+U |
| Синтаксический контроль |
Ctrl+Alt+K |
| Выгрузить из базы — изменённое или всё |
|
| Выгрузить всё из базы в проект — конфигурация и расширения, сами пропишутся в forge.json |
|
| Где используется объект (и кто пишет в регистр) — из контекстного меню модуля или XML |
|
| Разобрать ошибку пользователя — выделенный текст, буфер обмена или отчёт об ошибке (.zip, .json) |
|
| Включить / выключить / разобрать технологический журнал (индикатор «Техжурнал» в строке состояния) |
|
| Найти запросы в цикле — текущий модуль, изменённые модули или весь проект |
|
| Что изменилось в метаданных — с базой, коммитом или веткой |
|
| Создать базу для текущей ветки, привязать базу к ветке, удалить базу ветки |
|
| Выбрать базу, добавить базу, выбрать платформу |
|
| Резервная копия базы, список копий |
|
| Сеансы базы |
|
| Открыть 1С:Предприятие, толстый клиент, Конфигуратор |
|
| Снимок формы — список объекта, форма обработки или навигационная ссылка |
|
| Выполнить код в базе через мост — выделенный код, с подтверждением в 1С (Pro) |
|
| Данные не покидают контур (вкл/выкл) |
|
| Проверить обновление плагина |
|
| Отладка: запустить 1С:Предприятие с точками останова |
F5 |
| Подключить ИИ-агента, установить скиллы 1С, каталог MCP-серверов |
|
| Консоль запросов, выполнить запрос |
Ctrl+Enter |
| Новый сценарный тест, скачать Vanessa Automation; запуск — в панели «Тестирование»; отчёт о тестах |
|
| Собрать .epf/.erf, разобрать .epf/.erf в исходники — и из контекстного меню файла |
|
| Задачи в коде (TODO, FIXME) |
|
| EDT → Конфигуратор, Конфигуратор → EDT |
|
Основные команды — кнопками на панели «Действия» (кнопка с огоньком в заголовке редактора). Все команды начинаются
с «BSL Forge:» в палитре команд (Ctrl+Shift+P).
Ограничения
- ibcmd работает, только когда в базе никого нет; серверной базе нужны параметры СУБД (
dbms).
- Снимок формы — только в Windows, на рабочем столе пользователя: окно 1С на время всплывает.
- Для файловой базы видны сеансы только этого компьютера. Тех, кто зашёл с других, плагин покажет из сообщения 1С.
- Хранилище конфигурации — в следующих версиях.
- Проекты EDT: расширения переводятся только из EDT в Конфигуратор; обратно — пока только основная конфигурация.
- Allure-отчёт в браузере требует утилиту allure (и Java); без неё — отчёт в VS Code.
- Тесты Vanessa: если у пользователя базы есть пароль, он попадает во временный файл настроек прогона
(.forge/tmp, не в git) и удаляется сразу после прогона. Для тестов удобнее пользователь без пароля в тестовой базе.
- Тесты Vanessa: если у пользователя базы включена «Защита от опасных действий», 1С перед открытием Vanessa
спрашивает «Да/Нет», и прогон ждёт. Снимите защиту у тестового пользователя или разрешите базу строкой
DisableUnsafeActionProtection в conf.cfg платформы — плагин подскажет это, если прогон не начнётся.
- Отладка: нет остановки «по требованию» (Pause) — 1С так не умеет, ставьте точку останова; веб-клиент и сервер
отладки с паролем пока не поддерживаются.
Лицензия
BSL Forge — проприетарная программа. Базовые функции бесплатны, Pro-функции доступны по подписке.
Условия — в файле LICENSE.md, обработка данных — в PRIVACY.md, сторонние компоненты — в THIRD-PARTY-NOTICES.md.
Программа предоставляется «как есть». За базы, резервные копии и действия подключённых ИИ-агентов
отвечает пользователь. Проверяйте изменения на копии базы.
«1С» и «1С:Предприятие» — товарные знаки ООО «1С». BSL Forge — независимая разработка, не является продуктом
фирмы «1С» и не одобрена ею.
Официальный сайт: https://unikr-pro.ru
Вопросы и предложения: unikr_1c@mail.ru
| |