Skip to main content
skill CX Codex

cfe-init — Claude Code skill: scaffold a 1C configuration extension

The skill lays out a 1C configuration extension: Configuration.xml, a language under Languages/, and a role if you want one. Useful when you need to patch or extend a vendor configuration without editing it.

Install into Claude Code · Plugin marketplace All methods and platforms ↓
/plugin marketplace add Nikolay-Shirokov/cc-1c-skills
/plugin install 1c-skills@cc-1c-skills
Open on GitHub

What cfe-init does

The skill runs a PowerShell script, scripts/cfe-init.ps1, that writes the XML sources of a new extension. Only Name is required. Everything else is optional: Synonym, NamePrefix, OutputDir, Purpose (Patch, Customization or AddOn), Version, Vendor, CompatibilityMode, NoRole.

Pass -ConfigPath when you have an export of the base configuration. The script then pulls the compatibility mode and language from it. Without that flag the skill reads .v8-project.json from the project root, resolves the target database and takes its configSrc field. If neither is available, the extension is still created, but with a warning: the language UUID is all zeros and CompatibilityMode falls back to the default. Worth checking the output before you build.

Put the extension in its own subdirectory named after it: src\cfe\<Name>. After scaffolding, run /cfe-validate <OutputDir> -ConfigPath <ConfigPath> — the skill suggests that step itself. Its tool list is short: Bash, Read, Glob.

What it helps with

  • scaffold a 1C configuration extension from scratch
  • inherit compatibility mode and language from a base configuration export
  • create a patch, customization or add-on extension with the right Purpose
  • set an object name prefix plus version and vendor
  • generate extension sources without the main role

Example prompts for the agent

  • /cfe-init MyExtension -ConfigPath src\cf -OutputDir src\cfe\MyExtension
  • /cfe-init BugFix -Purpose Patch -NamePrefix "BF_" -NoRole
  • /cfe-init Ext1 -Purpose Patch -CompatibilityMode Version8_3_17

How to install cfe-init

1Plugin marketplace

/plugin marketplace add Nikolay-Shirokov/cc-1c-skills
/plugin install 1c-skills@cc-1c-skills

This installs the whole 1c-skills plugin with all its skills

2Skills CLI (Vercel)

npx skills add Nikolay-Shirokov/cc-1c-skills --skill cfe-init -a claude-code

3Manually: put the files in place

~/.claude/skills/cfe-init/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/cfe-init/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about cfe-init

How do I install cfe-init in Claude?

From the marketplace: run /plugin marketplace add Nikolay-Shirokov/cc-1c-skills, then /plugin install 1c-skills@cc-1c-skills. Or in one step: npx skills add Nikolay-Shirokov/cc-1c-skills --skill cfe-init -a claude-code.

What does cfe-init do?

It scaffolds a 1C configuration extension: Configuration.xml, a language in Languages/, and optionally Roles/. It works by running the PowerShell script scripts/cfe-init.ps1.

What happens if I skip -ConfigPath?

The skill tries to find the path itself through .v8-project.json and the configSrc field of the target database. If that fails, the extension is created with a warning: zero language UUID and the default CompatibilityMode.

Source text

SKILL.md · MIT
---
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С

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

## Подготовка

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

### Авто-определение 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\cfe\<Name>` | `src` |
| `Purpose` | `Patch` (исправление) / `Customization` (доработка) / `AddOn` (дополнение) | `Customization` |
| `Version` | Версия расширения | — |
| `Vendor` | Поставщик | — |
| `CompatibilityMode` | Режим совместимости; при заданном `ConfigPath` определяется по базовой конфигурации и этот параметр не нужен | `Version8_3_24` |
| `ConfigPath` | Путь к выгрузке базовой конфигурации (авто-определяет CompatibilityMode и язык) | — |
| `NoRole` | Без основной роли | false |

## Команда

```powershell
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/cfe-init.ps1" -Name "МоёРасширение" -OutputDir "src\cfe\МоёРасширение" -ConfigPath "src\cf"
```

## Примеры

```powershell
# Расширение для ERP с авто-определением совместимости из базовой конфигурации
... -Name Расш1 -ConfigPath src\cf -OutputDir src\cfe\Расш1

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

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

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

## Верификация

```
/cfe-validate <OutputDir> -ConfigPath <ConfigPath>
```

© Nikolay Shirokov · MIT · Nikolay-Shirokov/cc-1c-skills

Similar skills

SKILL.md skills catalog →

From the same set14

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor