Claude Code Skills for 1C:Enterprise

Набор скилов, правил и команд для Claude Code: агент правит 1С по формату платформы, а не текстовым поиском по файлам.

Лицензия MIT Релиз Тесты

Скилы дают агенту готовые операции над исходниками: собрать объект метаданных, форму, роль, схему компоновки, расширение, внешнюю обработку - и разобрать их обратно. Правила задают, как он это делает: стандарты BSL, антипаттерны, требования EDT, работа с БСП. Скрипты правят XML-выгрузку напрямую, поэтому базовые операции идут без запущенной платформы и без Конфигуратора. Вместе с нашим плагином AI-EDT агент получает еще и семантическую модель самой 1C:EDT - об этом ниже.

Проверка результата тоже идет по выгрузке, без внешних инструментов. Четырнадцать валидаторов разбирают XML объекта, формы, роли, схемы компоновки, макета, расширения. Сверх этого 1c-config-index собирает индекс конфигурации, и валидаторы сверяют объект с ОСТАЛЬНОЙ конфигурацией: ссылочные типы реквизитов, пути данных формы, состав подсистемы, права роли, наборы данных СКД, имена таблиц и полей в запросе, вызовы общих модулей. Ни платформа, ни EDT, ни запущенная база для этого не нужны. Границу набор обозначает прямо: это проверка имен и структуры, а типы выражений, семантика BSL и план запроса без платформы недоступны.

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

Кроме скилов в наборе есть справочники API: агент не подбирает имя метода по памяти, а берет его из справочника и проверяет вызов до того, как напишет строку кода. Справочник по БСП (1c-bsp-api) - 2624 метода в 284 модулях Библиотеки стандартных подсистем 3.1.11 и 3.2.1: сигнатуры, типы параметров, контексты выполнения, 372 переопределяемых обработчика; команда check отвергает вызов, которого в библиотеке нет. Справочник по ЗУП (zup-hr-api-reference) - 1С:ЗУП 3.1: кадровый учет, средний заработок и начисления, пособия и обмен с СФР, регламентированная отчетность.

Состав набора

Группа Что делает Скилов
Маршрутизатор подсказывает, каким скилом решать задачу 1
Конфигурация создать с нуля, изменить свойства, проанализировать, проиндексировать, прочитать состояние поддержки 8
Объекты метаданных собрать из JSON, разобрать обратно в JSON, править реквизиты и табличные части 6
Управляемые формы собрать из DSL или по метаданным объекта, править, разобрать, проверить 8
Расширения создать, заимствовать объект, поставить перехватчик на метод, сверить с основной 6
Обработки и отчеты собрать .epf и .erf из исходников и разобрать обратно 10
Базы данных создать, выгрузить и загрузить .cf, .dt и XML, обновить, запустить 11
Роли, подсистемы, макеты, СКД, XDTO сборка и разбор своим DSL под каждый вид 25
Веб-публикация и тестирование опубликовать базу через Apache, прогнать сценарий в браузере 5
БСП, 1С 7.7, обмены справочник API БСП и поиск функций, разработка под 7.7, правила КД 2.0 и 3.1 8
Справочные и утилитарные документация платформы, справочники API типовых, транскрибация, docx и xlsx, окружение агента 28

Полный перечень с описанием каждого скила - в разделе Скилы ниже.

И 35 правил - подключаются один раз и действуют во всех задачах, без напоминаний в каждом промпте:

  • код и запросы - стандарты BSL, антипаттерны вроде запроса в цикле, оптимизация, чеклист ревью;
  • формы, метаданные, EDT - требования к XML форм, целостность MDO, ограничения экспорта из EDT;
  • БСП и типовые - вызывать готовые механизмы вместо собственной реализации, размечать правки типовых;
  • процесс и сам агент - SDD-workflow, выбор модели под задачу, рабочая память, безопасность git.

Как это выглядит

Справочник с реквизитами и табличной частью. На входе пятнадцать строк JSON:

{
  "type": "Справочник",
  "name": "Контрагенты",
  "codeLength": 11,
  "descriptionLength": 150,
  "hierarchical": true,
  "attributes": [
    "ИНН: Строка(12), index",
    "Покупатель: Булево",
    "ОсновнойМенеджер: СправочникСсылка.Пользователи"
  ],
  "tabularSections": {
    "КонтактныеЛица": ["ФИО: Строка(150), req", "Телефон: Строка(20)"]
  }
}

Один вызов скила 1c-meta-compile - и на диске почти шестьсот строк корректного XML:

  • Catalogs/Контрагенты.xml - 580 строк со всеми обязательными секциями, стандартными реквизитами и сгенерированными UUID;
  • Catalogs/Контрагенты/Ext/ObjectModule.bsl - заготовка модуля объекта;
  • запись <Catalog>Контрагенты</Catalog> в Configuration.xml, то есть объект сразу в составе конфигурации, а не сиротой на диске;
  • Validation OK: Catalog.Контрагенты (11 checks) от валидатора набора.

Структуру файла агент не выдумывает и не подсматривает в чужих выгрузках: формат зашит в скил и закреплен снапшот-тестами, которые сравнивают результат с эталоном.

Установка

Два пути на выбор: попросить агента или сделать руками.

Вариант 1: попросить агента, без единой команды

Скопируйте текст ниже, подставьте свой каталог вместо <КАТАЛОГ> и отдайте агенту в новой сессии. Дальше он все сделает сам: склонирует репозиторий, снимет опись машины, покажет план и поставит только то, что вы выберете.

Установи мне набор скилов, правил и связанных инструментов для работы с 1С
из репозитория https://github.com/Desko77/claude-code-skills-1c

Порядок:
1. Склонируй репозиторий в <КАТАЛОГ>, если он уже там - выполни git pull.
2. Прочитай в нем skills/claude-env-setup/SKILL.md и ОБА файла из
   skills/claude-env-setup/references/ - safety.md и components.md.
   Дальше действуй строго по ним.
3. Сними опись моей машины: что уже установлено, какие MCP-серверы
   прописаны, какие порты заняты, что есть из зависимостей
   (Python, Node, Docker, ffmpeg, платформа 1С).
4. Покажи план таблицей и дождись моего выбора. Ничего не ставь
   до моего ответа.

Ограничения:
- Ничего не перезаписывай молча. Файл, который у меня уже есть
  и отличается, - покажи diff и спроси.
- Конфигурацию MCP (~/.claude/settings.json, ~/.claude.json,
  .mcp.json проекта) правь СЛИЯНИЕМ: добавляй только отсутствующие
  ключи, файл целиком не переписывай.
- Не трогай мои скилы и правила, которых нет в наборе.
- Не завершай запущенные сеансы 1С и EDT, не пересоздавай
  существующие venv и Docker-контейнеры.
- Перед первой правкой любого конфига сделай резервную копию
  с меткой времени.

В конце дай отчет: что поставлено, что не встало и почему,
и отдельным списком - что мне нужно сделать руками: перезапустить
клиент, вписать ключи API, поставить плагин в EDT.

Этот же путь годится для обновления: агент доставит недостающее и не тронет ваши правки. Готовые промпты под остальные случаи - обновление рабочей машины, проверка без установки, установка одного компонента - лежат в skills/claude-env-setup/PROMPT.md.

Вариант 2: руками, если вы знаете, что делаете

