1C Platform Tools: расширение для Visual Studio Code для автоматизации разработки

13.01.26

Разработка - DevOps и автоматизация разработки

Расширение для VS Code, которое автоматизирует рутинные операции при разработке на платформе 1С:Предприятие 8. Позволяет выполнять все операции с конфигурацией, расширениями, информационными базами и тестами прямо из редактора, без необходимости запоминать команды и копировать их из блокнота.

Предистория: В компании, где я работаю, мы используем Jenkins lib для автоматизации CI/CD процессов. Как это часто бывает, программисты не всегда понимают, почему падают дымовые тесты. Это связано со спецификой платформы 1С:Предприятие 8, где отладка тестов требует визуального контроля выполнения (кстати, используем набор инструментов vanessa-add).

Когда возникает такая ситуация, я открываю проект в VS Code, переключаюсь на нужную ветвь и вручную повторяю все операции из pipeline. Это позволяет наглядно увидеть, что именно происходит: например, дымовые тесты падают в определенный момент, потому что открывается конкретная обработка и вызывает аварийное завершение клиента тестирования. После этого становится понятно, куда двигаться дальше.

Таких ситуаций множество, и каждый раз приходится выполнять одни и те же рутинные действия. Теоретически можно было бы записать последовательность команд в блокнот и копировать их, меняя только название проекта. Но тот, кто пробовал так делать, знает: это крайне раздражает и полностью убивает рабочий настрой.

Именно поэтому решил создать собственное расширение для VS Code, которое автоматизирует эти действия. В первую очередь это упростило мою жизнь, а во вторую — позволило научить программистов самостоятельно разбираться со своими доработками, быть ближе к пути DevOops, не привлекая коллег к каждой возникшей проблеме на pipeline.

 

Что уже сделано

 

 

Расширение: 1C Platform Tools предоставляет интерфейс для работы через панель команд в боковой панели VS Code. Команды организованы по категориям:

Информационные базы: создание пустой ИБ, инициализация данных, постобработка обновления, выгрузка и загрузка dt-файлов, блокировка внешних ресурсов.

Конфигурация: загрузка из исходного кода или из файла 1Cv8.cf, выгрузка в исходный код или в файл, сборка конфигурации из исходного кода, разбор файла конфигурации в исходный код, выгрузка файла поставки.

Расширения: загрузка расширений из исходного кода или из cfe-файлов, выгрузка в исходный код или в cfe-файлы, сборка расширений из исходного кода, разбор cfe-файлов в исходный код.

Внешние файлы: сборка и разбор внешних обработок и отчетов, очистка кэша.

Зависимости: инициализация "packagedef", установка и удаление зависимостей через OPM.

Запуск: запуск Предприятия и Конфигуратора с нужными конфигурациями запуска.

Тестирование: запуск XUnit тестов, синтаксический контроль, запуск Vanessa тестов, генерация Allure отчетов.

Задачи (workspace): просмотр, запуск и редактирование задач VS Code, управление конфигурациями запуска.

Все команды доступны как через дерево задач в боковой панели, так и через палитру команд (Ctrl+Shift+P). Расширение автоматически определяет проект 1С по наличию файла "packagedef" в корне и активируется только для таких проектов.

 

Структура каталогов: По умолчанию расширение использует структуру проекта из шаблона vanessa-bootstrap, но все пути можно настроить в параметрах расширения. Можно указать свои пути к исходному коду конфигурации, расширений, внешних обработок и отчетов, а также к результатам сборки:

  1. Откройте настройки: File → Preferences → Settings (или Ctrl+,)
  2. В поле поиска вверху введите: @ext:yellow-hammer.1c-platform-tools
  3. Отобразятся только настройки расширения

 

Docker: Расширение поддерживает работу с Docker, что позволяет использовать его в окружениях без локальной установки платформы 1С, например, в GitHub Codespaces. При использовании Docker команды автоматически выполняются через контейнер с нормализацией путей.

 

 

ibcmd: Для ускорения операций поддерживается использование ibcmd - утилиты командной строки платформы 1С, которая позволяет выполнять операции с конфигурацией без запуска графического интерфейса Конфигуратора. При работе в Docker - ibcmd используется автоматически.

Все команды выполняются в терминале VS Code, что позволяет видеть полный вывод и логи выполнения. Параметры подключения к информационной базе настраиваются в файле "env.json" в корне проекта.

 

