Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>1C Dev ToolsNew to Visual Studio Code? Get it now.
1C Dev Tools

1C Dev Tools

whiterabbit

|
3 installs
| (0) | Free
Расширение для Cursor с инструментами разработки для экосистемы 1С. Предоставляет удобный интерфейс для работы с проектами 1С, включая разбор обработок, отчетов и конфигураций.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

1C Dev Tools

Расширение для Cursor с инструментами разработки для экосистемы 1С. Предоставляет удобный интерфейс для работы с проектами 1С через панель команд и дерево задач.

Возможности

Все команды организованы по категориям и доступны через:

  • Откройте панель "1C Dev Tools"
  • Все команды доступны через дерево задач в нижней панели

Палитра команд

  • Все команды доступны через поиск в палитре команд

Доступные команды

  • Информационные базы

    • Создать пустую ИБ
    • Постобработка обновления
    • Запретить работу с внешними ресурсами
    • Выгрузить в dt / Загрузить из dt
  • Конфигурация

    • Загрузить из src/cf (загрузка основной конфигурации из исходников)
    • Обновить из src/cf (обновление основной конфигурации из исходников которые указаны в файле build/commit/Commit.txt)
    • Загрузить из 1Cv8.cf
    • Выгрузить в src/cf (выгрузка основной конфигурации в исходники)
    • Выгрузить обновление в src/cf (выгрузка только изменений основной конфигурации в исходники)
    • Выгрузить в 1Cv8.cf
    • Выгрузить файл поставки в 1Cv8dist.cf
    • Собрать 1Cv8.cf из src/cf
    • Разобрать 1Cv8.cf в src/cf
  • Расширения

    • Загрузить из src/cfe (загрузка всех расширений из исходников, расширения делятся на подкаталоги)
    • Загрузить из *.cfe
    • Выгрузить в src/cfe (выгрузка всех расширений в исходники, расширения делятся на подкаталоги)
    • Выгрузить обновление в src/cfe (выгрузка только изменений всех расширений в исходники, расширения делятся на подкаталоги)
    • Обновить из src/cfe (обновление всех расширений из исходников которые указаны в файле build/commit/Commit.txt)
    • Выгрузить в *.cfe
    • Собрать *.cfe из src/cfe
    • Разобрать *.cfe в src/cfe
  • Внешние файлы

    • Собрать внешнюю обработку / внешний отчёт
    • Разобрать внешнюю обработку / внешний отчёт
    • Очистить кэш
  • Зависимости

    • Инициализировать packagedef
    • Установить / Удалить зависимости
  • Запуск

    • Запустить Предприятие
    • Запустить Конфигуратор
  • Задачи и конфигурации

    • Задачи (workspace) — из tasks.json
    • Конфигурации запуска — env.json, launch.json

Требования

  • Cursor IDE
  • Node.js версии 18.x или выше
  • OneScript (oscript) - для выполнения скриптов. Ссылка https://oscript.io/

Установка

  • В переменных windows окружения создать переменную oscript (указать путь C:\Program Files\OneScript\bin\oscript.exe)
  1. Откройте Cursor
  2. Нажмите Ctrl+Shift+P - установка пакета vsix
  3. Выберите файл
  4. Закройте Cursor, откройте повторно

Настройка

Примеры файлов packagedef + env.json + oscript_modules в репозитории https://github.com/asweetand-a11y/DevTool1C.

Расширение автоматически активируется при открытии проекта 1С (наличие файла packagedef в корне проекта).

Настройки доступны через в "1C Dev Tools" - "Конфигурации запуска". Параметры подключения к информационной базе настраиваются в файле env.json в корне проекта:

{
    "$schema": "https://raw.githubusercontent.com/vanessa-opensource/vanessa-runner/develop/vanessa-runner-schema.json",
    "default": {
        "--ibconnection": "/F./build/ib",
        "--infoBase": "Имя информационной базы",
        "--db-user": "Пользователь",
        "--db-pwd": "Пароль",
        "--root": ".",
        "--workspace": ".",
        "--v8version": "8.3.27",
        "--v8-platform-root": "C:/Program Files/1cv8",
        "--debug-server": "<имя сервера отладки или если локально то имя компьютера>",
        "--debug-port-range": "1560:1591",
        "--locale": "ru",
        "--language": "ru",
        "--additional": "/DisplayAllFunctions /Lru /iTaxi /TESTMANAGER",
        "--ordinaryapp": "-1"
    }
}

В папку с проектом скопировать oscript_modules для подмены модулей onescript. Оригиналы можно взять https://github.com/asweetand-a11y/DevTool1C.

Параметры отладки модулей BSL (утилита dbgs.exe)

При активации расширения 1C Dev Tools:

  • Работает только по протоколу http!
  • Если сервер отладки локально: выполняется попытка запуска сервера отладки dbgs.exe.
  • Если сервер отладки удаленно: выполняется попытка подключения.
  • В конфигураторе измените режим запуска отладки на http протокол.

Параметры в launch.json:

{
	"configurations": [
		{
			"type": "onec",
			"request": "launch",
			"name": "1C: Запуск с фоновыми заданиями",
			"debugServerHost": "localhost",
			"debugServerPort": 1560,
			"infoBaseAlias": "DefAlias",
			"autoAttachTypes": [
				"Client",
				"Server",
				"Job",
				"JobFileMode"
			]
		},
		{
		"type": "onec",
		"request": "launch",
		"name": "1C: Запуск без фоновых заданий",
		"debugServerHost": "localhost",
		"debugServerPort": 1560,
		"infoBaseAlias": "DefAlias",
		"autoAttachTypes": [
			"Client",
			"Server"
			]
		},
		{
			"type": "onec",
			"request": "attach",
			"name": "1C: Присоединиться",
			"debugServerHost": "localhost",
			"debugServerPort": 1560,
			"infoBaseAlias": "DefAlias",
			"autoAttachTypes": [
				"Client",
				"Server"
			]
		}
	]
}

autoAttachTypes — типы целей RDBG для автоподключения. Допустимые значения: Client, ManagedClient, WebClient, ComConnector, Server, ServerEmulation, WebService, HttpService, OData, Job, JobFileMode, MobileClient, MobileServer, MobileJobFileMode, MobileManagedClient, MobileManagedServer. Пресеты Client и Server при отправке в сервер отладки разворачиваются в набор подтипов (клиент: обычный, менеджер, веб, мобильный; сервер: сервер, файловый режим, мобильный сервер). Остальные типы передаются в RDBG как указано. Неизвестные строки в конфигурации подсвечиваются предупреждением в консоли отладки, но всё равно отправляются в setAutoAttachSettings.

В настройках расширения можно управлять таймингами обмена с сервером отладки

Параметры настраиваются через 1c-dev-tools.debug.timings:

Настройка По умолчанию Описание
varFetchDelayMs 50 Задержка между retry при пустом ответе evalLocalVariables/evalExpr
calcWaitingTimeMs 100 calcWaitingTime в RDBG — ожидание результата вычислений
pingIntervalMs 50 Интервал ping при выполнении (мс). 50 — стабильность целей
pingStoppedIntervalMs 500 Интервал ping в режиме остановки (мс). Меньше нагрузка на dbgs — цели и стек не меняются
stepInOutDelayMs 40 Задержка scheduleRefreshStackAndReveal для Step In/Out (мс)
immediatePingDelaysMs [25, 50, 100] Интервалы немедленного ping после F11/Shift+F11 для вылова callStackFormed (мс)
evalExprRetryDelaysMs [50, 100] Задержки retry evalExpr при пустом ответе (мс)
variablesRequestRetryDelaysMs [50, 100, 150] Retry при пустом ответе evalLocalVariables (мс)
pingDbgtgtIntervalMs 5000 Минимальный интервал между pingDBGTGT по одной цели (мс). Снижает нагрузку на dbgs (rtgt)

Примечание: Локальные переменные не отображаются. Для просмотра переменных выберите необходимый кадр (процедура/функция) в дереве вызовов Call stack и добавьте переменную в панель Watch.

Просмотр переменных при отладке, панель Watch:

  • Структура — раскрывается в панели переменных (Watch) с полями и значениями.

  • Соответствие — раскрывается с парами Ключ/Значение.

  • ТаблицаЗначений — раскрывается с колонками, индексами и строками [0], [1], … с кратким значением.

  • МенеджерВременныхТаблиц — раскрывается с веткой времененных таблиц.

  • Показать значение в отдельном окне — команда для просмотра коллекций в табличном виде:

    • из панели Watch: правый клик по переменной → «Показать значение в отдельном окне»;
    • из редактора: выделить имя переменной (например, ТЗ, Соот1, Запрос) → правый клик → «Показать значение в отдельном окне».
  • Рассчитать значение — вычисление произвольных выражений в контексте остановки отладки. Позволяет ввести выражение (например, Запрос.МенеджерВременныхТаблиц.Таблицы[0]), нажать «Рассчитать» и получить результат в виде таблицы (Свойство, Значение, Тип):

    • кнопка «Рассчитать значение» в заголовке панели Watch (при отладке 1С);
    • контекстное меню редактора модулей → «Рассчитать произвольное значение»;
    • горячая клавиша Ctrl+Alt+E;
    • Command Palette → «1C: Рассчитать значение».

Структура проекта

Расширение опирается на структуру каталогов проекта [vanessa-bootstrap]

Рекомендуемая структура проекта:

project/
├── build/
│   ├── ib/                 # Информационная база
│   └── out/                # Собранные файлы
│   └── commit/Commit.txt   # Файл куда пишем наши изменения
├── src/
│   ├── cf/                 # Исходники конфигурации
│   ├── cfe/                # Исходники расширений
│   ├── epf/                # Исходники внешних обработок
│   └── erf/                # Исходники внешних отчетов
├── oscript_modules/        # Зависимости oscript
├── env.json                # Настройки подключения к ИБ
└── packagedef              # Файл для активации расширения

Важные нюансы

  • Все команды выполняются в терминале Cursor для видимости вывода
  • Параметр --ibconnection берется из env.json (секция default['--ibconnection'], по умолчанию /F./build/ib)
  • Пути в настройках задаются относительно корня проекта или абсолютно; при вызове платформы 1С расширение подставляет итоговые абсолютные пути
  • В каталог oscript_modules/ с проектом копируем содержимое из репозитория oscript_modules/v8runner
  • В файл Commit.txt пишем что поменяли, пример: e:\DATA1C\BASE\src\cf\Catalogs\Подразделения\Ext\Predefined.xml e:\DATA1C\BASE\src\cf\Documents\Сборка\Ext\ObjectModule.bsl

ВАЖНО

  • за основу взят проект https://github.com/yellow-hammer/vscode-1c-platform-tools
  • отладка протестирована для базы в файловом варианте на платформе 8.3.27
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft