1c-cfe-init · diff

git:20260428.73f4551 to git:20260828.2b87e3e

15 added, 15 removed. Audit A to A.

---
name: 1c-cfe-init
- description: Создать расширение конфигурации 1С (CFE) — scaffold XML-исходников. Используй когда нужно создать новое расширение для исправления, доработки или дополнения конфигурации
+ 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С
+ # /cfe-init - Создание расширения конфигурации 1С
- Создаёт scaffold расширения: `Configuration.xml`, `Languages/Русский.xml`, опционально `Roles/`.
+ Создает scaffold расширения: `Configuration.xml`, `Languages/Русский.xml`, опционально `Roles/`.
## Подготовка
- Если есть выгрузка базовой конфигурации, передай `-ConfigPath` — скрипт автоматически определит `CompatibilityMode` и UUID языка из базовой конфигурации.
+ Если есть выгрузка базовой конфигурации, передай `-ConfigPath` - скрипт автоматически определит `CompatibilityMode` и UUID языка из базовой конфигурации.
### Авто-определение ConfigPath
- Если пользователь не указал `-ConfigPath` — попробуй определить автоматически:
+ Если пользователь не указал `-ConfigPath` - попробуй определить автоматически:
1. Прочитай `.v8-project.json` из корня проекта
- 2. Разреши целевую базу (по имени, ветке или `default` — алгоритм из `/db-list`)
- 3. Если у базы есть поле `configSrc` — используй как `-ConfigPath`
- 4. Если `configSrc` нет — спроси у пользователя
+ 2. Разреши целевую базу (по имени, ветке или `default` - алгоритм из `/db-list`)
+ 3. Если у базы есть поле `configSrc` - используй как `-ConfigPath`
+ 4. Если `configSrc` нет - спроси у пользователя
- Если `.v8-project.json` не найден и `-ConfigPath` не задан — расширение создастся с предупреждением (UUID языка = нули, CompatibilityMode по умолчанию).
+ Если `.v8-project.json` не найден и `-ConfigPath` не задан - расширение создастся с предупреждением (UUID языка = нули, CompatibilityMode по умолчанию).
## Параметры
| Параметр | Описание | По умолчанию |
|----------|----------|--------------|
- | `Name` | Имя расширения (обязат.) | — |
+ | `Name` | Имя расширения (обязат.) | - |
| `Synonym` | Синоним | = Name |
| `NamePrefix` | Префикс собственных объектов | = Name + "_" |
| `OutputDir` | Каталог для создания | `src` |
| `Purpose` | `Patch` (исправление) / `Customization` (доработка) / `AddOn` (дополнение) | `Customization` |
- | `Version` | Версия расширения | — |
- | `Vendor` | Поставщик | — |
+ | `Version` | Версия расширения | - |
+ | `Vendor` | Поставщик | - |
| `CompatibilityMode` | Режим совместимости | `Version8_3_24` |
- | `ConfigPath` | Путь к выгрузке базовой конфигурации (авто-определяет CompatibilityMode и Language UUID) | — |
+ | `ConfigPath` | Путь к выгрузке базовой конфигурации (авто-определяет CompatibilityMode и Language UUID) | - |
| `NoRole` | Без основной роли | false |
## Команда
```powershell
- powershell.exe -NoProfile -File skills/1c-cfe-init/scripts/cfe-init.ps1 -Name "МоёРасширение"
+ powershell.exe -NoProfile -File skills/1c-cfe-init/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 МоеРасширение -Version "1.0.0.1" -Vendor "Компания" -OutputDir src
# Без роли, с явным префиксом
... -Name ИсправлениеБага -NamePrefix "ИБ_" -Purpose Patch -NoRole -OutputDir src
```
## Верификация
```
/cfe-validate <OutputDir>
```