Skip to main content
skill CX Codex

erf-dump — Claude Code skill: what it does, how to install

Dumps 1C ERF external report files into XML source trees. It keeps reference types intact during the decompilation process.

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 erf-dump does

The skill deconstructs 1C ERF report files into structured XML source files. By default, it places all generated files into the src directory. The operation is handled by running the epf-dump.ps1 PowerShell script with database connection arguments and binary paths.

Before running the dump, the skill inspects .v8-project.json at the root of the project. It resolves connection details by checking the current Git branch against configured databases or falls back to the default profile. It also identifies the v8path binary path.

Executing this command without an infobase causes a direct failure because reference types like CatalogRef get irreversibly converted into text strings. If the database is missing from configuration, you must register it via /db-list add.

What it helps with

  • Dump 1C ERF reports into XML files for version tracking
  • Decompile external report files into the src directory
  • Preserve metadata reference types during external report extraction

Example prompts for the agent

  • /erf-dump build/Report.erf src/reports
  • /erf-dump reports/Sales.erf
  • Decompile build/Report.erf into the src directory

How to install erf-dump

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 erf-dump -a claude-code

3Manually: put the files in place

~/.claude/skills/erf-dump/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/erf-dump/

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

Questions about erf-dump

How to install erf-dump in Claude Code?

Run /plugin marketplace add Nikolay-Shirokov/cc-1c-skills and then run /plugin install 1c-skills@cc-1c-skills.

What does erf-dump do?

It converts 1C ERF report files into XML sources using an underlying PowerShell automation script.

Why is an infobase required for erf-dump?

Without a configured database containing the metadata schema, reference types permanently degrade into plain strings.

Source text

SKILL.md · MIT
---
name: erf-dump
description: Разобрать ERF-файл отчёта 1С в XML-исходники. Используй когда пользователь просит разобрать, декомпилировать отчёт, получить исходники из ERF файла
argument-hint: <ErfFile>
allowed-tools:
  - Bash
  - Read
  - Glob
  - Grep
---

# /erf-dump — Разборка отчёта

## Usage

```
/erf-dump <ErfFile> [OutDir]
```

| Параметр | Обязательный | По умолчанию | Описание                            |
|----------|:------------:|--------------|-------------------------------------|
| ErfFile  | да           | —            | Путь к ERF-файлу                    |
| OutDir   | нет          | `src`        | Каталог для выгрузки исходников     |

## Параметры подключения (обязательно)

Для разборки EPF/ERF требуется информационная база с конфигурацией. Без базы ссылочные типы безвозвратно теряются.

1. Прочитай `.v8-project.json` из корня проекта и разреши базу:
2. Если пользователь указал параметры подключения (путь, сервер) — используй напрямую
3. Если указал базу по имени — ищи по id / alias / name в `.v8-project.json`
4. Если не указал — сопоставь текущую ветку Git с `databases[].branches`
5. Если ветка не совпала — используй `default`
6. Если `.v8-project.json` нет или база не найдена — **сообщи пользователю об ошибке**. Для dump база обязательна: в пустой базе ссылочные типы (CatalogRef, DocumentRef и т.д.) безвозвратно сбрасываются в строки. Предложи указать базу или зарегистрировать через `/db-list add`.

Платформа — `v8path` найденной записи базы, иначе корневой `v8path`. Не задан ни там, ни там — `-V8Path` не передавай.
Если использованная база не зарегистрирована — после выполнения предложи добавить через `/db-list add`.

## Команда

Используй общий скрипт из epf-dump:

```powershell
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/../epf-dump/scripts/epf-dump.ps1" <параметры>
```

### Параметры скрипта

| Параметр | Обязательный | Описание |
|----------|:------------:|----------|
| `-V8Path <путь>` | нет | Каталог bin платформы (или полный путь к 1cv8.exe) |
| `-InfoBasePath <путь>` | * | Файловая база |
| `-InfoBaseServer <сервер>` | * | Сервер 1С (для серверной базы) |
| `-InfoBaseRef <имя>` | * | Имя базы на сервере |
| `-UserName <имя>` | нет | Имя пользователя |
| `-Password <пароль>` | нет | Пароль |
| `-InputFile <путь>` | да | Путь к ERF-файлу |
| `-OutputDir <путь>` | да | Каталог для выгрузки исходников |
| `-Format <формат>` | нет | `Hierarchical` (по умолч.) / `Plain` |
| `-AdditionalV8Arguments <список>` | нет | Доп. аргументы запуска `1cv8.exe` через запятую, напр. `/UseHwLicenses+` |
| `-AdditionalIbcmdArguments <список>` | нет | Доп. аргументы `ibcmd` через запятую, в форме `--ключ=значение` |

> `*` — обязательно хотя бы одно подключение. Без базы скрипт завершится с ошибкой (dump в пустой базе безвозвратно теряет ссылочные типы)

## Примеры

```powershell
# Разборка отчёта (файловая база)
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/../epf-dump/scripts/epf-dump.ps1" -InfoBasePath "C:\Bases\MyDB" -InputFile "build/МойОтчёт.erf" -OutputDir "src"

# Серверная база
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/../epf-dump/scripts/epf-dump.ps1" -InfoBaseServer "srv01" -InfoBaseRef "MyDB" -UserName "Admin" -Password "secret" -InputFile "build/МойОтчёт.erf" -OutputDir "src"
```

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

Topics and platforms

SKILL.md skills catalog →

From the same set59

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