cp -r skills/* ~/.claude/skills/     # или один скил: cp -r skills/1c-meta-compile ~/.claude/skills/
cp rules/*.md ~/.claude/rules/
cp commands/* ~/.claude/commands/

Копирование затрет ваши правки, если вы дорабатывали скилы под себя. На такой машине берите вариант 1: он показывает diff и спрашивает по каждому расхождению.

Первая задача

Откройте Claude Code в каталоге с исходниками 1С и скажите задачу обычными словами: «создай справочник Контрагенты с ИНН и табличной частью контактных лиц». Скил агент подберет сам.

Проверить, что набор работает: node tests/skills/runner.mjs cases/meta-compile (нужен Node.js 18+).

AI-EDT: агентная разработка прямо в 1C:EDT

Набор раскрывается полностью вместе с AI-EDT - MCP-сервером, который работает плагином внутри запущенной 1C:EDT и дает ассистенту не текст файлов, а семантическую модель самой среды.

Репозиторий https://github.com/Desko77/ai-edt
Установка update site https://desko77.github.io/ai-edt/ (в EDT: Help -> Install New Software)
Требования 1C:EDT 2026.2 или 2026.1

Что это меняет на практике: ассистент разрешает ссылки на объекты метаданных, строит иерархии вызовов, спрашивает у EDT выведенный тип в позиции BSL, правит метаданные без ручного XML, ставит точки останова и читает переменные в приостановленной сессии - а результат тут же проверяет валидаторами самой EDT. Ошибка всплывает на месте, а не при первой загрузке конфигурации в базу. Больше сотни операций собраны в фасады code_search, edit_metadata, launch_debugger, diagnostics, insights, security_audit, поэтому клиент видит компактный набор инструментов вместо длинного списка почти одинаковых команд.

Скил ai-edt-tools в этом наборе - каталог этих инструментов и типовых сценариев: что вызывать под задачу, в каком порядке и какие проверки обязательны после правки.

Обратное тоже стоит знать: часть набора не зависит от плагина вообще. 1С 7.7, веб-публикация и тестирование через браузер, правила конвертации данных 2.0 и 3.1, Cleverence, справочники API типовых конфигураций - в AI-EDT ничего этого нет, и там маршрут только через скилы. Базовые операции над исходниками (собрать объект, форму, роль, СКД, расширение, разобрать обработку) тоже идут без EDT и без платформы - плагин добавляет к ним семантику и проверку, но не заменяет их.

Часть проверок, прежде доступных только в EDT, тоже работает по выгрузке. 1c-config-index собирает индекс конфигурации в один JSON, валидаторы читают его параметром -IndexPath и сверяют объект с остальной конфигурацией: типы реквизитов, пути данных формы, состав подсистемы, права роли, наборы данных СКД, имена в запросе, вызовы общих модулей. Это проверка имен: типы выражений, семантика BSL и план запроса без платформы недоступны.

Типовые сценарии

Задача Чем решается
Добавить в конфигурацию документ, а к нему форму 1c-meta-compile, затем 1c-form-compile
Доработать типовую, не снимая с поддержки 1c-cfe-init, 1c-cfe-borrow, 1c-cfe-patch-method
Собрать внешнюю обработку из исходников и загрузить в базу 1c-epf-build, 1c-db-load-cf
Разобрать чужую .epf, чтобы понять, что она делает 1c-epf-dump, затем 1c-form-info
Выгрузить конфигурацию в XML и положить под git 1c-db-dump-xml
Написать запрос и проверить его до запуска скил composing-1c-queries; имена таблиц и полей - 1c-query-validate по выгрузке, типы и план - validate_query из AI-EDT
Найти битые ссылки после рефакторинга: типы реквизитов, пути данных форм, состав подсистем, права ролей 1c-config-index, затем валидаторы с -IndexPath
Не угадывать, каким скилом решать задачу 1c-config-router

Зависимости

Компонент Обязательно Для чего
PowerShell 5.1+ (Windows) Да Скрипты скилов (.ps1)
Python 3.8+ Нет Альтернативные скрипты (.py), v8unpack-cf, check-uuid, img-grid-analysis
v8unpack Нет Распаковка/сборка CF/CFE/EPF без платформы
1C:Enterprise 8.3 Нет Скилы группы db-*, сборка EPF/ERF
Node.js + npm-пакет docx Нет md-to-docx (конвертация Markdown в DOCX)
ffmpeg, ffprobe Нет transcribe, transcribe-audio-local (извлечение аудио, разбивка длинных файлов)
NVIDIA GPU + CUDA 12 + cuDNN 9 Нет transcribe, transcribe-audio-local (локальный движок faster-whisper + sherpa-onnx). CPU тоже работает, но в 10+ раз медленнее
gcomp Нет 1c77-dev (разбор/сборка .ert и 1Cv7.MD для 1С 7.7)
Node.js + @mermaid-js/mermaid-cli (mmdc) Нет mermaid-render (рендер диаграмм в PNG/SVG/PDF)
Обработка MCP_Toolkit.epf (ROCTUP) Нет 1c-mcp-toolkit (HTTP API к живой запущенной базе 1С)
MCP-серверы (см. таблицу ниже) Нет Анализ кода, валидация запросов, документация ИТС/платформы/конфигураций

Скилы спроектированы по слоям - базовые (генерация XML) работают без платформы, продвинутые требуют 1С или MCP.

MCP-серверы, на которые ссылаются скилы

Сами серверы в этот репозиторий не входят - они ставятся и настраиваются отдельно, в .mcp.json проекта или в пользовательских настройках Claude Code. Здесь перечислены ключи ровно в том виде, в каком они пишутся в скилах и правилах, чтобы ссылки читались однозначно.

Ключ сервера Для чего Кто использует
ai-edt BSL-код, метаданные, формы, валидация запросов, ошибки проекта, отладка, обновление ИБ. Плагин внутри 1C:EDT, 100+ операций в фасадах. Update site ai-edt-tools, composing-1c-queries, 1c-query-optimization
bsl-platform-help API платформы: методы, типы, сигнатуры, конструкторы, стиль и строгая типизация 1c-platform-docs
1c-naparnik Ревью кода, стандарты ИТС, документация платформы и конфигураций 1c-naparnik
1c-mcp_ssl_server Поиск функций БСП по описанию задачи 1c-ssl-patterns
1c-forms-mcp Генерация обычных (неуправляемых) форм вне EDT-проекта правило forms_generation.md
1c77-metadata Конфигурация 1С 7.7: объекты, реквизиты, модули (установка) 1c77-dev
1c-syntax-checker-mcp Проверка синтаксиса BSL без запущенной EDT правило mcp-tool-priority.md
1c-templates-mcp Семантический поиск по 2200+ шаблонам кода BSL правило mcp-tool-priority.md

Скил ai-edt-tools и правила написаны под AI-EDT: ключ сервера ai-edt, инструменты свернуты в фасады с маршрутизацией через operation=. Если у вас подключен другой MCP-плагин для EDT, каталог из references/ к нему неприменим - имена инструментов и их состав там свои: берите фактические из tools/list своей сессии.

Отдельно: 1c-mcp-toolkit - это скил репозитория, а не MCP-сервер. Он ходит в живую базу по HTTP через обработку MCP_Toolkit.epf, поэтому в .mcp.json его прописывать не нужно.

Совместимые сторонние плагины

Основной спутник набора - собственный AI-EDT (см. раздел в начале). Кроме него с набором сочетаются:

bsl-language-server - интеграция BSL Language Server в Claude Code по протоколу LSP: диагностики, go to definition, find references, hover, форматирование, code actions для .bsl и .os.

/plugin marketplace add 1c-syntax/claude-code-bsl-lsp
/plugin install bsl-language-server@bsl-language-server

Плагины Anthropic - code-review и pr-review-toolkit для ревью PR агентами, mcp-server-dev для разработки MCP-серверов, claude-md-management для поддержания CLAUDE.md, security-guidance для security-ревью.

/plugin marketplace add anthropics/claude-plugins-official
/plugin install <name>@claude-plugins-official

Скилы (116)

Начать проще всего с 1c-config-router: он сам определяет, каким скилом или workflow решать задачу.

Правила (35)

Файл Описание
1c-coding-standards.md Стандарты кода BSL: именование, форматирование, запросы, коллекции, директива РАЗРЕШЕННЫЕ
anti_patterns.md Критические антипаттерны: запрос в цикле, точка, O(n^2)
query-optimization-tips.md Оптимизация запросов: ВЫРАЗИТЬ, ВТ, индексы, СКД
async-methods-1c.md Асинхронные методы (Асинх/Ждать/Обещание)
1c-extension-patterns.md Паттерны расширений CFE: перехватчики, маркеры
form_module_rules.md Клиент-серверное разделение в модулях форм
1c-form-reserved-names.md Зарезервированные имена свойств элементов в модулях форм
forms_events.md Привязка обработчиков событий в Form.xml
forms_generation.md Генерация и модификация форм 1С через 1c-forms-mcp
edt-form-xml-requirements.md Требования EDT к XML-формам (Form.form): extInfo, дефолты полей
code-review-checklist.md Чеклист ревью BSL-кода (Critical/High/Medium/Low)
code-exploration-guide.md Методология исследования кодовой базы 1С
testing-patterns.md Паттерны тестирования: YaXUnit, Vanessa Automation
1c-mdo-integrity.md Целостность MDO-файлов: UUID, ссылки, ограничения типов String/Number
external-data-source-mdo.md Внешние источники данных (ВИД) в формате EDT
v8unpack-source-structure.md Структура исходников v8unpack
refactoring.md Правила рефакторинга 1С: техники, критерии, примеры BSL
routine_assignment_ext_processor.md Фоновые задания из внешней обработки через БСП
bsp-profile-rights-api.md Программная работа с профилями групп доступа БСП: ссылки на ИдентификаторыОбъектовМетаданных, шаблон создания/обновления
mcp-tool-priority.md Маршрутизатор MCP-серверов под задачу: какой сервер брать, обязательные проверки, фасады AI-EDT, троттлинг
model-selection.md Стратегия выбора моделей: Opus/Sonnet/Haiku по типу задачи
sdd-workflow.md Specification-Driven Development: 9-фазный workflow разработки
skill-design.md Проектирование скилов: модельный и пользовательский вызов, лестница информации, критерии завершения шага
agent-working-memory.md Рабочая память агента: файлы плана, передача сессии, правила проекта как журнал инцидентов
git-safety-rules.md Безопасная работа с git: запрет AI-атрибуции и секретов, деструктивные команды, force push, amend, политика EOL для 1С-репозиториев (.gitattributes)
text-formatting.md Запрещенные символы в генерируемом тексте (длинное тире, е, елочки): EDT режет их при сохранении
file-edit-efficiency.md Выбор инструмента чтения и правки файлов по стоимости токенов; кэширование крупных карт проекта
1c-role-rights.md Права ролей 1С: настройка прав на объекты, RLS, наследование
1c-report-direct-query.md Прямой запрос в отчетах (СКД) без схемы компоновки
edt-zip-export-pitfalls.md Ограничения инкрементального экспорта конфигурации из EDT в ИБ
agent-verification-patterns.md Паттерны проверки результата работы агента (reconciliation loop)
bsl-ssl.md Переиспользование БСП, разметка правок типовых модулей, устаревшие объекты
edt-bsl-write-safety.md Безопасная запись BSL-модулей через EDT MCP
integrations.md Python-first подход к HTTP-интеграциям 1С
1c-skd-two-pass-preprocessing.md Двухпроходный СКД: предобработка деталей до свертки

Команды (5)

Файл Описание
check-uuid.md Проверка уникальности UUID в MDO-файлах
check_uuid_duplicates.py Python-скрипт проверки дубликатов UUID
docx-to-md.md Конвертация DOCX в Markdown
move-project.md Перенос проекта Claude Code с сохранением памяти, сессий и планов
browser-debug.md Запуск браузера с CDP-отладкой для веб-приложений

Документация (docs/)

Справочные спецификации и руководства для скилов:

Файл Описание
1c-specs-index.md Индекс всех спецификаций
1c-config-objects-spec.md Спецификация объектов метаданных
1c-configuration-spec.md Спецификация конфигурации
1c-extension-spec.md Спецификация расширений
1c-form-spec.md Спецификация управляемых форм
1c-epf-spec.md Спецификация внешних обработок
1c-erf-spec.md Спецификация внешних отчетов
1c-role-spec.md Спецификация ролей
1c-subsystem-spec.md Спецификация подсистем
1c-support-state-spec.md Спецификация состояния поддержки (ParentConfigurations.bin)
1c-xdto-spec.md Спецификация пакетов XDTO
1c-spreadsheet-spec.md Спецификация табличных документов
1c-dcs-spec.md Спецификация СКД
1c-help-spec.md Спецификация справки
build-spec.md Спецификация пакетного режима 1С
meta-dsl-spec.md DSL метаданных
form-dsl-spec.md DSL форм
mxl-dsl-spec.md DSL макетов
role-dsl-spec.md DSL ролей
skd-dsl-spec.md DSL СКД
python-porting-guide.md Руководство по портированию скриптов PowerShell на Python
v8-project-guide.md Руководство по .v8-project.json
web-guide.md Руководство по веб-публикации 1С
web-spec.md Спецификация веб-публикации
web-test-guide.md Руководство по веб-тестированию
web-test-recording-guide.md Руководство по записи видео веб-тестов
*-guide.md Руководства по отдельным подсистемам (cf, cfe, db, epf, form, meta, mxl, role, skd, subsystem)

Регресс-тесты скилов

Скрипты скилов покрыты снапшот-тестами: скил получает вход, генерирует файлы, результат сравнивается с эталоном. Быстро, файлово, без платформы 1С.

node tests/skills/runner.mjs                       # весь набор
node tests/skills/runner.mjs cases/1c-meta-compile # один скил
node tests/skills/runner.mjs --update-snapshots    # перегенерировать эталоны
node tests/skills/runner.mjs --runtime python      # прогнать python-версии скриптов

Прогон идет в CI на каждый push и pull request - .github/workflows/tests.yml, раннер windows-latest, потому что скриптам нужен PowerShell. Интеграционные прогоны идут там же; те из них, которым нужна установленная платформа 1С, раннер пропускает сам.

Рядом со снапшотами работают гарды инвариантов - они проверяют не вывод скилов, а согласованность самих исходников: карты типов метаданных против спецификации, диапазон версий формата, сохранение uuid при правке объекта, разброс продублированных по скилам функций.

node tests/skills/check-all.mjs                    # все гарды разом
node tests/skills/check-type-maps.mjs --list       # что с чем сверяется

Требуется Node.js 18+. Текущее состояние: 528 зеленых из 822, 66 пропущено по условиям среды. Остальные 228 - реестр незакрытой функциональности tests/skills/known-gaps.json: скрипт не знает типа объекта, операции или параметра, которые поддерживает исходный набор. Раннер использует реестр как гейт для обоих наборов сразу - падение ИЗ реестра ожидаемо, падение ВНЕ его означает регресс и роняет прогон. Подробности и порядок работы с реестром - tests/skills/README.md.

Хуки (экспериментально, по умолчанию выключены)

В каталоге hooks/ два хука Claude Code, дополняющие проверки, встроенные в сами скилы:

  • support-guard - блокирует прямую правку через Edit/Write объекта типовой конфигурации, стоящего на поддержке поставщика, и в отказе говорит, что делать вместо этого.
  • skill-suggester - при ручной работе с исходниками 1С напоминает про профильный скил: при чтении ведет на *-info, при правке - на мутатор. Не блокирует, срабатывает не чаще раза за сессию на группу.

Требуется Node.js 18+. Автоматически не подключаются: порядок ручного включения и настройки - в hooks/README.md.

История версий

Что изменилось по версиям - CHANGELOG.md.

Лицензия

MIT