Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Редактор конфигураций 1СNew to Visual Studio Code? Get it now.
Редактор конфигураций 1С

Редактор конфигураций 1С

Macegor

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

1С: Редактор конфигураций (v8vscedit)

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

В качестве шаблона проекта используется структура vanessa-bootstrap: основная конфигурация хранится в src/cf, расширения — в src/cfe/<ИмяРасширения>, а параметры окружения задаются в env.json.

Возможности

Навигация по метаданным

  • Дерево основной конфигурации и расширений в панели 1С: Редактор.
  • Поиск по дереву метаданных.
  • Открытие XML-файлов объектов и модулей 1С из контекстного меню.
  • Отображение собственных и заимствованных объектов расширений.
  • Информация о поддержке конфигурации и контроль возможности редактирования.
  • Подсветка объектов конфигурации по состоянию изменений в Git.

Редактирование конфигурации и расширений

  • Добавление объектов метаданных в конфигурацию и расширения.
  • Удаление объектов метаданных с учётом ограничений поддержки и хранилища.
  • Редактирование свойств объектов через отдельную панель свойств.
  • Заимствование объектов основной конфигурации в расширение.
  • Работа с модулями объектов, менеджеров, форм, команд, регистров, сервисов и общих модулей.

Синхронизация с базой 1С

  • Импорт основной конфигурации и расширений из информационной базы в XML-исходники.
  • Обновление конфигурации или расширения в базе из текущих исходников.
  • Автоматическое определение изменённых конфигураций по локальному хеш-кэшу.
  • Обновление всех изменённых конфигураций одной кнопкой.
  • Предложение обновить базу перед запуском тонкого клиента, если в исходниках есть незагруженные изменения.
  • Удобный интерфейс настройки проекта: выбор платформы 1С, информационной базы, пользователя и параметров подключения.

Запуск и окружение

  • Запуск тонкого клиента 1С из проекта.
  • Запуск конфигуратора 1С из проекта.
  • Работа с автономным сервером 1С: настройка, запуск, остановка, перезапуск, открытие веб-клиента и просмотр лога.
  • Автоматическая остановка и повторный запуск автономного сервера вокруг операций, которым нужен монопольный доступ к файловой базе.

Хранилище конфигурации

  • Подключение конфигурации или расширения к хранилищу.
  • Создание и отключение хранилища.
  • Захват, освобождение, помещение и получение объектов.
  • Добавление и копирование пользователей хранилища.
  • Выгрузка конфигурации из хранилища, отчёт по хранилищу и установка метки версии.
  • Ограничение команд редактирования для объектов, которые нельзя менять из-за состояния хранилища.

Код 1С и ИИ-агенты

  • Поддержка языка 1С через интегрированный запуск bsl-analyzer.
  • Автоматическая загрузка bsl-analyzer, если путь к нему не задан вручную.
  • Проверка обновлений bsl-analyzer и команды перезапуска/просмотра лога.
  • Локальный MCP-сервер для ИИ-агентов с инструментами навигации, чтения контрактов свойств и безопасного изменения метаданных.
  • Канонический формат путей метаданных и типов 1С для MCP-инструментов: см. docs/mcp-paths.md.
  • Установка проектных ИИ-ролей 1С для Codex, Cursor, Claude Code, Cline, GitHub Copilot, Roo Code, Windsurf и других поддерживаемых клиентов.

Требования

  • VS Code или Cursor с API VS Code 1.85 и выше.
  • Node.js 18 и выше, если расширение собирается из исходников.
  • Установленная платформа 1С:Предприятие для команд запуска, импорта, обновления и хранилища.
  • Информационная база 1С, доступная через строку подключения из env.json.
  • Доступ к интернету для автоматической установки bsl-analyzer, если он устанавливается через команды расширения.

Установка

Из VSIX

  1. Скачайте v8vscedit-<версия>.vsix из GitHub Releases.
  2. В VS Code или Cursor выполните Extensions → ... → Install from VSIX....

Можно установить и из командной строки:

code --install-extension v8vscedit-<версия>.vsix
cursor --install-extension v8vscedit-<версия>.vsix

Из исходников

npm install
npm run compile
npm run build

Для разработки:

npm run watch

После этого откройте корень репозитория в VS Code или Cursor и нажмите F5, чтобы запустить Extension Development Host.

Инициализация проекта 1С

Самый простой путь — открыть пустой каталог в VS Code или Cursor и перейти в панель 1С: Редактор. Если проект ещё не инициализирован, расширение покажет стартовый интерфейс для создания структуры проекта.

Инициализация создаёт базовую структуру каталогов, env.json, настройки bsl-analyzer и правила .gitignore. Она специально разрешена только для пустого каталога, чтобы не перезаписать существующий проект.

