Навыки ckm:design-system
📦

ckm:design-system

Низкий риск ⚙️ Внешние команды📁 Доступ к файловой системе🌐 Доступ к сети🔑 Переменные окружения⚡ Содержит скрипты

Генерируйте токены дизайна, проверяйте их использование и создавайте фирменные презентации

Дизайн-системы часто теряют целостность, когда токены непоследовательно применяются на уровнях примитивов, семантики и компонентов. Этот навык генерирует CSS-переменные из JSON-определений токенов, проверяет использование токенов в коде и создает соответствующие бренду слайд-презентации с интеграцией Chart.js.

Поддерживает: Claude Codex Code(CC)
🥉 72 Бронза
1

Скачать ZIP навыка

2

Загрузить в Claude

Перейдите в Settings → Capabilities → Skills → Upload skill

3

Включите и начните использовать

Протестировать

Использование «ckm:design-system». Сгенерируй CSS-токены дизайна из моего файла tokens.json и создай конфиг Tailwind для моего Next.js-проекта.

Ожидаемый результат:

  • CSS-вывод с трехслойной структурой токенов, организованной в блоки :root с примитивами, семантическими токенами и компонентными токенами
  • Файл конфигурации Tailwind с соответствиями цветов, ссылающимися на CSS-переменные для использования в tailwind.config.js

Использование «ckm:design-system». Создай 5-слайдовый питч-дек для финтех-стартапа. Включи график доходов.

Ожидаемый результат:

  • HTML-файл с фирменной слайд-декой, включающей титульный слайд, проблему, решение с карточками, столбчатую диаграмму роста доходов и CTA-слайды
  • CSS-ссылки на токены дизайна для всех цветов, шрифтов и отступов для обеспечения соответствия бренду

Использование «ckm:design-system». Найди лучший тип графика для отображения quarterly роста доходов по четырем продуктовым линейкам.

Ожидаемый результат:

  • Рекомендация по графику: группированная столбчатая диаграмма для сравнения нескольких продуктовых линеек по кварталам
  • Контекстные рекомендации о том, когда использовать, когда избегать, и замечания по реализации в Chart.js

Аудит безопасности

Низкий риск
v1 • 5/26/2026

