/form-validate - валидация управляемой формы 1С
SkillAI & modelsThis skill validates 1C managed forms. Once added, your AI can check a form for correctness right after creating or modifying it, so mistakes are caught before the form goes further. When a BaseForm is present, it also automatically verifies callType and extension IDs.
Available today. Use it from your connected AI after setup.
No other account needed.
Add the skill, then ask your AI to validate a form after it creates or edits one. The callType and extension ID checks run automatically whenever a BaseForm is involved.
Then ask your AI: use the /form-validate - валидация управляемой формы 1С skill
What your AI can do with it
- Validate 1C managed forms for correctness
- Check forms right after they are created or modified
- Automatically verify callType when a BaseForm is present
- Automatically check extension IDs when a BaseForm is present
What this skill tells your AI
The instructions your AI receives, as published by desko77/claude-code-skills-1c in skills/1c-form-validate/SKILL.md and read by ahel’s review.
Проверяет Form.xml на структурные ошибки: уникальность ID, наличие companion-элементов, корректность ссылок DataPath и команд.
Параметры
| Параметр | Обяз. | Умолч. | Описание |
|---|---|---|---|
| FormPath | да | - | Путь к файлу Form.xml |
| Detailed | нет | - | Подробный вывод (все проверки, включая успешные) |
| MaxErrors | нет | 30 | Остановиться после N ошибок |
| IndexPath | нет | - | Индекс конфигурации от 1c-config-index: включает сверку путей данных с объектом-владельцем |
Команда
powershell.exe -NoProfile -File skills/1c-form-validate/scripts/form-validate.ps1 -FormPath "Catalogs/Номенклатура/Forms/ФормаЭлемента"
powershell.exe -NoProfile -File skills/1c-form-validate/scripts/form-validate.ps1 -FormPath "src/МояОбработка/Forms/Форма/Ext/Form.xml"
Сверка путей данных с объектом-владельцем (проверка 13)
Проверка 5 убеждается, что КОРЕНЬ пути данных - существующий реквизит формы. Дальше путь не
разбирался вовсе: Объект.ИНН при отсутствующем ИНН у справочника проходил молча, потому что
валидатор ничего не знал про конфигурацию.
С -IndexPath он узнает. Владелец определяется по ТИПУ реквизита формы (cfg:CatalogObject.Контрагенты),
а не по пути файла: так работает и для формы записи регистра, и для формы, лежащей не там, где
принято. Дальше сверяются вторая часть пути (реквизит, табличная часть, измерение, ресурс,
стандартный реквизит) и третья (колонка табличной части).
Чего проверка НЕ делает намеренно:
- реквизит формы составного типа пропускается - путь может вести в любой из типов;
- реквизит типа
DynamicListилиValueTableпропускается: его состав задается запросом или колонками формы, а не метаданными; - объект без блока
StandardAttributesпропускается целиком, иначе любойОбъект.Codeбыл бы объявлен несуществующим; - дальше третьей части путь не разбирается - навигация по ссылке потребовала бы разрешать типы цепочкой.
Тяжесть - предупреждение. Проверка новая и кросс-объектная, а ложное срабатывание в валидаторе дороже пропуска: тот, кто однажды получил ложную ошибку, отключает проверку целиком.
Стандартные реквизиты в путях данных пишутся внутренними английскими именами (Объект.Description,
Объект.Code, Запись.Period) - индекс отдает их ровно в таком виде, потому что берет из блока
StandardAttributes самой выгрузки.
python skills/1c-config-index/scripts/config-index.py -ConfigPath src -OutFile .cache/index.json
python skills/1c-form-validate/scripts/form-validate.py -FormPath src/Catalogs/Контрагенты/Forms/ФормаЭлемента -IndexPath .cache/index.json
Signals
- GitHub stars
- 61
- Forks
- 14
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
x-1c-form-validate- Source
- github.com/desko77/claude-code-skills-1c