mcpField
R
role-validate

role-validate

github.com/nikolay-shirokovTesting & quality74153 installsUpdated today
Repository

About role-validate

A PowerShell skill that validates the Rights.xml file for a 1C role. It checks XML structure, rights, object types, nesting and RLS constraints, with optional role metadata checks.

Key features

  1. 01Check XML format and namespace
  2. 02Validate global flags and object types
  3. 03Check rights names and nested objects
  4. 04Validate RLS constraints and templates
  5. 05Optionally check role metadata

Use cases

  1. 01Check a role before loading configuration into a database
  2. 02Find invalid rights for object types
  3. 03Review role XML and metadata during development

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/nikolay-shirokov/cc-1c-skills --skill role-validate

After installing, type/role-validatein Claude Code to confirm it loaded.

Bundled filesscripts/role-validate.ps1scripts/role-validate.py

Details

From the project README

/role-validate — валидация роли 1С

Проверяет корректность Rights.xml роли: формат XML, namespace, глобальные флаги, типы объектов, имена прав, RLS-ограничения, шаблоны. Опционально проверяет метаданные роли (UUID, имя, синоним).

Параметры

ПараметрОбяз.Умолч.Описание
RightsPathда—Путь к роли (директория или Rights.xml)
Detailedнет—Подробный вывод (все проверки, включая успешные)
MaxErrorsнет30Макс. ошибок до остановки (по умолчанию 30)
OutFileнет—Записать результат в файл (UTF-8 BOM)

Команда

powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/role-validate.ps1" -RightsPath "Roles/МояРоль"

Что считается ошибкой

Ошибка (код возврата 1), а не предупреждение:

  • тип объекта, не имеющий прав в ролях (Enum, CommonModule, CommonPicture, ScheduledJob и т.п.) — конфигурация с блоком прав на перечисление не загружается в базу, конфигуратор зависает без сообщений;
  • незнакомый тип объекта (опечатка);
  • имя права, которого у этого типа нет;
  • вид вложенности, невозможный у данного типа, и недопустимое право у вложенного объекта;
  • право на сервис целиком (HTTPService.Имя и т.п.) — платформа проверяет вложенный объект (метод шаблона URL, операцию, канал), а роль с правом на корень молча не работает: маршруты отвечают 403 Недостаточно прав.

Полные списки «тип → права» и виды вложенности — в role-compile/dsl-reference.md.

Comments

Markdown supported