
Расширение для Visual Studio Code с инструментами разработки для экосистемы 1С. Предоставляет удобный интерфейс для работы с проектами 1С через панель команд и дерево задач.
Возможности
Откройте панель «1C Platform Tools» в боковой панели VS Code. Все команды организованы по категориям.

В дереве доступны следующие разделы:
- Избранное — быстрый доступ к выбранным командам (отображается вверху при наличии избранных)
- Информационные базы — операции с ИБ
- Конфигурация — загрузка, выгрузка, сборка и разбор конфигурации
- Расширения — работа с расширениями конфигурации
- Внешние файлы — сборка и разбор обработок и отчётов
- Зависимости — управление зависимостями (OPM, packagedef)
- Запуск — запуск Предприятия и Конфигуратора
- Тестирование — XUnit, синтаксический контроль, Vanessa, Allure
- Установить версию — установка версии конфигурации, расширений, отчётов и обработок
- Задачи (oscript) — запуск задач из каталога
tasks (vrunner/OneScript)
- Задачи (workspace) — задачи из
tasks.json и конфигурации из launch.json
Избранное
Можно добавить любые команды в избранное для быстрого доступа:
- Вызовите команду «Настроить избранное» из палитры команд (
Ctrl+Shift+P → «1C: Дерево: Настроить избранное») или через контекстное меню заголовка панели.
- В открывшемся списке отметьте нужные команды (в том числе с параметрами: конкретное расширение, отчёт, обработка или задача oscript).
- Избранные команды появятся в секции «Избранное» вверху дерева и сохраняются между сессиями.
Команды также доступны через палитру команд (Ctrl+Shift+P → введите «1C»).
Требования
- Visual Studio Code версии 1.106.1 или выше
- Node.js версии 18.x или выше
- OneScript (oscript) - для выполнения скриптов
- vanessa-runner (vrunner) - для выполнения команд 1С
- OPM (OneScript Package Manager) - для управления зависимостями
Установка
- Откройте VS Code
- Перейдите в раздел Extensions (Ctrl+Shift+X)
- Найдите "1C Platform Tools"
- Нажмите "Install"
Настройка
Расширение автоматически активируется при открытии проекта 1С (наличие файла packagedef в корне проекта).
Инициализация проекта
Если в открытой папке ещё нет файла packagedef, панель «1C Platform Tools» не отображается, но команды доступны из палитры команд (Ctrl+Shift+P). Выполните «1C: Зависимости: Инициализировать packagedef» — будет создан файл packagedef из шаблона. После успешного создания расширение активируется полностью: панель и дерево команд появятся без перезагрузки окна. Если вызвать любую другую команду расширения без открытого проекта 1С, будет показано информационное сообщение с подсказкой использовать эту команду.
Логирование
Расширение пишет логи в панель Output (Вид → Вывод), канал «1C Platform Tools». Уровень детализации задаётся в настройках:
- Настройка:
1c-platform-tools.logLevel
- Значения:
error (только ошибки), warnings (ошибки и предупреждения), info (по умолчанию), debug (полный вывод для диагностики)
При сбое команды откройте Output → «1C Platform Tools», при необходимости установите уровень debug, воспроизведите проблему и приложите логи к отчёту об ошибке.
Настройки доступны через File > Preferences > Settings (или Ctrl+,) и поиск "1C Platform Tools". Параметры подключения к информационной базе настраиваются в файле env.json в корне проекта:
{
"default": {
"--ibconnection": "/F./build/ib"
}
}
Структура проекта
Расширение опирается на структуру каталогов проекта vanessa-bootstrap — шаблона правильной разработки на платформе 1С:Предприятие 8.
Рекомендуемая структура проекта:
project/
├── build/
│ ├── ib/ # Информационная база
│ └── out/ # Собранные файлы
├── src/
│ ├── cf/ # Исходники конфигурации
│ ├── cfe/ # Исходники расширений
│ ├── epf/ # Исходники внешних обработок
│ └── erf/ # Исходники внешних отчетов
├── oscript_modules/ # Зависимости (устанавливаются через OPM)
├── env.json # Настройки подключения к ИБ
└── packagedef # Файл для активации расширения
Работа с Docker
Расширение поддерживает выполнение команд vrunner через Docker-контейнеры. Это полезно для работы в окружениях без локальной установки платформы 1С (например, GitHub Codespaces).
Подготовка Docker-образа:
Docker-образы для работы с платформой 1С и vanessa-runner можно собрать из репозитория pravets/onec-images:
- Форкните репозиторий pravets/onec-images
- Следуйте инструкциям в репозитории для сборки образа
vrunner
- Опубликуйте собранный образ в ваш Docker registry (Docker Hub, GitHub Container Registry и т.д.)
Настройка Docker в расширении:
- Включите Docker-режим:
1c-platform-tools.docker.enabled = true
- Укажите Docker-образ:
1c-platform-tools.docker.image = "your-registry/vrunner:8.3.27.1786"
Важно:
Docker-образ должен содержать установленную платформу 1С:Предприятие и vanessa-runner
При использовании Docker параметр --ibcmd используется автоматически (так как в Docker нет GUI)
Пути автоматически нормализуются для Docker-окружения (/F./build/ib → /F./workspace/build/ib)
Ограничение: В Docker можно выполнять только команды, которые поддерживают --ibcmd:
- ✅ Операции с информационными базами (init-dev, update-dev, dump, restore, dump-dt, load-dt)
- ✅ Операции с конфигурацией (load, dump, dumpcf, compile, decompile)
- ✅ Операции с расширениями (compileext, decompileext, unloadext, compileexttocfe)
- ✅ Операции с внешними файлами (compileepf, decompileepf)
- ❌ Запуск приложений (run, designer) - требуют GUI
- ❌ Тестирование (xunit, syntax-check, vanessa) - могут требовать GUI
При попытке выполнить команду, которая не поддерживает --ibcmd, расширение покажет предупреждение.
Важные нюансы
- Все команды выполняются в терминале VS Code для видимости вывода
- Расширение автоматически ищет
vrunner.bat в oscript_modules/bin/ проекта
- Параметр
--ibconnection берется из env.json (секция default['--ibconnection'], по умолчанию /F./build/ib)
- Все пути к файлам внутри workspace должны быть относительными
- Для использования
ibcmd требуется установка платформы 1С:Предприятие с компонентом "Сервер 1С: Предприятия 8" (настройка 1c-platform-tools.useIbcmd)
- При использовании Docker (
docker.enabled = true) параметр --ibcmd используется автоматически
- Инициализация: без файла
packagedef панель скрыта; команда «1C: Зависимости: Инициализировать packagedef» из палитры создаёт проект и сразу включает панель без перезагрузки
- Логи: диагностика и ошибки пишутся в Output → «1C Platform Tools»; уровень задаётся настройкой
1c-platform-tools.logLevel (info по умолчанию, debug для детального разбора)
Для разработчиков
Если вы хотите внести вклад в проект или разработать собственные команды, ознакомьтесь с документацией для разработчиков.
Лицензия
MIT License. Подробности см. в файле LICENSE.
Автор
Ivan Karlo (i.karlo@outlook.com)
При желании, отблагодарить автора можно по ссылке: