Синтакс-помощник 1С для нейросетей

01.09.26

Разработка - Рефакторинг и качество кода

Рассказываю, как подключить к языковым моделям (в Cursor, VS Code, Claude Code) настоящий Синтакс-помощник 1С - со всеми типами, методами, параметрами, примерами кода, контекстами вызова и версиями платформы. Без ручного парсинга HTML: плагин для 1C:EDT в один клик выгружает официальную справку в Docker-контейнер с MCP-сервером и гибридным поиском (FTS5 + векторный индекс).

Зачем это нужно: боль разработки 1С с нейросетями

AI-ассистенты вроде Claude, GPT-4o и DeepSeek уже неплохо помогают писать код. Но в мире 1С они регулярно спотыкаются:

  • уверенно выдумывают несуществующие методы (например, Массив.ДобавитьВКонец() или ТаблицаЗначений.Find());
  • путают порядок и типы параметров;
  • предлагают методы из 8.3.27 для конфигураций на режиме совместимости 8.3.14;
  • пытаются вызвать клиентские методы (вроде Предупреждение) в фоновом задании на сервере.

Причина проста: у LLM нет доступа к актуальному Синтакс-помощнику. Документация 1С живёт внутри Конфигуратора и 1C:EDT в закрытых форматах. Модель не может просто «погуглить» метод или скачать свежий справочник одним файлом.

Без точного контекста разница между ответом модели - это разница между «угадала» и «знает наверняка».


Почему не подошли существующие решения

  1. EDT-MCP (get_platform_documentation):
    Возвращает сжатую машинную выжимку на английском языке - заголовок, сигнатуру и одну строчку описания. В ней нет примеров кода, нет разделов «См. также», нет тонкостей применения.
  2. mcp-bsl-platform-context (на базе bsl-context):
    Использует статический сторонний слепок справки. Это рабочий вариант, но он оторван от вашей рабочей среды и конкретных версий платформы, установленных у вас.

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


Как это устроено

Архитектура состоит из трёх простых компонентов:

 

 

  1. Плагин для 1C:EDT (Java/Tycho): обращается к внутреннему сервису PlatformDocProvider, обходит дерево справки для выбранных версий платформы и отправляет структурированные карточки по HTTP.
  2. MCP-сервер (Python, FastAPI, FastMCP): сохраняет карточки в SQLite, индексирует их через полнотекстовый поиск FTS5 и векторный индекс sqlite-vec.
  3. Сервис эмбеддингов (OpenAI-compatible): строит векторные представления (Giga-Embeddings или BGE-M3).

Важно: GPU не обязателен!
Если у вас нет видеокарты или запущен только базовый контейнер, поиск автоматически работает в режиме FTS-only (полнотекстовый поиск). Он стартует за секунды, потребляет минимум памяти и отлично находит методы по точным и префиксным совпадениям на русском и английском языках.


Что внутри карточки: киллер-фичи для LLM

Плагин выгружает не просто «голый текст», а богатую структуру:

  • Имена на двух языках: Массив.Найти и Array.Find, раздельно объект и метод;
  • Варианты синтаксиса: до 8 вариантов вызова с описанием каждого параметра;
  • introduced_in (Версия появления): парсится из раздела «Доступен, начиная с версии...»;
  • availability (Контекст исполнения): Сервер, Тонкий клиент, Толстый клиент, Мобильное приложение и т.д.;
  • Полное тело: Описание, Параметры, Возвращаемое значение, Примеры использования.

Слои версий (8.3.24, 8.3.25, 8.3.26, 8.3.27, 8.5.1)

Справка выгружается независимыми срезами:

  • base - срез 8.3.24 (покрывает запросы по 8.3.8–8.3.24);
  • 8.3.258.3.268.3.278.5.1 - полные срезы соответствующих версий.

При поиске с параметром platform_version = "8.3.24" модель гарантированно не увидит методы и свойства, появившиеся только в 8.3.25+.


Два инструмента для нейросети

Сервер предоставляет два простых MCP-инструмента:

  1. docinfo(name, platform_version) - мгновенное получение полной статьи по точному имени (Массив.НайтиHTTPЗапросWSСсылки):

    markdown

    # Массив.Найти
    kind: method | layer: base | en: Array.Find
    syntax: Массив.Найти(<Значение>)
    introduced_in: 8.0 | availability: Тонкий клиент, Сервер, Мобильный клиент...
    
    [Полное описание, параметры, примеры кода]
    
  2. docsearch(query, platform_version) - умный гибридный поиск по смыслу и ключевым словам.
    Объединяет результаты FTS5 (BM25) и векторного поиска через Reciprocal Rank Fusion (RRF).


