xdto-decompile — Claude Code skill: what it does, how to install
Exports 1C XDTO packages into readable XSD schemas for editing, transferring to partners, or moving between configurations without metadata loss.
/plugin marketplace add Nikolay-Shirokov/cc-1c-skills
/plugin install 1c-skills@cc-1c-skillsWhat xdto-decompile does
This skill turns binary Ext/Package.bin files and 1C metadata objects into standard XML schemas. It accepts a package folder path, direct link to Package.bin, or the <Name>.xml metadata file. The output prints to stdout or writes to a UTF-8 with BOM file when using the -OutFile parameter.
Under the hood, it executes scripts/xdto-decompile.ps1 through powershell.exe. Metadata properties like name, synonym, and comments are placed into xs:annotation/xs:appinfo, ensuring clean reassembly via /xdto-compile. Attributes unrepresentable in standard XML Schema, such as nillable on attributes, receive an xdto: namespace prefix.
Standard 1C Configurator export strips nillable markers from attribute properties, whereas this tool keeps schemas intact. You need PowerShell available in your environment.
What it helps with
- convert binary Package.bin into an editable XSD schema
- prepare complete XML schemas for external integrations
- unpack package metadata for wide type restructuring
- retain nillable attribute markers lost by Configurator
Example prompts for the agent
- Export package metadata into schema file
bank.xsdwith/xdto-decompile. - Convert binary
Ext/Package.bininto a readable XSD schema using/xdto-decompile.
How to install xdto-decompile
1Plugin marketplace
/plugin marketplace add Nikolay-Shirokov/cc-1c-skills/plugin install 1c-skills@cc-1c-skillsThis installs the whole 1c-skills plugin with all its skills
2Skills CLI (Vercel)
npx skills add Nikolay-Shirokov/cc-1c-skills --skill xdto-decompile -a claude-code3Manually: put the files in place
~/.claude/skills/xdto-decompile/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/xdto-decompile/
1Skills CLI (Vercel)
npx skills add Nikolay-Shirokov/cc-1c-skills --skill xdto-decompile -a codex2Manually: put the files in place
.agents/skills/xdto-decompile/SKILL.mdFor all projects use ~/.agents/skills/
Manually: put the files in place
.cursor/skills/xdto-decompile/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install Nikolay-Shirokov/cc-1c-skills xdto-decompile2Manually: put the files in place
.github/skills/xdto-decompile/SKILL.mdPlatform CLI
gemini skills install https://github.com/Nikolay-Shirokov/cc-1c-skills --path .claude/skills/xdto-decompileManually: put the files in place
.devin/skills/xdto-decompile/SKILL.mdThe legacy .windsurf/skills/ path still works
Claude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about xdto-decompile
How to install xdto-decompile in Claude Code?
Run both marketplace commands in Claude Code: first /plugin marketplace add Nikolay-Shirokov/cc-1c-skills, then /plugin install 1c-skills@cc-1c-skills.
What does xdto-decompile do?
It converts 1C XDTO package metadata and binary files into standard XSD schemas that you can inspect, edit, or compile back.
How does it compare to the native Configurator export?
The default 1C Configurator export removes nillable flags from attribute properties. This script preserves them with an xdto: prefix while keeping the schema fully valid.
Source text
SKILL.md · MIT
---
name: xdto-decompile
description: Выгрузка пакета XDTO 1С в XML-схему (XSD). Используй когда нужно получить схему существующего пакета — чтобы переработать её целиком, отдать контрагенту или перенести пакет в другую конфигурацию
argument-hint: <PackagePath> [-OutFile <файл.xsd>]
allowed-tools:
- Bash
- Read
- Glob
---
# /xdto-decompile — Выгрузка пакета XDTO в XML-схему
Превращает пакет XDTO в обычную XML-схему — читаемую и редактируемую.
Заменяет чтение `Ext/Package.bin` напрямую.
## Параметры
| Параметр | Обязательный | Описание |
|----------|--------------|----------|
| `PackagePath` | да | Каталог пакета, путь к `Ext/Package.bin` или к `<Имя>.xml` объекта метаданных. Псевдоним — `-Path` |
| `OutFile` | нет | Записать схему в файл (UTF-8 с BOM). Без него — вывод в stdout |
```powershell
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/xdto-decompile.ps1" -PackagePath "<путь>"
```
Примеры:
```powershell
... -PackagePath src/XDTOPackages/ОбменСБанком
... -PackagePath src/XDTOPackages/ОбменСБанком -OutFile bank.xsd
```
## Переработка схемы целиком
`/xdto-decompile` → правка XSD → `/xdto-compile -Force` возвращает пакет без потерь,
включая имя, синоним и комментарий объекта метаданных — они выгружаются
в `xs:annotation/xs:appinfo`.
Этот же путь даёт версионную копию пакета: смени в схеме `targetNamespace` и собери
её с `-Name` нового пакета — имя и синоним задаются флагами `/xdto-compile`, внутри
схемы их править не нужно. Меняя пространство имён, поправь **и объявление `xmlns`
с тем же URI**: внутренние ссылки пользуются им как префиксом. Заменять все вхождения
строки нельзя — пострадает импорт пространства имён, для которого старый URI является
префиксом (`urn:пример:обмен` и `urn:пример:обмен:legacy`).
Этот путь нужен, когда схему меняют широко или сначала надо разобраться, как она
устроена. Чтобы поправить одно свойство, схему целиком читать не нужно — `/xdto-edit`.
Если нужна не схема, а сводка «что присвоить и что обязательно», — `/xdto-info`.
В схеме могут встретиться атрибуты с префиксом `xdto:` — так записано то, что
XML Schema выразить не может (например `nillable` у атрибута). Схема при этом остаётся
валидной, валидаторы такие атрибуты игнорируют. Трогать их обычно не нужно; смысл
каждого описан в `xsd-reference.md` навыка `/xdto-compile`.
## Передача схемы наружу
Полученную XSD можно отдавать контрагенту как есть — она валидна и не теряет
данных пакета. Штатная команда «Экспорт XML-схемы» в Конфигураторе для этого
хуже: она теряет `nillable` у свойств-атрибутов.
© Nikolay Shirokov · MIT · Nikolay-Shirokov/cc-1c-skills