Где найти

Расширение доступно в Marketplace VS Code под названием 1C Platform Tools, а также в Open VSX Registry для использования в Cursor, Kiro и других редакторах на базе VS Code. Исходный код и документация находятся в репозитории на GitHub (Можно перейти по ссылке из описания расширения в marketplace).

 

Что планирую

Проект находится в активной разработке. Я открыт для предложений и улучшений через issues на GitHub. Среди направлений, которые я рассматриваю:

  • Перспектива команд в разрезе файлов проекта
  • Перспектива команд в контексте открытого файла
  • Запуск автономного сервера 1С (ibsrv)
  • Дополнительные команды для работы с проектами

Также планирую развивать поддержку различных сценариев разработки и упрощать настройку для новых пользователей.

 

Feedback

Буду искренне признателен, если поддержите проект:

  • Поставьте звёздочку проекту на GitHub (Можно перейти по ссылке из описания расширения в marketplace), если нашли его полезным!
  • Поставьте оценку на Marketplace и Open VSX, поделитесь своим мнением!
  • Напишите комментарий к статье!

Это вдохновляет продолжать создавать полезный контент и улучшать проекты. Спасибо вам большое заранее!

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

VS Code Visual Studio Code разработка автоматизация vanessa-runner vrunner расширение инструменты разработки 1С:Предприятие конфигурация расширения тестирование CI/CD Jenkins

См. также

DevOps и автоматизация разработки Тестирование QA Программист Пользователь 1С:Предприятие 8 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Автотесты 1С - готовые тестовые сценарии, предназначенные для регресс-тестирования функционала конфигурации после обновления типовым релизом. Сценарии проверяют интерактивное заполнение форм документов, справочников и результат проведения документов. Сценарий – feature-файл, разработанный с помощью vanessa-automation. Запуск сценария выполняется интерактивно с помощью vanessa-automation или с помощью vanessa-runner в CI-системах. Доступно тестирование тонкого клиента. Поддерживаемые версии конфигураций 1С:Зарплата и Управление Персоналом 3 и версии КОРП: 3.1.35.48.

3660 руб.

05.08.2024    4991    35    1    

18

DevOps и автоматизация разработки Логистика, склад и ТМЦ Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1C:Бухгалтерия 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Подсистема «Управление сборкой GLI» предназначена для динамического формирования сборочных линий Gitlab и отслеживания процесса доработок систем на базе1С:Предприятия Позволяет упростить выпуск новых релизов системы, подготовить описание доработок системы. Интегрируется с GitLab API по событиям Push, Merge-request, Pipeline. Уведомляет пользователей о результатах сборки/тестирования сборочных конвейеров через СВ, либо при её недоступности или отсутствию по E-Mail. Поможет при отправке исправлений ошибок в общую базу тестирования, сформирует запросы на слияние в ветку версии только по протестированному и подтверждённому функционалу. Подсистема рассчитана исключительно на клиент - серверную архитектуру тестовых ИБ. Поддерживаемая версии СППР 2.0.4.15, платформа не ниже 8.3.17.1549, 2.0.7.3 / не ниже 8.3.21.1664, начиная с релиза 1.0.4.30 требуется платформа не ниже 8.3.23 рекомендуемый релиз 8.3.23.1997

10000 руб.

26.08.2022    15485    11    13    

37

Тестирование QA DevOps и автоматизация разработки Программист 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Россия Бухгалтерский учет Налоговый учет Платные (руб)

Готовые тестовые сценарии, предназначенные для регресс-тестирования функционала конфигурации после обновления типовым релизом. Сценарии проверяют интерактивное заполнение форм документов, справочников и результат проведения документов. Сценарии возможно использовать как для vanessa-automation, так и для СППР. Поддерживаемые версии конфигураций ERP2 и КА2: 2.5.22.145.

3050 руб.

04.07.2022    12284    45    1    

37

DevOps и автоматизация разработки Системный администратор Программист Бесплатно (free)

Rundeck – это бесплатный и мощный оркестратор, «пульт управления», который помогает автоматизировать рутинные операции и внедрить DevOps/GitOps-подход в экосистеме 1С. Объясняем, как с его помощью упростить администрирование, отказаться от cron-скриптов и ручных SSH-подключений, централизовать управление серверами и снизить риски человеческого фактора. Показываем на практике примеры: как создать job, настроить workflow для закрытия месяца, установить платформу 1С через Jumphost и Ansible, а также запускать PowerShell-скрипты и Ansible-модули напрямую из Rundeck. Статья пригодится архитекторам, администраторам и DevOps-инженерам, которые стремятся превратить инфраструктуру 1С в управляемую, безопасную и полностью автоматизированную систему.

