Claude Code Skills for 1C:Enterprise
Набор скилов, правил и команд для Claude Code: агент правит 1С по формату платформы, а не текстовым поиском по файлам.
Скилы дают агенту готовые операции над исходниками: собрать объект метаданных, форму, роль, схему компоновки, расширение, внешнюю обработку - и разобрать их обратно. Правила задают, как он это делает: стандарты 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
No comments yet
Be the first to share your take.