После инициализации в той же панели доступны настройки проекта: выбор платформы 1С, информационной базы, пользователя и пароля. Эти параметры сохраняются в env.json в формате, совместимом с vanessa-runner.

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

Основная конфигурация будет выгружена в src/cf, расширения — в src/cfe/<ИмяРасширения>.

Требования к структуре проекта

Расширение считает каталог проектом 1С, если в корне рабочей области есть:

project-root/
├── env.json
└── src/
    ├── cf/
    └── cfe/

env.json хранит параметры подключения:

{
  "default": {
    "--ibconnection": "/F/path/to/base",
    "--db-user": "",
    "--db-pwd": "",
    "--path": "/path/to/1cv8",
    "--root": ".",
    "--workspace": "."
  }
}

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

project-root/
├── env.json
├── src/
│   ├── cf/
│   │   └── Configuration.xml
│   └── cfe/
│       └── МоеРасширение/
│           └── Configuration.xml
└── .v8vscedit/
    └── ...

Каталоги с конфигурациями определяются по файлу Configuration.xml. Основная конфигурация и расширения могут находиться глубже внутри рабочей области, но для команд синхронизации используется соглашение:

  • src/cf — основная конфигурация;
  • src/cfe/<ИмяРасширения> — расширение с именем, совпадающим с именем расширения в базе;
  • .v8vscedit — служебные кэши расширения, их не нужно хранить в Git;
  • env.json — локальные параметры подключения, его обычно не коммитят, потому что там могут быть пути, пользователи и пароли.

Основные команды

  • Инициализировать проект 1С — создаёт структуру нового проекта.
  • Настройки проекта — выбирает платформу и информационную базу.
  • Импортировать конфигурации из базы — выгружает XML-исходники из базы.
  • Обновить изменённые конфигурации — загружает в базу только то, что изменилось в файлах.
  • Запустить тонкий клиент — запускает 1С:Предприятие, при необходимости предлагает сначала обновить базу.
  • Запустить конфигуратор — открывает 1С в режиме конфигуратора.
  • Автономный сервер: Настроить / Запустить / Остановить — управляет автономным сервером проекта.
  • Установить ИИ-роли 1С — устанавливает проектные роли для выбранных ИИ-агентов без внешних скриптов.

Большинство объектных команд доступны из контекстного меню узлов в панели 1С: Редактор: открыть XML, открыть модуль, показать свойства, добавить, удалить, добавить в расширение, команды хранилища.

MCP-сервер для ИИ-агентов

Расширение поднимает локальный MCP-сервер после полной загрузки дерева метаданных. Сервер нужен, чтобы ИИ-агент работал с конфигурацией через те же сервисы, что и пользовательский интерфейс расширения: без прямой записи XML в обход проверок.

По умолчанию endpoint:

http://127.0.0.1:38481/mcp

Если порт занят, расширение пробует следующие порты. Фактический адрес пишется в канал вывода 1С Редактор строкой вида:

[mcp] Сервер запущен: http://127.0.0.1:38481/mcp

Настройки MCP

  • v8vscedit.mcp.enabled — запускать MCP-сервер автоматически после загрузки дерева метаданных.
  • v8vscedit.mcp.host — локальный адрес сервера. Разрешены только 127.0.0.1, localhost и ::1.
  • v8vscedit.mcp.port — стартовый порт. Если он занят, расширение попробует следующие порты.

Сервер намеренно слушает только loopback-адрес. Не публикуйте его наружу через прокси или порт-форвардинг без отдельной модели авторизации: инструменты MCP могут менять исходники конфигурации и запускать операции синхронизации с базой.

Подключение клиента

  1. Откройте проект в VS Code или Cursor.
  2. Дождитесь загрузки панели 1С: Редактор и строки [mcp] Сервер запущен... в канале вывода.
  3. В MCP-клиенте добавьте HTTP / Streamable HTTP сервер с URL из канала вывода.

Пример конфигурации для клиентов, которые поддерживают mcp.json с HTTP-серверами:

{
  "mcpServers": {
    "v8vscedit": {
      "type": "http",
      "url": "http://127.0.0.1:38481/mcp"
    }
  }
}

Некоторые клиенты используют ключ servers вместо mcpServers или не требуют поле type. В таком случае оставьте тот же URL, а форму записи возьмите из документации конкретного клиента.

