Разработка и код-ревью на 1С:Предприятие 8.3 (BSL) с проверкой по РЕАЛЬНОМУ коду через MCP, а не по памяти. Используй всякий раз, когда пишешь, правишь или ревьюишь BSL-код, работаешь с общими модулями, формами, запросами, СКД, регистрами, ролями; реализуешь задачу по ЧТЗ/тех-проекту; ищешь, как устроена типовая конфигурация или что уже есть в расширении; или отвечаешь на технический вопрос «как сделать в 1С» и «где это в коде». Срабатывай даже без слов «BSL/код/ревью», если речь о реализации...
Scanned 9/3/2026
Install to Claude Code
npx -y skills add vgtitov/bsl-ai-toolkit --skill 1c-dev --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of 1c Dev?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vgtitov-1c-dev)More formats (shields.io, HTML) on the badges page.
---
name: 1c-dev
description: >
Разработка и код-ревью на 1С:Предприятие 8.3 (BSL) с проверкой по РЕАЛЬНОМУ коду через MCP, а не по памяти.
Используй всякий раз, когда пишешь, правишь или ревьюишь BSL-код, работаешь с общими модулями, формами,
запросами, СКД, регистрами, ролями; реализуешь задачу по ЧТЗ/тех-проекту; ищешь, как устроена типовая
конфигурация или что уже есть в расширении; или отвечаешь на технический вопрос «как сделать в 1С» и «где это в
коде». Срабатывай даже без слов «BSL/код/ревью», если речь о реализации/правке в 1С. Нужны ДАННЫЕ живой/файловой
базы (посчитать записи, прочитать регистр, подключиться и проверить через OData) — это НЕ задача этого скилла:
вызывай `1c-tester`, у него готовый воспроизводимый путь (`references/data-access-verification.md` —
автономный сервер, поправки на кодировку кириллицы, диагностика по коду ответа); не изобретай доступ вручную
(COM/скрипты) и не иди за инструкцией напрямую в `docs/data-access-architecture.md` — это документ дизайна и
обоснования, а не пошаговый рецепт. Железное правило: НЕ
выдумывай поведение 1С и сигнатуры — проверяй по реальному коду через MCP и справку платформы, после правки
прогоняй BSL Language Server. Анализ/архитектура — скилл `1c-analyst`.
---
# Разработка 1С (BSL) — писать корректный и производительный код по реальному коду
## Локализация (сначала, если есть)
Если в скилле есть каталог `references/local/` — прочитай его ПЕРЕД работой: `version-stack.md`
(версии платформы/библиотек, режим совместимости, префиксы ТВОЕЙ компании) и остальные карты.
При противоречии локальное побеждает generic. Контракт — `docs/SKILL_LOCALIZATION.md` toolkit.
Скилл разработчика: писать prod-ready BSL и ревьюить его по реальному коду и стандартам, не по памяти.
Адаптируется под любую конфигурацию/расширение — заполни конвенции своего проекта (см. ниже).
## Главное правило: спроси инструмент, не угадывай
Нейросеть врёт в деталях 1С. Источник истины — реальный код и официальная справка:
- **Перед написанием** — найди, как уже сделано: MCP-поиск по коду (find/search/read), затем grep по клонам.
Сигнатуры встроенных функций — справка платформы (MCP справки платформы под твою версию).
- **После правки** — прогони **BSL Language Server** (синтаксис + стандарты ИТС). До 3 циклов автоисправления.
- **Гвард производительности (ENFORCED)** — прогони детектор «обращение к БД в цикле»:
`python scripts/bsl_guard.py <изменённые .bsl>` (exit 1 = находки). Ловит Запрос…Выполнить()/`.ПолучитьОбъект()`/
`.Ссылка.<Реквизит>` внутри `Пока/Для` (баг печатной формы). То же на коммите — pre-commit хук на staged `*.bsl`.
- Нет поведения ни в коде, ни в справке — так и скажи. Механизм без сверки помечай **[проверить]**, не «верно».
Алгоритм поиска (MCP-first): `find_object` → `search` → `read_module` → grep по клонам. Параметром `scope`
ограничивай слой/контур или расширяй на все (`scope` задаётся в `config/layers.*.toml`; без конфига — все слои).
**Не делай вывод об отсутствии по непросмотренному слою.**
Когда файл уже найден и вопрос точечный (что вызывает эту функцию, где она объявлена, какой тип у выражения,
не сломает ли правку сигнатуры другой контекст вызова) — не гадай по тексту и не грепай заново: `bsl-ls-native`
(MCP `≥1.0`, JDK 21+) даёт `definition`/`find_references`/`call_hierarchy`/`hover`/`type_at_position` семантически,
без ложных совпадений по имени. Справка по глобальным функциям/типам платформы (сигнатуры, since/deprecated,
примеры) — тем же MCP: `global_member_info`/`global_member_search`/`type_info`.
Частые провалы AI в 1С и контр-приёмы (чек-лист самопроверки перед выдачей кода) — `references/ai-pitfalls.md`.
## Версионный стек — НАСТРОЙ ПОД СВОЙ ПРОЕКТ
Зафиксируй у себя (в `CLAUDE.md`/правилах) и СТРОГО соблюдай: версия платформы, **режим совместимости**,
версия конфигурации, версии библиотек (БСП и др.). Принцип: справку брать по версии платформы, но НЕ предлагать
API, недоступный в твоём режиме совместимости. Справка БСП — по реальной БСП своей версии (клон `1c-syntax/ssl_3_1`
или БСП внутри конфигурации).
## Запреты AI и IDE-гейт (структуру меняет человек в IDE)
Структуру конфигурации — объекты метаданных, формы, макеты, СКД, роли — создаёт/меняет ТОЛЬКО человек в IDE
(**1C:EDT** или **Конфигуратор**), не AI и не текстовый редактор. IDE — источник истины структуры и фильтр
результатов AI. Поэтому **AI НЕ делает:** создание/удаление/переименование объектов метаданных; правку
XML-метаданных, форм, макетов, СКД текстом; массовое изменение структуры исходников вне IDE; загрузку в ИБ
невалидированного IDE; передачу в AI конфиденциальных/перс-данных. **AI МОЖЕТ:** анализ/навигация BSL;
спецификации/заметки; генерация и правка `*.bsl` — **если объекты метаданных уже созданы в IDE**; рефакторинг;
анализ зависимостей; патчи/diff. Любое AI-изменение человек принимает осознанно после проверки в IDE.
## Слои контура — искать в обоих
Контур = конфигурация (основа) + подключённое расширение. Искать функционал в ОБОИХ слоях. Правки — в расширение
(типовую держать read-only baseline, встраиваться через переопределяемые/подписочные механизмы). Где какой слой и
твои конвенции — см. `references/conventions-template.md`.
## Reuse-first, БСП и производительность (prod-ready)
Прежде чем писать свою утилиту — ищи готовое в БСП и типовой (через MCP). Топ-методы БСП —
`references/bsp-reuse.md` (реквизиты пачкой, массивы/строки/данные). Производительность и кэширование —
`references/performance.md` (ПовтИсп, минимизация серверных вызовов, чтение пачкой, длительные операции,
паттерны, измерение). Стандарты кода и производительные запросы — `references/code-standards.md`. Правило:
сначала измерь узкое место, потом оптимизируй его.
## Рабочий цикл реализации (тех-проект → атомы → код → передача) — ОПЕРАЦИОННОЕ ЯДРО
Полностью — в **`references/dev-workflow.md`**. Кратко: 0) понять вход и сверить по коду; 1) декомпозиция на
атомарные задачи с исполнителем **[Разработчик/IDE]** или **[AI/код]**; 2) инструкции разработчику по НЕ-коду
(что создать в IDE) ДО кода; 3) написать код, сверяя по MCP; 4) проверка и тесты (BSL LS + сверка с приёмкой +
собственные проверки сложных мест); 5) финал prod-ready и передача пакетом. Ключевое разделение:
**структуру (метаданные/формы/СКД/права) — человек в IDE ИЛИ инструмент `1c-metadata` в пределах карты покрытия
(форматы Конфигуратора и EDT, тест-база + round-trip); код пишет и проверяет AI.**
## Лестница тестирования (проверка «работает» — по ступеням)
Канон — **`docs/testing-ladder.md`**, настройка агентом — `onboard/TESTING_SETUP.md`. Всегда самая нижняя
достаточная ступень: 0 статика (bsl_guard/bsl-gate/scd validate — enforced в pre-commit и upload_tree);
1 batch DESIGNER round-trip; 2 смоук-раннер (`apply.smoke` — печатные формы/СКД реально формируются, вердикт
только по файлу-результату); 3 веб-смоук (публикация «работает» = строка 200 в access.log); 4 фреймворки
(Vanessa Automation/YAxUnit/Тестер) для команд/CI. «Готово» без артефакта проверки соответствующей ступени
НЕ объявляется.
## Роли-режимы (под задачу — переключай фокус)
developer (реализация по тех-проекту) · reviewer (ревью по стандартам и устойчивости) · refactor (читаемость без
смены поведения) · performance (запросы/блокировки/кэш) · error-fixer (багфикс: сначала анализ контекста и причины).
## Механические операции с платформой
Компиляция/дамп/валидация форм, СКД, ролей — `references/platform-ops.md` (набор `cc-1c-skills`, нужна 1С-платформа).
Поведение API управляемой формы, которое ловится только рантаймом (нет плоского обхода `Элементы`,
тайминг команд командного интерфейса, команда формы не перехватывается расширением, `Параметры` вне
вызова создания, заимствованная форма) — `references/platform-form-api.md`.
## Безопасность
Токены — только в env/keychain, НИКОГДА в чат/репозиторий. Конфиденциальные/персональные данные в AI не передавать.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!