Files
cc-1c-skills/.claude/skills/cfe-init/SKILL.md
T
Nick ShirokovandClaude Opus 4.6 6f32e18e37 improve(skills): auto-resolve ConfigPath, auto-register forms, handle LF line endings
- cfe-init, cfe-borrow SKILL.md: auto-resolve ConfigPath from .v8-project.json configSrc
- form-compile: auto-register <Form> in parent ChildObjects from OutputPath convention
- form-compile SKILL.md: document new workflow (form-add no longer required first)
- cfe-borrow: handle LF line endings in OuterXml split (-split "\r?\n")

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 17:22:05 +03:00

4.0 KiB

name, description, argument-hint, allowed-tools
name description argument-hint allowed-tools
cfe-init Создать расширение конфигурации 1С (CFE) — scaffold XML-исходников. Используй когда нужно создать новое расширение для исправления, доработки или дополнения конфигурации <Name> [-ConfigPath <path>] [-Purpose Patch|Customization|AddOn] [-CompatibilityMode Version8_3_24]
Bash
Read
Glob

/cfe-init — Создание расширения конфигурации 1С

Создаёт scaffold расширения: Configuration.xml, Languages/Русский.xml, опционально Roles/.

Подготовка

Если есть выгрузка базовой конфигурации, передай -ConfigPath — скрипт автоматически определит CompatibilityMode и UUID языка из базовой конфигурации.

Авто-определение ConfigPath

Если пользователь не указал -ConfigPath — попробуй определить автоматически:

  1. Прочитай .v8-project.json из корня проекта
  2. Разреши целевую базу (по имени, ветке или default — алгоритм из /db-list)
  3. Если у базы есть поле configSrc — используй как -ConfigPath
  4. Если configSrc нет — спроси у пользователя

Если .v8-project.json не найден и -ConfigPath не задан — расширение создастся с предупреждением (UUID языка = нули, CompatibilityMode по умолчанию).

Параметры

Параметр Описание По умолчанию
Name Имя расширения (обязат.)
Synonym Синоним = Name
NamePrefix Префикс собственных объектов = Name + "_"
OutputDir Каталог для создания src
Purpose Patch (исправление) / Customization (доработка) / AddOn (дополнение) Customization
Version Версия расширения
Vendor Поставщик
CompatibilityMode Режим совместимости Version8_3_24
ConfigPath Путь к выгрузке базовой конфигурации (авто-определяет CompatibilityMode и Language UUID)
NoRole Без основной роли false

Команда

powershell.exe -NoProfile -File .claude/skills/cfe-init/scripts/cfe-init.ps1 -Name "МоёРасширение"

Что создаётся

<OutputDir>/
├── Configuration.xml         # Свойства расширения
├── Languages/
│   └── Русский.xml           # Язык (заимствованный)
└── Roles/                    # Если не -NoRole
    └── <Prefix>ОсновнаяРоль.xml

Примеры

# Расширение для ERP с авто-определением совместимости из базовой конфигурации
... -Name Расш1 -ConfigPath C:\WS\tasks\cfsrc\erp_8.3.24 -OutputDir src

# Расширение-исправление с явным режимом совместимости
... -Name Расш1 -Purpose Patch -CompatibilityMode Version8_3_17 -OutputDir src

# Расширение-доработка с версией
... -Name МоёРасширение -Version "1.0.0.1" -Vendor "Компания" -OutputDir src

# Без роли, с явным префиксом
... -Name ИсправлениеБага -NamePrefix "ИБ_" -Purpose Patch -NoRole -OutputDir src

Верификация

/cfe-validate <OutputDir>