17.12.2025    2915    aidar_safin    0    

18

HighLoad оптимизация DevOps и автоматизация разработки Бесплатно (free)

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

08.10.2025    2832    komil4    12    

11

DevOps и автоматизация разработки Бесплатно (free)

Вы собрали свой первый пайплайн на базе Gitlab CI? Поздравляю, вы молодец! Но что делать, когда количество проектов начинает расти? Как быть с проблемами окружения, долгим выполнением сборки и дополнительными трудозатратами по поддержке скриптов? Расскажем о подготовке образов для запуска заданий в контейнерах, оптимальных настройках gitlab-раннеров, приемах повышения скорости выполнения заданий при работе с EDT, использовании CI/CD components для дедупликации кода пайплайна и выпуске артефактов релизов, используя Gitlab Package Registry и Releases.

19.09.2025    3107    DAAbramov    5    

10

DevOps и автоматизация разработки Программист Бесплатно (free)

Облачные технологии и DevOps кардинально меняют подход к разработке на платформе 1С:Предприятие. Делимся реальным опытом построения CI/CD-конвейера в GitLab: от сборки и тестирования с YAxUnit и Vanessa Automation до интеграции с SonarQube и безопасного развертывания в продакшен. Вы узнаете, как с помощью Docker и автоматизации превратить рутину в предсказуемый и надежный процесс, сократив риски и освободив время для решений, которые действительно требуют вашего профессионализма.

18.08.2025    4381    ComboBoy    0    

7

DevOps и автоматизация разработки Программист Бесплатно (free)

Задумывались ли вы, сколько времени разработчики тратят не на код, а на рутинные действия – от настройки окружения до поиска ответственных и документации? Эта статья о том, как найти и устранить «ерунду», которая тормозит процесс и раздражает на каждом этапе разработки. Разбираемся, как с помощью автоматизации, чек-листов и правильных процессов сделать разработку комфортной, эффективной и даже приятной.

18.08.2025    5425    mrXoxot    1    

20
Отзывы
6. andrew.ab 234 14.01.26 12:28 Сейчас в теме
Пользуюсь твоим проектом в IDE Cursor. Огромное спасибо!

Немного доработал под себя. Добавил функции обновления из файла Commit.txt (туда пишем все файлы что поменяли в проекте), также добавил выгрузку только обновлений из базы (если в конфигураторе что-то поменяли и надо обновить исходники src/cf)
Прикрепленные файлы:
johnnyshut23; +1 Ответить
Остальные комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. пользователь 13.01.26 09:35
Сообщение было скрыто модератором.
...
2. Angoleiro 14.01.26 02:43 Сейчас в теме
"А я не сотрудник технической поддержки, чтобы механически нажимать кнопки до конца своих дней.". Хоть я тоже не сотрудник технической поддержки, но звучит обидно.
3. johnnyshut23 108 14.01.26 07:56 Сейчас в теме
(2) что и кому обидно звучит?
4. alexer 1028 14.01.26 11:05 Сейчас в теме
По заголовку публикации я уж было подумал, что появилась альтернатива EDT )))
Sindbad_M; EvilMilko; +2 Ответить
5. johnnyshut23 108 14.01.26 11:13 Сейчас в теме
(4) в одни руки такое не сделаешь.

