Только токены дизайн-системы
jinx-ui/use-tokens@1.2.0Цвета, радиусы, тени и шрифты задавай только через CSS-токены var(--jx-*). Значения #hex, rgb(), hsl() и inline-стили с цветами запрещены: темы и режимы оформления переключаются токенами.
Правила лежат в репозитории как Markdown с frontmatter и собираются в наборы. Набор наследует правила родителей, правило с тем же идентификатором переопределяет родительское, extends уточняет его. Резолвер отдаёт эффективный набор под конкретный тип задачи: на вкладке меняется не оформление, а сам состав правил.
У этих правил заполнен task_types: на других вкладках резолвер их не отдаёт.
jinx-ui/use-tokens@1.2.0Цвета, радиусы, тени и шрифты задавай только через CSS-токены var(--jx-*). Значения #hex, rgb(), hsl() и inline-стили с цветами запрещены: темы и режимы оформления переключаются токенами.
jinx-ui/class-prefix@1.1.0Все классы Jinx UI начинаются с jx-. Не добавляй компонентам собственные CSS-классы и утилиты других фреймворков. Раскладку между компонентами задавай обёрткой с flex или grid без цветов.
org/refactor-keeps-behavior@1.0.0Рефакторинг оставляет наблюдаемое поведение и публичный API прежними: тесты проходят без правок, иначе это уже изменение поведения и оно идёт отдельным коммитом. Переименования и переносы файлов не смешивай в одном коммите с правкой логики.
jinx-ui/controlled-state@1.0.0Состояние компонентов держи снаружи через пары value/onValueChange и open/onOpenChange. Неуправляемый режим включай только через defaultValue и defaultOpen; внутри библиотеки оба режима реализует хук useControllableState.
Правила без привязки к типу задачи входят в набор на любой вкладке.
jinx-ui/no-inner-html@1.0.0Не используй innerHTML и dangerouslySetInnerHTML. Текст и разметку передавай через children и пропсы типа ReactNode; пользовательский ввод считай недоверенным.
org/ask-before-publish@1.1.0Не делай push, публикацию пакетов, деплой, отправку сообщений и любые другие внешние действия без явной просьбы пользователя. Коммиты и переключение веток — тоже только по просьбе: локальный коммит допустим, когда пользователь попросил сохранить работу.
jinx-ui/no-deprecated@1.0.0Компоненты и пропсы с пометкой DEPRECATED в новом коде не используй. Бери замену, которая указана в пометке, а если замены нет, скажи об этом вместо обхода.
org/memory-in-obsidian@1.0.0Если пользователь ссылается на прошлую работу, решение или «что мы делали раньше», сначала найди это в хранилище Obsidian через MCP: фильтруй по проекту и дате во frontmatter и читай только нужные заметки. Заметки о сессиях не пиши сам: их экспортирует планировщик.
Один источник, четыре цели. CI падает, если файлы разошлись с реестром или если от удалённого правила остался файл.
claudeCLAUDE.md и .claude/rules/*.md с путямиagentsAGENTS.mdcursor.cursor/rules/*.mdc с globs и alwaysApplycopilot.github/copilot-instructions.md и .github/instructions/*.instructions.md с applyTonpm run rules:resolve -- jinx-ui --task refactor