Быстрый старт

Шаг 1. Запуск Docker-сервисов

Клонируем репозиторий и запускаем контейнеры:

bash

git clone https://github.com/malikov-pro/bsl-syntax-help-mcp.git
cd bsl-syntax-help-mcp

docker network create syntax-help

cp docker/mcp/.env.example docker/mcp/.env
# При необходимости настройте токены в docker/mcp/.env

# Запуск MCP-сервера (CPU)
docker compose -f docker/mcp/docker-compose.yml up -d --build

# Опционально: запуск GPU-эмбеддингов (Giga-Embeddings)
# docker compose -f docker/giga/docker-compose.yml up -d --build

Шаг 2. Установка плагина в 1C:EDT

Поддерживаются EDT 2025.2 и 2026.1.

  1. В EDT откройте: Справка → Установить новое ПО...
  2. Вставьте ссылку на Update Site:

    text

    https://malikov-pro.github.io/bsl-syntax-help-mcp/
    (Либо скачайте zip-архив со страницы Releases).
    Совет: при установке из архива снимите флажок «Обращаться во время инсталляции ко всем сайтам обновления…».
  3. В EDT перейдите: Окно → Параметры → Синтакс-помощник MCP.
  4. Укажите адрес сервера (http://127.0.0.1:8004), токен выгрузки и выберите нужные версии платформы.
  5. Нажмите «Выгрузить». Выгрузка идёт в фоне и не блокирует работу в EDT.

 

 

Шаг 3. Подключение к AI-ассистентам

В настройках MCP вашего клиента (Cursor, VS Code / Cline, Claude Code, Windsurf) добавьте сервер:

json

{
  "mcpServers": {
    "bsl-syntax-help": {
      "url": "http://127.0.0.1:8004/mcp",
      "headers": {
        "Authorization": "Bearer ВАШ_MCP_TOKEN"
      }
    }
  }
}

Пример работы в диалоге с LLM

Запрос к ассистенту:
«Напиши функцию для копирования файла на сервере с проверкой существования, версия платформы 8.3.20».

Действие модели:
Модель вызывает docsearch("КопироватьФайл", platform_version="8.3.20"), получает точный синтаксис и доступность, после чего выдаёт корректный код без галлюцинаций и с правильной обработкой исключений.


Переносимость: один раз выгрузил - раздал всей команде

После выгрузки вся база со всеми индексами сохраняется в одном файле help.sqlite. Вам не обязательно запускать выгрузку на каждой машине: достаточно передать готовый файл help.sqlite коллегам по команде, и их локальный MCP-сервер подхватит его мгновенно.


Планы по развитию проекта

  • добавить аналог навигации по Синтакс-помощнику: вы открываете ветку типа (например «Массив») и видите список всех его методов и свойств.

Ссылки и участие в проекте

  • Исходный код и документация: GitHub: malikov-pro/bsl-syntax-help-mcp (Лицензия AGPL-3.0)
  • Если проект вам полезен - поддержите его звёздочкой на GitHub!
  • Вопросы, баг-репорты и идеи приветствуются в Issues репозитория и в комментариях к этой статье.

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

#1C #EDT #MCP #LLM #AI #Cursor #Claude #СинтаксПомощник #Docker #SQLite

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

SALE! %

Банковские операции Обмен с интернет-банком Мастера заполнения Нейросети Программист Бухгалтер Пользователь 1С:Предприятие 8 1C:ERP 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:ERP. Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 3.0 Платные (руб)

Корректируйте банковские документы быстро и легко! Создайте правило обработки — и оно автоматически применится при загрузке выписки (отбор по любому реквизиту или регулярному выражению). Решение заполняет расшифровку платежа, комиссию эквайринга, подбирает ведомости на выплату зарплаты, помечает дубли из банка на удаление и многое другое. Доплачивать за алгоритмы не нужно — они включены в решение. Обработка работает при загрузке из файлов клиент-банка и через DirectBank. Новое — искусственный интеллект: модель приводит нестандартные назначения платежа к виду, понятному алгоритмам, а ИИ-ассистент прямо в 1С консультирует по решению и разбирает код правил и алгоритмов. Поддерживаются локальные и облачные OpenAI-совместимые модели — данные могут не покидать ваш контур.

15250 руб.

20.12.2024    18802    96    29    

82

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.

15250 руб.

25.08.2025    69323    139    41    

147

SALE! %

Нейросети Системный администратор Программист Бизнес-аналитик Бухгалтер Пользователь Руководитель проекта 1С 8.3 1С:Документооборот 1С:Бухгалтерия 3.0 1С:Зарплата и Управление Персоналом 3.x Россия Платные (руб)

Задавайте вопросы базе 1С обычными словами: получайте данные, находите ошибки и связанные документы, проверяйте права, работайте с вложениями и контролируемо вносите изменения. Всё это работает в самой программе, а Codex и Claude подключаются по желанию.

15989 9891 руб.

30.07.2026    9235    20    4    

22

Нейросети Программист 1С:Предприятие 8 Россия Бесплатно (free)

Как связать 1С и Cursor через MCP так, чтобы AI-агент сам получал актуальную конфигурацию из информационной базы, находил нужный BSL-код, вносил изменения, загружал конфигурацию обратно и запускал 1С:Предприятие. В статье — настройка 1C: Platform Tools, 1C: Platform Tools MCP, OneScript, vanessa-runner и env.json, а также важные нюансы при работе с несколькими проектами, IPC-портами, большими конфигурациями и длительными операциями загрузки. Покажу полный практический цикл на тестовой базе без ручной выгрузки и загрузки XML через Конфигуратор.

28.08.2026    15146    rinat1c    18    

30

Нейросети Программист 1С 8.3 Бесплатно (free)

Один проход модели по вопросу из 28 знаков стоит 631 296 умножений и 4,8 секунды. Столько берёт языковая модель на 21 920 параметров, посчитанная прямо в 1С средствами самой платформы. На ней разбираю по шагам, что стоит за каждым словом из модного словаря: токен, словарь, вектор символа, вес, слой, голова внимания, контекст, softmax, температура, KV-кэш. Отдельно про температуру - она вообще не про креативность и управляет выбором буквы уже после того, как модель закончила работу. Отдельно про галлюцинацию - показываю в цикле генерации место, куда физически невозможно вставить "не знаю". Плюс расчёт потолка для встроенного языка, замер цены размера модели и история про метод платформы, которого не существует.

20.08.2026    6024    nedomolkov.ivan    16    

25

Нейросети Программист Бесплатно (free)

SFT-адаптация Qwen3.6-27B/Qwen3.8-27B для разработки на платформе 1C:Enterprise: код на BSL, структура выгрузок BSL+XML, схемы XML и типовые практики конфигураций. Модель ориентирована на ассистента разработчика 1С: навигация по метаданным/XML-выгрузке, пояснение и правка BSL, следование внутренним стандартам кодирования, работа с кодовыми базами 1С.

03.08.2026    7883    andrew.ab    44    

23

Нейросети Программист Бесплатно (free)

Эта статья не столько про новую программу, сколько про путь: от желания немного улучшить чужой open-source проект — до создания собственного инструмента, который закрывает весь цикл работы с речью. Транскрибация, генерация статей и описаний через LLM, синтез аудиокниг — всё локально, в одном приложении. Исходники открыты, лицензия MIT.

29.07.2026    3567    Ibrogim    25    

30

Нейросети Программист Бесплатно (free)

Новые результаты теста топовых ИИ в вайбкодинге на 1С. Это продолжение прошлой статьи, где нейросети написали внешнюю обработку за 19 минут. Теперь же с этой же задачей справляются за 3–4 минуты. Прошло всего несколько недель. Что будет дальше?

24.07.2026    15575    top_1c    115    

41
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. gybson 13 01.09.26 15:46 Сейчас в теме
из hbk файлов справка тоже без проблем вынимается
2. malikov_pro 1399 01.09.26 16:05 Сейчас в теме
(1) Да, инструментарий есть. Мне удобно работать в EDT поэтому вокруг него делаю обвязку.
3. kotlovD 89 02.09.26 09:31 Сейчас в теме
Спасибо, думаю будет полезно, может закинуть issue в EDT_MCP?
4. malikov_pro 1399 02.09.26 12:32 Сейчас в теме
(3) Отлаживаю на работе, буду цеплять пока к openrouter (нет GPU нормальной как дома). После отладки сформирую обоснованный вариант вливания docker-compose в проект и правки правил работы LLM. Рядом в статье еще v8std, там возможно удаление/отключение дублирующегося функционала. Фишка EDT-MCP что не нужно дополнительно ставить сервисы для базовой работы. Нужно понять как состыковывать инструменты при расширении функционала.

Если есть желание и сформирована мысль, то делайте issue, поддержу.

Мои размышления по теме в malikov-pro/bmad-module-1c-edt, буду смотреть что интересного получилось в axelboman277/v8std-standards-harness.
Для отправки сообщения требуется регистрация/авторизация