151 added, 63 removed. Audit A to A.
- ---
- name: cfe-init
- description: Создать расширение конфигурации 1С (CFE) — scaffold XML-исходников. Используй когда нужно создать новое расширение для исправления, доработки или дополнения конфигурации
- argument-hint: <Name> [-ConfigPath <path>] [-Purpose Patch|Customization|AddOn] [-CompatibilityMode Version8_3_24]
- allowed-tools:
- - Bash
- - Read
- - Glob
- ---
-
- # /cfe-init — Создание расширения конфигурации 1С
-
+ ---
+ name: cfe-init
+ description: Создать расширение конфигурации 1С (CFE) — scaffold XML-исходников. Используй когда нужно создать новое расширение для исправления, доработки или дополнения конфигурации
+ argument-hint: <Name> [-ConfigPath <path>] [-Purpose Patch|Customization|AddOn] [-CompatibilityMode Version8_3_24]
+ allowed-tools:
+ - Bash
+ - Read
+ - Glob
+ ---
+
+ # /cfe-init — Создание расширения конфигурации 1С
+
## MCP routing
- Preferred path: use MCP `unica` tool `unica.cfe.init`; `unica` owns XML/JSON DSL work and refreshes related workspace caches after mutations.
- Do not call internal MCP/CLI adapters directly. They are hidden behind `unica` and synchronized by the orchestrator.
- - Current Python/PowerShell scripts are fallback implementation details until Rust parity is complete.
+ - Execution path: call MCP `unica` tool `unica.cfe.init`; skill-local operation scripts are not part of the workflow.
- For mutating operations, pass `dryRun: false` only when the user explicitly requested the change; otherwise keep the default dry run.
- Создаёт scaffold расширения: `Configuration.xml`, `Languages/Русский.xml`, опционально `Roles/`.
-
- ## Подготовка
-
- Если есть выгрузка базовой конфигурации, передай `-ConfigPath` — скрипт автоматически определит `CompatibilityMode` и UUID языка из базовой конфигурации.
-
+ Создаёт scaffold расширения: `Configuration.xml`, `Languages/Русский.xml`, опционально `Roles/`.
+
+ ## Подготовка
+
+ Если есть выгрузка базовой конфигурации, передай `-ConfigPath` — скрипт автоматически определит `CompatibilityMode` и UUID языка из базовой конфигурации.
+
### Авто-определение ConfigPath
Если пользователь не указал `-ConfigPath` — попробуй определить автоматически:
1. Используй `V8TR_CONFIG`, если задан, иначе `./v8project.yaml`.
2. Найди `source-set` с `type: CONFIGURATION`.
3. Используй его `path` как `-ConfigPath`.
4. Если source-set не найден — спроси путь у пользователя.
Если `v8project.yaml` не найден и `-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
- powershell.exe -NoProfile -File scripts/cfe-init.ps1 -Name "МоёРасширение"
- ```
-
- ## Примеры
-
- ```powershell
- # Расширение для 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>
- ```
-
+
+ ## Параметры
+
+ | Параметр | Описание | По умолчанию |
+ |----------|----------|--------------|
+ | `Name` | Имя расширения (обязат.) | — |
+ | `Synonym` | Синоним | = Name |
+ | `NamePrefix` | Префикс собственных объектов | = Name + "_" |
+ | `OutputDir` | Каталог для создания | `src` |
+ | `Purpose` | `Patch` (исправление) / `Customization` (доработка) / `AddOn` (дополнение) | `Customization` |
+ | `Version` | Версия расширения | — |
+ | `Vendor` | Поставщик | — |
+ | `CompatibilityMode` | Режим совместимости | `Version8_3_24` |
+ | `ConfigPath` | Путь к выгрузке базовой конфигурации (авто-определяет CompatibilityMode и Language UUID) | — |
+ | `NoRole` | Без основной роли | false |
+
+ ## MCP вызов
+
+ ```json
+ {
+ "jsonrpc": "2.0",
+ "method": "tools/call",
+ "params": {
+ "name": "unica.cfe.init",
+ "arguments": {
+ "cwd": "<workspace>",
+ "Name": "MyExtension",
+ "Synonym": "Моё расширение",
+ "OutputDir": "src/extensions/MyExtension",
+ "dryRun": false
+ }
+ }
+ }
+ ```
+
+ ## Примеры
+
+ ### Расширение для ERP с авто-совместимостью
+
+ ```json
+ {
+ "jsonrpc": "2.0",
+ "method": "tools/call",
+ "params": {
+ "name": "unica.cfe.init",
+ "arguments": {
+ "cwd": "<workspace>",
+ "Name": "Расш1",
+ "ConfigPath": "C:\\WS\\tasks\\cfsrc\\erp_8.3.24",
+ "OutputDir": "src",
+ "dryRun": false
+ }
+ }
+ }
+ ```
+
+ ### Расширение-исправление с явной совместимостью
+
+ ```json
+ {
+ "jsonrpc": "2.0",
+ "method": "tools/call",
+ "params": {
+ "name": "unica.cfe.init",
+ "arguments": {
+ "cwd": "<workspace>",
+ "Name": "Расш1",
+ "Purpose": "Patch",
+ "CompatibilityMode": "Version8_3_17",
+ "OutputDir": "src",
+ "dryRun": false
+ }
+ }
+ }
+ ```
+
+ ### Расширение-доработка с версией
+
+ ```json
+ {
+ "jsonrpc": "2.0",
+ "method": "tools/call",
+ "params": {
+ "name": "unica.cfe.init",
+ "arguments": {
+ "cwd": "<workspace>",
+ "Name": "МоёРасширение",
+ "Version": "1.0.0.1",
+ "Vendor": "Компания",
+ "OutputDir": "src",
+ "dryRun": false
+ }
+ }
+ }
+ ```
+
+ ### Без роли, с явным префиксом
+
+ ```json
+ {
+ "jsonrpc": "2.0",
+ "method": "tools/call",
+ "params": {
+ "name": "unica.cfe.init",
+ "arguments": {
+ "cwd": "<workspace>",
+ "Name": "ИсправлениеБага",
+ "NamePrefix": "ИБ_",
+ "Purpose": "Patch",
+ "NoRole": true,
+ "OutputDir": "src",
+ "dryRun": false
+ }
+ }
+ }
+ ```
+
+ ## Верификация
+
+ ```json
+ {
+ "jsonrpc": "2.0",
+ "method": "tools/call",
+ "params": {
+ "name": "unica.cfe.validate",
+ "arguments": {
+ "cwd": "<workspace>",
+ "ExtensionPath": "src/extensions/MyExtension"
+ }
+ }
+ }
+ ```