AgentSkillsCN

form-validate

验证1C可管理表单(Form.xml)的结构正确性

SKILL.md
--- frontmatter
name: form-validate
description: Валидация структурной корректности управляемой формы 1С (Form.xml)
argument-hint: <FormPath>
allowed-tools:
  - Bash
  - Read
  - Glob

/form-validate — Валидатор формы

Проверяет Form.xml управляемой формы на структурные ошибки: уникальность ID, наличие companion-элементов, корректность ссылок DataPath и команд.

Использование

code
/form-validate <FormPath>

Параметры

ПараметрОбязательныйПо умолчаниюОписание
FormPathдаПуть к файлу Form.xml
MaxErrorsнет30Остановиться после N ошибок

Команда

powershell
powershell.exe -NoProfile -File .claude\skills\form-validate\scripts\form-validate.ps1 -FormPath "<путь>"

Выполняемые проверки

#ПроверкаСерьёзность
1Корневой элемент <Form>, version="2.17"ERROR / WARN
2<AutoCommandBar> присутствует, id="-1"ERROR
3Уникальность ID элементов (отдельный пул)ERROR
4Уникальность ID реквизитов (отдельный пул)ERROR
5Уникальность ID команд (отдельный пул)ERROR
6Companion-элементы (ContextMenu, ExtendedTooltip, и др.)ERROR
7DataPath → ссылается на существующий реквизитERROR
8CommandName кнопок → ссылается на существующую командуERROR
9События имеют непустые имена обработчиковERROR
10Команды имеют Action (обработчик)ERROR
11Не более одного MainAttributeERROR

Вывод

code
=== Validation: ФормаДокумента ===

[OK]    Root element: Form version=2.17
[OK]    AutoCommandBar: name='ФормаКоманднаяПанель', id=-1
[OK]    Unique element IDs: 96 elements
[OK]    Unique attribute IDs: 38 entries
[OK]    Unique command IDs: 5 entries
[OK]    Companion elements: 86 elements checked
[OK]    DataPath references: 53 paths checked
[OK]    Command references: 2 buttons checked
[OK]    Event handlers: 41 events checked
[OK]    Command actions: 5 commands checked
[OK]    MainAttribute: 1 main attribute

---
Total: 96 elements, 38 attributes, 5 commands
All checks passed.

Код возврата: 0 = все проверки пройдены, 1 = есть ошибки.

Когда использовать

  • После /form-compile: проверить корректность сгенерированной формы
  • После ручного редактирования Form.xml: убедиться что ID уникальны, companions на месте, ссылки валидны
  • При отладке: выявить ошибки в структуре формы до сборки EPF