スキル ckm:design-system
📦

ckm:design-system

低リスク ⚙️ 外部コマンド📁 ファイルシステムへのアクセス🌐 ネットワークアクセス🔑 環境変数⚡ スクリプトを含む

デザイントークンの生成、使用状況の検証、ブランドスライドの作成

デザインシステムは、プリミティブ、セマンティック、コンポーネントの各レイヤーにわたってトークンが一貫して適用されないと、しばしば機能しなくなります。このスキルは、JSONトークン定義からCSS変数を生成し、コード内でのトークン使用状況を検証し、Chart.jsを統合したブランド準拠のスライドプレゼンテーションを作成します。

対応: Claude Codex Code(CC)
🥉 72 ブロンズ
1

スキルZIPをダウンロード

2

Claudeでアップロード

設定 → 機能 → スキル → スキルをアップロードへ移動

3

オンにして利用開始

テストする

「ckm:design-system」を使用しています。 tokens.jsonからCSSデザイントークンを生成し、Next.jsプロジェクト用のTailwind設定を作成してください。

期待される結果:

  • プリミティブ、セマンティックトークン、コンポーネントトークンを含む:rootブロックとして整理された3層トークン構造のCSS出力
  • tailwind.config.jsで使用するCSS変数を参照するカラーマッピング付きのTailwind設定ファイル

「ckm:design-system」を使用しています。 フィンテックスタートアップ向けの5枚スライドのピッチデッキを作成してください。収益チャートを含めてください。

期待される結果:

  • タイトル、問題、カード付き解決策、収益成長棒グラフ、CTAスライドを含むブランドスライドデッキのHTMLファイル
  • すべての色、フォント、スペーシングにデザイントークンを参照してブランド準拠を保証するCSS

「ckm:design-system」を使用しています。 4つの製品ラインにわたる四半期ごとの収益成長を示すのに最適なチャートタイプを見つけてください。

期待される結果:

  • チャートの推奨:複数の製品ラインを四半期ごとに比較するためのグループ化棒グラフ
  • いつ使用すべきか、いつ避けるべきか、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
仕様準拠

作れるもの

デザインシステムを作成するフロントエンド開発者

フロントエンド開発者が新しいプロジェクト用に一貫したデザイントークンシステムを確立する必要があります。このスキルは、JSONトークン定義からCSS変数を生成し、コンポーネントがハードコードされた値ではなくトークンを使用していることを検証し、統合用のTailwind設定を生成します。

ブランドスライドを作成するデザイナー

デザイナーがブランドガイドラインに従ったピッチデッキを作成する必要があります。このスキルは、色、タイポグラフィ、スペーシングにデザイントークンを使用するHTMLスライドを生成します。Chart.jsによるチャートオプションとPexelsの厳選された背景画像も含まれます。

デザイントークンパイプラインを自動化するDevOpsエンジニア

DevOpsエンジニアがCIパイプラインで自動化されたトークン生成と検証を設定します。このスキルは、CSS生成、トークン使用ルールに対するコードベースの検証、スタンドアロンのHTMLファイルへのトークンの埋め込みのためのCLIスクリプトを提供します。

これらのプロンプトを試す

JSON設定からトークンを生成
tokens.jsonファイルから3層構造を使用してCSSデザイントークンを生成してください。プリミティブからセマンティック、コンポーネントへのパターンを使用してください。
コードベース内のトークン使用状況を検証
src/ディレクトリ内のハードコードされた16進数カラーとピクセル値を検証してください。すべての違反を報告し、代わりに使用すべきデザイントークンを提案してください。
チャート付きピッチデッキを作成
SaaS分析プラットフォーム用の8枚スライドの投資家用ピッチデッキを作成してください。タイトルスライド、問題スライド、機能グリッド付き解決策スライド、メトリクススライド、収益チャートスライド、推薦文スライド、比較表スライド、CTAクロージングスライドを含めてください。ブランドのデザイントークンを使用してください。
Duarteスパークライン手法を適用
Duarteスパークラインのナラティブ構造を使用して9枚のスライドデッキを作成してください。「現状」(フラストレーション)と「未来」(希望)のビートを交互に配置してください。3番目と6番目の位置でパターンブレイクを使用してください。「投資家ピッチ」のスライド戦略を検索し、各スライドに最適なレイアウトを推奨してください。

ベストプラクティス

  • 最大限の柔軟性とテーマ切り替えを実現するには、まずプリミティブトークンを生の値で定義し、次にセマンティックトークンにマッピングし、最後にコンポーネント固有のトークンにマッピングします。
  • 生成されたHTMLスライドは、共有する前に必ずトークンバリデーターで検証し、ハードコードされた色やフォントがないか確認します。
  • スライド位置と感情パラメータを使用したコンテキスト検索を活用して、パターンブレイクと感情的なコントラストを持つデッキを作成し、より良いオーディエンスエンゲージメントを実現します。

回避

  • コンポーネントのCSSファイルで生の16進数カラーを使用しないでください。テーマの一貫性のために、常にvar()を通じてデザイントークンを参照してください。
  • design-tokens.cssファイルをインポートせずにスライドを作成しないでください。すべてのビジュアルプロパティはトークン変数を使用する必要があります。
  • セマンティックトークンレイヤーをスキップしないでください。コンポーネントをプリミティブに直接マッピングすると、テーマの切り替えとメンテナンスが困難になります。

よくある質問

デザイントークンのJSONはどのようなファイル形式に従う必要がありますか?
JSONは3層構造に従う必要があります:プリミティブ(生の色、スペーシング、タイポグラフィ値)、セマンティック(--color-primaryなどの目的ベースのエイリアス)、コンポーネント(--button-bgなどのコンポーネント固有のトークン)です。各トークンは$値と$タイプのフィールドを持ちます。
このスキルはPowerPointやGoogle Slidesファイルを生成できますか?
いいえ。このスキルは埋め込みCSSデザイントークンを使用したHTMLスライドを生成します。出力は自己完結型のHTMLファイルで、任意のブラウザで開くことができますが、PowerPointやGoogle Slidesに直接インポートすることはできません。
スライドに新しい背景画像を追加するにはどうすればよいですか?
背景画像は、スライドタイプ(ヒーロー、チーム、推薦文など)ごとに整理されたPexelsの無料写真の厳選セットから選択されます。scripts/fetch-background.pyのCURATED_IMAGESディクショナリに追加のPexels画像URLを追加することで拡張できます。
トークンバリデーターは何をチェックしますか?
バリデーターはCSS、JSX、TSX、その他のソースファイルをスキャンし、ハードコードされた16進数カラー、RGBカラー、ピクセル値、rem値を探します。それらをデザイントークンへのvar()参照に置き換えることを提案します。トークン定義ファイルと一般的な例外はスキップします。
デザイントークンからTailwindテーマを作成するにはどうすればよいですか?
generate-tokens.cjsスクリプトに--format tailwindフラグを付けて使用します。これにより、セマンティックカラートークンをCSS変数参照を使用してTailwindの色名にマッピングするカラー設定オブジェクトが生成されます。
スライド生成はアニメーションをサポートしていますか?
はい。スライドシステムには、animate-fade-up、animate-stagger、animate-scale、animate-chart、animate-count、animate-pulseなどのCSSアニメーションクラスが含まれています。コンテキスト検索は、スライドの目標と感情に基づいてアニメーションクラスを推奨します。