/cfe-init — Создание расширения конфигурации 1С
MCP routing
- Канонической операции создания расширения на поверхности нет. Словарь
unica.applyправит существующий узел; корень расширения с егоNamePrefix,ConfigurationExtensionPurposeи связью с родителем ни одна операция не заводит. - Не зови внутренние адаптеры напрямую: они спрятаны за MCP
unica. - Готовность проверяет
unica.check, результат читаетunica.viewпо адресу.
Порядок тот же, что у новой конфигурации: сформировать корень расширения
файловыми средствами по формату ниже, объявить набор вида EXTENSION в
v8project.yaml, проверить unica.check {} и прочитать
unica.view {at: "<расширение>:Configuration"}.
Заимствование объектов у родителя — отдельный предмет: канонической операции тоже нет, разбор и план держит отдельная архитектурная записка Unica.
Если нужна именно операция создания расширения — это пробел контракта Unica MCP; сообщи о нём, а не подменяй его правкой родительской конфигурации.
Примеры
Расширение для 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": true,
"OutputDir": "src"
}
Верификация
Проверка расширения — unica.check на корне набора-расширения (ext — имя набора типа EXTENSION в v8project.yaml); валидатор cfe выбирается по виду набора, вердикт в data.status.
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "unica.check",
"arguments": {
"at": "ext:Configuration"
}
}
}