Доступные инструменты

  • v8vscedit_list_configurations — список найденных конфигураций и расширений.
  • v8vscedit_list_metadata_types — реестр типов метаданных из META_TYPES: папки, дочерние элементы, слоты модулей.
  • v8vscedit_workspace_overview — быстрый обзор основной конфигурации и расширений: корни, имена, версии и счётчики объектов.
  • v8vscedit_search_metadata — поиск по части строки в предметных путях метаданных выбранной конфигурации; параметр configuration обязателен при нескольких корнях.
  • v8vscedit_list_metadata — список объектов группы или дочерних элементов по пути без nodeId.
  • v8vscedit_get_properties — все свойства объекта по предметному пути: текущие значения, readonly, допустимые enum/multiEnum-значения.
  • v8vscedit_set_property_by_path — безопасное изменение простого свойства по предметному пути.
  • v8vscedit_list_available_types — стандартные и конфигурационные типы для свойств Тип, Источник, Тип параметра команды; возвращает русское поле value, а для CFE показывает только собственные и заимствованные объекты.
  • v8vscedit_set_type — изменение типа реквизита, измерения, ресурса, колонки, константы, общего реквизита или параметра команды; принимает русские значения типа, длину и точность.
  • v8vscedit_rename_metadata — переименование объекта или дочернего элемента через общий XML-сервис.
  • v8vscedit_add_metadata_by_path — добавление объекта, реквизита, табличной части, колонки, формы, команды или макета по предметному пути.
  • v8vscedit_remove_metadata — удаление объекта или дочернего элемента по предметному пути.
  • v8vscedit_execute_command — ограниченный запуск разрешённых команд расширения: v8vscedit.refresh, v8vscedit.importConfigurations, v8vscedit.updateChangedConfigurations.

Предметные пути принимают русские группы и технические имена типов. Примеры:

  • Справочники.Пользователи — объект справочника.
  • Справочники.Пользователи.Фамилия — реквизит объекта.
  • Справочники.Пользователи.ТабличныеЧасти.Состав — табличная часть объекта.
  • Справочники.Пользователи.ТабличныеЧасти.Состав.Реквизиты.Номенклатура — реквизит табличной части.
  • Справочники.Пользователи.Формы.ФормаСписка — форма объекта.
  • Справочники.Пользователи.ДополнительныеРеквизиты.Ссылка — реквизит табличной части.

Быстрый порядок для агента:

  1. Получить корни через v8vscedit_workspace_overview.
  2. Найти объект через v8vscedit_search_metadata или получить список через v8vscedit_list_metadata.
  3. Для чтения и изменения простых свойств использовать v8vscedit_get_properties и v8vscedit_set_property_by_path.
  4. Для ссылочного типа сначала вызвать v8vscedit_list_available_types с тем же metadataPath и брать значение из поля value; затем вызвать v8vscedit_set_type. Для числа сразу указывать length/digits и precision/fractionDigits.
  5. Для состава подсистем использовать v8vscedit_edit_subsystem_content: свойства подсистемы меняются обычными get_properties/set_property_by_path, а объекты в Content добавляются и удаляются отдельной точечной операцией.
  6. Для создания использовать v8vscedit_add_metadata_by_path, для переименования — v8vscedit_rename_metadata.

Такой порядок не заставляет агента ориентироваться по внутренним nodeId и английским enum-именам, но сохраняет проверки пользовательского режима: enum, boolean, readonly, допустимые типы и переименование корневых объектов проходят через те же сервисы, что панель свойств.

Как дополнять инструменты

При добавлении или изменении MCP-инструмента обновляйте этот раздел README в том же изменении кода.

Правила сопровождения:

  • Новый инструмент регистрируется в src/ui/mcp/V8McpServer.ts.
  • Бизнес-логика инструмента должна жить в общем сервисе, который может использовать и UI-команда. Не дублируйте запись XML внутри MCP-обработчика.
  • Если инструмент меняет файлы, он возвращает список изменённых файлов, обновляет дерево или кэш и маркирует конфигурацию изменённой тем же механизмом, что UI.
  • Для новых действий, меняющих конфигурацию или базу, добавляйте MCP-инструмент или явно фиксируйте в README, почему действие недоступно агенту.
  • При изменении входной схемы, имени инструмента, результата или правил безопасности обновляйте список инструментов, порядок использования и примеры подключения.

Настройки BSL Analyzer

В настройках расширения доступны параметры:

  • v8vscedit.lsp.mode — режим языковой поддержки 1С: bsl-analyzer или off.
  • v8vscedit.bslAnalyzer.autoUpdate — проверять обновления bsl-analyzer при запуске.
  • v8vscedit.bslAnalyzer.path — путь к установленному bsl-analyzer; если пусто, расширение скачает бинарник автоматически.

Разработка расширения

npm install
npm run compile
npm run lint
npm test

Перед коммитом должны проходить:

npm run compile
npm run lint

Для production-сборки:

npm run build
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft