mcpField
R
role-validate

role-validate

github.com/nikolay-shirokov测试与质量74153 次安装今天更新
代码仓库

关于 role-validate

用于校验 1C 角色 Rights.xml 的 PowerShell 技能,检查 XML 结构、权限、对象类型、嵌套及 RLS 限制,也可选校验角色元数据。

主要功能

  1. 01检查 XML 格式和命名空间
  2. 02校验全局标志和对象类型
  3. 03检查权限名称与嵌套对象
  4. 04校验 RLS 限制和模板
  5. 05可选检查角色元数据

适用场景

  1. 01配置载入数据库前检查角色
  2. 02查找对象类型不支持的权限
  3. 03开发期间审查角色 XML 和元数据

安装

复制下面的命令,在终端中运行。

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

安装后在 Claude Code 中输入/role-validate确认已加载。

附带文件scripts/role-validate.ps1scripts/role-validate.py

README 原文English

来自项目 README

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.

评论

支持 Markdown