Static analysis flagged 561 potential issues (risk score 100/100), but AI evaluation confirms nearly all are false positives. Over 400 'Weak cryptographic algorithm' detections are hex color codes in design token CSV data and CSS examples (e.g. #2563EB). Over 150 'Shell backtick execution' detections are shell command examples in Markdown documentation and legitimate build tool invocations. The only true positive is subprocess.run in slide-token-validator.py which delegates to an internal validation script with low risk. The skill is a legitimate design system toolkit with no malicious intent, no credential exfiltration, and no command injection vulnerabilities.

26
Просканировано файлов
4,805
Проанализировано строк
14
находки
1
Всего аудитов
Проблемы низкого риска (9)
Hex color values in design token data flagged as cryptographic algorithms
FALSE POSITIVE: Over 400 'Weak cryptographic algorithm' detections. The static analyzer matched hex color codes (e.g. #2563EB, #F59E0B, #0D0D0D) in CSV design data files and CSS documentation examples. These are design token color values, not cryptographic material. Design system data and CSS documentation legitimately contain hex color codes for brand colors, UI colors, and CSS examples.
Shell command examples in Markdown documentation
FALSE POSITIVE: Over 150 'Ruby/shell backtick execution' detections in Markdown reference files. These are code examples showing users how to run commands like 'node scripts/generate-tokens.cjs' or 'python scripts/search-slides.py'. They are documentation, not executable code being injected at runtime. No dynamic command construction from user input.
Hardcoded image URLs in fetch-background.py
FALSE POSITIVE: Curated Pexels stock photo URLs hardcoded in fetch-background.py. These are pre-selected, free-to-use images for slide backgrounds. URLs point to images.pexels.com, a legitimate stock photography platform. No credential exfiltration or malicious network activity.
subprocess.run delegation in slide-token-validator.py
TRUE POSITIVE (low risk): Script uses subprocess.run to delegate validation to html-token-validator.py with sys.argv[1:] forwarded as arguments. This is a standard wrapper pattern. Risk is low because it only calls a known internal validator script.
Path traversal sequence in generate-slide.py
FALSE POSITIVE: The string '../../../assets/design-tokens.css' on line 632 is a computed relative path from the slide output directory to the shared design tokens CSS file. This is a hardcoded constant, not user-controlled input. No path traversal vulnerability exists.
Standard filesystem operations in build and validation scripts
FALSE POSITIVE: Node.js fs operations detected in embed-tokens.cjs, generate-tokens.cjs, and validate-tokens.cjs. These are standard file I/O operations for reading design token files, writing CSS output, and scanning codebases for token compliance. All operations are local to the project directory.
Chart.js CDN URL in SKILL.md
FALSE POSITIVE: Hardcoded URL 'https://cdn.jsdelivr.net/npm/chart.js@4.4.1/...' in SKILL.md line 190. This is a legitimate CDN URL for the Chart.js library used in slide HTML generation. It is a static reference, not dynamically constructed.
Dynamic import pattern in search-slides.py
FALSE POSITIVE: 'Dynamic import() expression' detected at line 10. This is actually a standard Python 'from slide_search_core import ...' statement. The static analyzer misidentified the Python import syntax as a dynamic JavaScript import expression.
Heuristic dangerous combination warning
FALSE POSITIVE: The heuristic analyzer flagged a 'dangerous combination' of code execution, network, and credential access across the codebase. Evaluation confirms all operations are legitimate: subprocess calls run internal build tools, network requests go to stock photo CDNs and Chart.js CDN, and 'credential' matches are false positives on CSV config lookups and hardcoded hex colors. No data exfiltration path exists.

Факторы риска

⚙️ Внешние команды (201)
references/component-specs.md:40-46 references/component-specs.md:46-83 references/component-specs.md:83-89 references/component-specs.md:89-106 references/component-specs.md:106-119 references/component-specs.md:119-168 references/component-specs.md:168-173 references/component-specs.md:173-191 references/component-specs.md:191-204 references/component-tokens.md:7-47 references/component-tokens.md:47-51 references/component-tokens.md:51-79 references/component-tokens.md:79-83 references/component-tokens.md:83-102 references/component-tokens.md:102-106 references/component-tokens.md:106-130 references/component-tokens.md:130-134 references/component-tokens.md:134-149 references/component-tokens.md:149-153 references/component-tokens.md:153-169 references/component-tokens.md:169-173 references/component-tokens.md:173-191 references/component-tokens.md:191-195 references/component-tokens.md:195-214 references/primitive-tokens.md:9-23 references/primitive-tokens.md:23-27 references/primitive-tokens.md:27-40 references/primitive-tokens.md:40-44 references/primitive-tokens.md:44-61 references/primitive-tokens.md:61-67 references/primitive-tokens.md:67-91 references/primitive-tokens.md:91-95 references/primitive-tokens.md:95-129 references/primitive-tokens.md:129-133 references/primitive-tokens.md:133-145 references/primitive-tokens.md:145-149 references/primitive-tokens.md:149-164 references/primitive-tokens.md:164-168 references/primitive-tokens.md:168-184 references/primitive-tokens.md:184-188 references/primitive-tokens.md:188-203 references/semantic-tokens.md:9-23 references/semantic-tokens.md:23-27 references/semantic-tokens.md:27-34 references/semantic-tokens.md:34-38 references/semantic-tokens.md:38-44 references/semantic-tokens.md:44-48 references/semantic-tokens.md:48-53 references/semantic-tokens.md:53-57 references/semantic-tokens.md:57-62 references/semantic-tokens.md:62-66 references/semantic-tokens.md:66-72 references/semantic-tokens.md:72-76 references/semantic-tokens.md:76-90 references/semantic-tokens.md:90-94 references/semantic-tokens.md:94-100 references/semantic-tokens.md:100-104 references/semantic-tokens.md:104-121 references/semantic-tokens.md:121-125 references/semantic-tokens.md:125-141 references/semantic-tokens.md:141-145 references/semantic-tokens.md:145-160 references/semantic-tokens.md:160-164 references/semantic-tokens.md:164-187 references/semantic-tokens.md:187-193 references/semantic-tokens.md:193-206 references/semantic-tokens.md:206-212 references/semantic-tokens.md:212-215 references/states-and-variants.md:31-38 references/states-and-variants.md:38-52 references/states-and-variants.md:52-59 references/states-and-variants.md:59-70 references/states-and-variants.md:70-75 references/states-and-variants.md:75-81 references/states-and-variants.md:81-87 references/states-and-variants.md:87-99 references/states-and-variants.md:99-100 references/states-and-variants.md:100-116 references/states-and-variants.md:116-130 references/states-and-variants.md:130-136 references/states-and-variants.md:136-146 references/states-and-variants.md:146-166 references/states-and-variants.md:166-184 references/states-and-variants.md:184-188 references/states-and-variants.md:188-207 references/states-and-variants.md:207-229 references/states-and-variants.md:229-241 references/tailwind-integration.md:9-57 references/tailwind-integration.md:57-63 references/tailwind-integration.md:63-113 references/tailwind-integration.md:113-119 references/tailwind-integration.md:119-126 references/tailwind-integration.md:126-132 references/tailwind-integration.md:132-172 references/tailwind-integration.md:172-176 references/tailwind-integration.md:176-187 references/tailwind-integration.md:187-191 references/tailwind-integration.md:191-216 references/tailwind-integration.md:216-220 references/tailwind-integration.md:220-230 references/tailwind-integration.md:230-239 references/tailwind-integration.md:239-243 references/tailwind-integration.md:243-249 references/token-architecture.md:7-18 references/token-architecture.md:18-32 references/token-architecture.md:32-60 references/token-architecture.md:60-66 references/token-architecture.md:66-92 references/token-architecture.md:92-98 references/token-architecture.md:98-121 references/token-architecture.md:121-127 references/token-architecture.md:127-135 references/token-architecture.md:135-139 references/token-architecture.md:139-147 references/token-architecture.md:147-162 references/token-architecture.md:162-168 references/token-architecture.md:168-172 references/token-architecture.md:172-184 references/token-architecture.md:184-189 references/token-architecture.md:189-192 references/token-architecture.md:192-195 references/token-architecture.md:195-207 references/token-architecture.md:207-213 references/token-architecture.md:213-224 scripts/embed-tokens.cjs:77 scripts/embed-tokens.cjs:90 scripts/embed-tokens.cjs:92 scripts/embed-tokens.cjs:97 scripts/generate-tokens.cjs:32-40 scripts/generate-tokens.cjs:109-114 scripts/generate-tokens.cjs:114-119 scripts/generate-tokens.cjs:119-124 scripts/generate-tokens.cjs:124-126 scripts/generate-tokens.cjs:129-132 scripts/generate-tokens.cjs:132-134 scripts/generate-tokens.cjs:151 scripts/generate-tokens.cjs:155-161 scripts/generate-tokens.cjs:179 scripts/generate-tokens.cjs:199 scripts/slide-token-validator.py:30 scripts/validate-tokens.cjs:33-46 scripts/validate-tokens.cjs:180 scripts/validate-tokens.cjs:190 scripts/validate-tokens.cjs:192 scripts/validate-tokens.cjs:193 scripts/validate-tokens.cjs:194 scripts/validate-tokens.cjs:195 scripts/validate-tokens.cjs:205 scripts/validate-tokens.cjs:207 scripts/validate-tokens.cjs:227 scripts/validate-tokens.cjs:231 SKILL.md:27 SKILL.md:31-37 SKILL.md:37-40 SKILL.md:40-49 SKILL.md:49-54 SKILL.md:54-56 SKILL.md:56-59 SKILL.md:59-61 SKILL.md:61-67 SKILL.md:67-68 SKILL.md:68-69 SKILL.md:69-70 SKILL.md:70-71 SKILL.md:71-72 SKILL.md:72-73 SKILL.md:73-88 SKILL.md:88-89 SKILL.md:89-90 SKILL.md:90-91 SKILL.md:91-92 SKILL.md:92-98 SKILL.md:98-116 SKILL.md:116-117 SKILL.md:117-118 SKILL.md:118-119 SKILL.md:119-123 SKILL.md:123-134 SKILL.md:134-140 SKILL.md:140-141 SKILL.md:141-142 SKILL.md:142-143 SKILL.md:143-144 SKILL.md:144-145 SKILL.md:145-146 SKILL.md:146-147 SKILL.md:147-151 SKILL.md:151-166 SKILL.md:166-171 SKILL.md:171-173 SKILL.md:173-180 SKILL.md:180-181 SKILL.md:181 SKILL.md:181-189 SKILL.md:189-208 SKILL.md:208-212 SKILL.md:212-222 SKILL.md:222-227 SKILL.md:227-229 SKILL.md:229-233 SKILL.md:233-235
📁 Доступ к файловой системе (17)
🌐 Доступ к сети (28)
🔑 Переменные окружения (7)
⚡ Содержит скрипты (1)
Проверено: claude

Оценка качества

68
Архитектура
100
Сопровождаемость
87
Контент
34
Сообщество
72
Безопасность
74
Соответствие спецификации

Что вы можете построить

Фронтенд-разработчик, создающий дизайн-систему

Фронтенд-разработчику необходимо внедрить последовательную систему токенов дизайна для нового проекта. Этот навык генерирует CSS-переменные из JSON-определения токенов, проверяет, что компоненты используют токены вместо жестко заданных значений, и создает конфигурацию Tailwind для интеграции.

Дизайнер, создающий фирменные презентации

Дизайнеру нужно подготовить питч-дек, соответствующий фирменному стилю. Этот навык генерирует HTML-слайды, использующие токены дизайна для цветов, типографики и отступов. Включает варианты графиков через Chart.js и подобранные фоновые изображения из Pexels.

DevOps-инженер, автоматизирующий пайплайны токенов дизайна

DevOps-инженер настраивает автоматическую генерацию и проверку токенов в CI-пайплайнах. Навык предоставляет CLI-скрипты для генерации CSS, проверки кодовых баз на соблюдение правил использования токенов и встраивания токенов в автономные HTML-файлы.

Попробуйте эти промпты

Генерация токенов из JSON-конфигурации
Сгенерируй CSS-токены дизайна из моего файла tokens.json, используя трехслойную структуру. Примени паттерн «от примитивов к семантике, затем к компонентам».
Проверка использования токенов в кодовой базе
Проверь мою директорию src/ на наличие жестко заданных hex-цветов и значений в пикселях. Сообщи обо всех нарушениях и предложи, какие токены дизайна следует использовать вместо них.
Создание питч-дека с графиками
Создай 8-слайдовый инвестиционный питч-дек для SaaS-платформы аналитики. Включи титульный слайд, слайд с проблемой, слайд с решением и сеткой функций, слайд с метриками, слайд с графиком доходов, слайд с отзывами, слайд с таблицей сравнения и закрывающий слайд с CTA. Используй наши фирменные токены дизайна.
Применение техники Duarte sparkline
Создай 9-слайдовую презентацию, используя нарративную структуру Duarte sparkline. Чередуй блоки «Что есть» (фрустрация) и «Что могло бы быть» (надежда). Используй разрывы шаблона на позициях 3 и 6. Найди стратегии слайдов для «инвестиционного питча» и предложи макеты для каждого слайда.

Лучшие практики

  • Сначала определяйте примитивные токены с сырыми значениями, затем отображайте их через семантические токены и, наконец, в токены конкретных компонентов — это обеспечивает максимальную гибкость и переключение тем.
  • Всегда проверяйте сгенерированные HTML-слайды валидатором токенов, чтобы выявить жестко заданные цвета или шрифты перед публикацией.
  • Используйте контекстный поиск с параметрами позиции слайда и эмоций для создания дек с разрывами шаблона и эмоциональным контрастом для лучшего вовлечения аудитории.

Избегать

  • Не используйте сырые hex-цвета в CSS-файлах компонентов. Всегда ссылайтесь на токены дизайна через var() для единообразия темы.
  • Не создавайте слайды без импорта файла design-tokens.css. Все визуальные свойства должны использовать переменные токенов.
  • Не пропускайте семантический слой токенов. Прямое отображение компонентов на примитивы усложняет переключение тем и поддержку.

Часто задаваемые вопросы

Какому формату файла должен соответствовать JSON токенов дизайна?
JSON должен соответствовать трехслойной структуре: примитивы (сырые значения цветов, отступов, типографики), семантика (алиасы по назначению, например --color-primary) и компоненты (токены конкретных компонентов, например --button-bg). Каждый токен имеет поля $value и $type.
Может ли этот навык создавать файлы PowerPoint или Google Slides?
Нет. Этот навык генерирует HTML-слайды со встроенными CSS-токенами дизайна. Результат — самодостаточный HTML-файл, который можно открыть в любом браузере, но нельзя напрямую импортировать в PowerPoint или Google Slides.
Как добавить новое фоновое изображение в мои слайды?
Фоновые изображения выбираются из подобранного набора бесплатных фотографий Pexels, сгруппированных по типу слайда (герой, команда, отзывы и т.д.). Вы можете расширить словарь CURATED_IMAGES в файле scripts/fetch-background.py, добавив дополнительные URL-адреса изображений из Pexels.
Что проверяет валидатор токенов?
Валидатор сканирует CSS, JSX, TSX и другие исходные файлы на наличие жестко заданных hex-цветов, RGB-цветов, значений в пикселях и rem. Он предлагает заменять их ссылками var() на токены дизайна. Файлы определения токенов и стандартные исключения пропускаются.
Как создать тему Tailwind из моих токенов дизайна?
Используйте скрипт generate-tokens.cjs с флагом --format tailwind. Это создает объект конфигурации цветов, который отображает ваши семантические цветовые токены в имена цветов Tailwind с использованием ссылок на CSS-переменные.
Поддерживает ли генерация слайдов анимации?
Да. Система слайдов включает CSS-классы анимации: animate-fade-up, animate-stagger, animate-scale, animate-chart, animate-count и animate-pulse. Контекстный поиск рекомендует классы анимации на основе цели слайда и эмоции.