framework/rules/no-manual-xml-edit/SKILL.md
При правке XML/MXL 1С использовать xml-generation
npx skillsauth add steelmorgan/1c-agent-based-dev-framework no-manual-xml-editInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Триггер: любая попытка Edit/Write/sed/awk/Bash по файлу
*.mxlили*.xmlв 1С-каталогах. При срабатывании — применить навыкxml-generation(framework/skills/tool-usage/platform-data/xml-generation/SKILL.md).
xmlgen.xmlgen validate.Почему: метаданные 1С имеют строгую схему + неочевидные runtime-зависимости. Прямая правка регулярно даёт non-canonical schema, которая проходит сборку и LSP, но ломает runtime UI. Прецедент: OC-22444 F-01 — 6 итераций Developer-Code не смогли стабилизировать форму.
*.mxl (любой).*.xml внутри **/Ext/, Configuration.xml, или 1С root-папок: Catalogs/, Documents/, *Registers/, Roles/, Subsystems/, CommonModules/, ChartsOf*, Reports/, DataProcessors/, Enums/, Constants/, ExchangePlans/, Tasks/, BusinessProcesses/, HTTPServices/, WebServices/, EventSubscriptions/, ScheduledJobs/, DefinedTypes/, DocumentJournals/ и т.п.pom.xml, build.gradle.kts, settings.gradle.kts — build descriptors..gitignore, .editorconfig, CI/CD YAML/XML.В Claude Code хук блокирует автоматически. Во всех остальных средах — самопроверка обязательна перед каждым Edit/Write/apply_patch/sed по пути с расширением .xml или .mxl:
python3 tools/hooks/block-direct-xml-edit.py --check "<path>" --tool Edit
2 → путь относится к 1С metadata, правку не выполнять. Читать stderr — там подсказка по нужной команде xml-gen.0 → не 1С metadata, правка разрешена.Часть возможностей платформы (условное оформление форм, отборы динамических списков, раскраска ячеек MXL по условию) не хранится в XML и реализуется программно — это дизайн, не дефект xml-gen; не искать ручной XML-обход. Перечень и образцы — в навыке
xml-generation.
Если xml-gen явно не поддерживает нужную операцию — зафиксировать факт ручной правки (MANUAL_XML_EDIT: с файлом, операцией, причиной, методом валидации) в {role}-context.md и уведомить оркестратора (MANUAL_XML_EDIT_REPORTED:) в orchestrator-context.md. Формат записи — в навыке xml-generation.
depends_on:
development
1C server maintenance webhooks: container restart and external component cache cleanup
development
Interactive DAP debugging of a single BSL procedure
tools
Rules for using RLM tools for project search and navigation in 1C/BSL
development
Creates web applications and routes on Winow (a web server on OneScript and Autumn). Use when working with a web server on OneScript, routing, or Winow controllers.