Но, если добавить сюда пару других известных расширений (metadataviewer, 1c enterprise от eakpaev, + bsl ls допилить до релиза версии 1, то вполне себе замена edt от community ).
EvilMilko; +1 Ответить
7. andrew.ab 234 14.01.26 12:38 Сейчас в теме
(4) у некоторых есть альтернатива
Прикрепленные файлы:
johnnyshut23; +1 Ответить
11. freegman74 68 14.01.26 14:34 Сейчас в теме
(7) (5) Был бы крайне благодарен за структурированную подборку (или статью) инструментов/плагинов чтоб "подогнать" VSC под EDT/Конфигуратор =)
12. johnnyshut23 108 14.01.26 14:40 Сейчас в теме
(11) постараюсь в ближайшее время собрать и написать, если хватит на статью и инфостарт не уведет горячую тему :) , то опубликую, ежели нет, то просто ответом Вам напишу)
fatman78; Artem-B; bashinsky; freegman74; +4 Ответить
15. andrew.ab 234 14.01.26 16:44 Сейчас в теме
(11) https://openyellow.org/grid?filter=new тут куча инструментов/плагинов.
16. freegman74 68 14.01.26 19:23 Сейчас в теме
(15) Точно! Там же можно просто по "VSC" поискать. Спасибо!
Но от подборки плагинов/скриптов используемых именно вами я бы все равно не отказался =)
По скринам выглядит как почти полноценная замена конфигуратору. Я понимаю что это нет так, но все же. Полагаю к курсору еще и MCP сервера кастомные для нормального ИИ-ассистирования прикручены
johnnyshut23; +1 Ответить
6. andrew.ab 234 14.01.26 12:28 Сейчас в теме
Пользуюсь твоим проектом в IDE Cursor. Огромное спасибо!

Немного доработал под себя. Добавил функции обновления из файла Commit.txt (туда пишем все файлы что поменяли в проекте), также добавил выгрузку только обновлений из базы (если в конфигураторе что-то поменяли и надо обновить исходники src/cf)
Прикрепленные файлы:
johnnyshut23; +1 Ответить
8. johnnyshut23 108 14.01.26 12:46 Сейчас в теме
(6) Спасибо за обратную связь. Прикольная идея! Подумаю, как бы такое тоже реализовать
9. johnnyshut23 108 14.01.26 12:49 Сейчас в теме
23. johnnyshut23 108 01.02.26 23:16 Сейчас в теме
10. andrew.ab 234 14.01.26 12:53 Сейчас в теме
это обертка под IDE. Там уже весь функционал зашит.
Прикрепленные файлы:
v8runner-cli.os
fatman78; johnnyshut23; +2 Ответить
13. JIEX@ 109 14.01.26 15:04 Сейчас в теме
Ничего не понятно, но очень интересно
14. johnnyshut23 108 14.01.26 15:40 Сейчас в теме
(13) извините, но это выражение чаще воспринимается крайне негативно, так как обесценивает труды автора :(
17. Snitkovski 88 20.01.26 20:57 Сейчас в теме
вопрос уровня "чайник" (с носиком) - а для чего так сильно нужен файлик "packagedef" и что он должен содержать, если мы работаем с Конфигурацией 1С, а не с OneScript ?
18. johnnyshut23 108 20.01.26 22:31 Сейчас в теме
(17) в нем описывается набор необходимых приложений (vrunner, add, Vanessa-automation), которые устанавливаются по кнопке «установить зависимости». Так же ориентация на его наличия нужна, чтобы расширение не активизировалось в проектах не относящихся к 1с (например для Java), так как раздражают расширения захламляющие экран там где это не нужно - открываешь проект Java, а часть экрана занимает плашка metadaviewer1c.
19. johnnyshut23 108 20.01.26 22:32 Сейчас в теме
(18)
(17) нажмите инициализировать packagedef и он заполнится самостоятельно шаблоном
20. Snitkovski 88 20.01.26 23:48 Сейчас в теме
(19)

если "нажмите инициализировать packagedef" - имеется в виду "в Командной Панели VSCode", то у меня это не срабатывает с сообщением "Не удалось определить путь к расширению" - см.скрин
Прикрепленные файлы:
21. johnnyshut23 108 21.01.26 00:01 Сейчас в теме
(20) Баг, бывает, исправлю на недели.
Завел issues c bug
Вставьте, пожалуйста текст ниже в packagedef:

////////////////////////////////////////////////////////////­
// Описание пакета для сборки и установки
// Полную документацию см. на hub.oscript.io/packaging
//

Описание.Имя("project-ones")
    .Версия("1.0.0")
    .ВерсияСреды("1.9.4")
    .ЗависитОт("add")
    .ЗависитОт("vanessa-automation-single")
    .ЗависитОт("vanessa-runner", "2.5.0")

;

Показать
22. Snitkovski 88 21.01.26 19:03 Сейчас в теме
(21) "УР-РА-А! ЗАРАБОТАЛО!" (с) известный мультик

спасибо большое! 8-)
johnnyshut23; +1 Ответить
Для отправки сообщения требуется регистрация/авторизация