framework_eng/skills/bsl-practices/metadata-object-design/SKILL.md
Use when creating or reviewing 1C metadata objects: catalogs, documents, registers, reports, roles, subsystems, scheduled jobs
npx skillsauth add steelmorgan/1c-agent-based-dev-framework metadata-object-designInstall 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.
This skill complements XML specifications and BSP references. XML specs describe the file format; this checklist describes application-level invariants that must not be missed when creating or reviewing objects in a real 1C configuration.
Before creating an object, inspect current metadata via LSP/get_metadata_structure or the source dump. If the object belongs to a vendor configuration, do not modify the vendor object without an explicit decision: isolate new logic in your own modules, subsystems, and extensions.
Организация as an attribute/dimension, access-control hooks are added.ДатыЗапретаИзменения mechanisms are connected.ПредставлениеОбъекта is singular; ПредставлениеСписка is plural when it differs from the synonym.Наименование length is not specified, use the project default 150.Код has no business meaning, set code length to 0; otherwise length and format must follow business semantics.ПроверкаЗаполнения; do not replace platform fill checking with manual code without a reason.СвязиПараметровВыбора and ПараметрыВыбора are filled when the value depends on other attributes or is limited by a filter.ПредставлениеОбъекта is singular; ПредставлениеСписка is plural when it differs from the synonym.ОперативноеПроведение is disabled by default unless explicitly required.ЗапретНезаполненныхЗначений; do not enable it where an empty value is valid by the model.Организация or another access key have RLS hooks: restricted object list, ПриЗаполненииОграниченияДоступа, defined types for access-key owners.ВариантыОтчетов when the configuration uses this subsystem.ХранилищеВариантов configured.ВариантыОтчетов.Основной; the variant name should be business-readable.ПросмотрОтчета<ReportName> is created.РАЗРЕШЕННЫЕ and project access restrictions).Подсистема<SubsystemName> roles.ИнтерактивноеУдаление is removed from ПолныеПрава for new objects when the project standard forbids interactive deletion.Чтение<FeatureName>, ДобавлениеИзменение<FeatureName>, ПросмотрОтчета<ReportName>, ИспользованиеОбработки<DataProcessorName>, Подсистема<SubsystemName>.Пользователи.РолиДоступны(...)) over scattered point checks when the project infrastructure supports it.ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.<JobName>) when BSP is available.Использование is disabled by default unless the job must start immediately after delivery.ssl-patterns - exact BSP modules and hooks.form-patterns and form-visual-requirements - forms and UX.query-patterns and query-optimize - object and report queries.api-design - exported methods in object/manager/common modules.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.