ブランドシステム
Webプロダクトのリポジトリルートに配置されるブランドブック+デザインシステムをスキャフォールディングします。長文の参照資料BRAND.md(20セクション)と、印刷可能なステークホルダー向け資料BRAND.html(約7 A4ページ、ChromeヘッドレスでBRAND.pdfにレンダリング)、そしてTailwind v4 @themeに対応したtokens.cssを生成します。
このスキルは文書を作成します。姉妹スキルbrand-assetsはピクセルを生成(SVGファビコン、PWAパック、apple-touch-icon)します。完全なブランドローンチには、両方を順に呼び出してください。
5つのアーティファクト
| アーティファクト | 内容 | 生成方法 |
|---|---|---|
BRAND.md | 長文の20セクションからなる参照資料 | templates/BRAND.md.tmpl から scripts/new-brand-book.sh を使用 |
BRAND.html | 7ページのA4印刷可能資料 | templates/BRAND.html.tmpl から同じスクリプトを使用 |
BRAND.pdf | Chromeヘッドレスでレンダリング | scripts/render-pdf.sh |
tokens.css | Tailwind v4 @theme + :root + [data-theme="dark"] | templates/tokens.css.tmpl + scripts/extract-tokens.py |
tokens.json | Style Dictionary / Tokens Studio向けW3C DTCG形式 | scripts/extract-tokens.py --format dtcg |
ワークフロー(決定木)
-
新規で始める場合 — まず署名ムーブインタビューを実行してください。 templates/signature-interview.md.tmpl をリポジトリにコピーし、スキャフォールディング前にすべての質問に回答してください。各質問の重要性については reference/signature-moves.md を参照してください。このインタビューなしでは出力はテンプレートに過ぎません。インタビューを実施することで、真のブランドになります。
-
新しいブックをスキャフォールディングする場合 — インタビューの回答をフラグとして scripts/new-brand-book.sh を実行します。
BRAND.md、BRAND.html、tokens.css、signature-interview.mdを出力ディレクトリに生成します。 -
特定の章をドラフトする場合 — 対応するリファレンスを参照してください。
- §0 アイデア / §2 プリミティブ / §3 署名ムーブ → reference/signature-moves.md
- §5 ロゴ+ファビコンパック → reference/favicon-pack.md
- §6 カラー → reference/color.md + reference/tokens.md
- §7 タイポグラフィ → reference/typography.md
- §10 サーフェスとマテリアル → reference/surfaces.md
- §11 モーション → reference/motion.md
- §13 ボイス&トーン → reference/voice-and-tone.md
- §14 アクセシビリティ → reference/accessibility.md
- §17 Tailwind v4
@theme→ reference/tailwind-v4.md - ヘブライ語 / アラビア語 / RTL → reference/rtl.md
-
ファビコン+PWAパック? — このスキルではアセットを生成しないでください。 reference/favicon-pack.md に要件(システム対応SVGファビコン、不透明なapple-touch-icon、マスク可能なPWA、OGライト+ダークペア)が記載されています。この仕様書とソースSVGを brand-assets スキルの
icon-pack.shに渡してください。 -
リリース前のコントラスト監査 → scripts/audit-contrast.py を実行します。WCAG 2.2 AA:本文4.5:1、大規模/UI/フォーカスリング3:1。テーマごと(ライト+ダーク)に実行します。結果のマトリックスを§14に貼り付けてください。
-
PDFのレンダリング → scripts/render-pdf.sh を実行します。Chromeヘッドレスを使用。
BRAND.htmlからBRAND.pdfを生成します。 -
既存のブックを監査する場合 → scripts/audit-outline.py を実行します。20セクションのアウトラインを検証し、欠落している決定ログのエントリを報告し、§2の署名プリミティブに8つ未満の使用サイトが文書化されている場合に警告します。
-
BRAND.mdとプロダクションCSSの乖離を検出する場合 → scripts/check-consistency.py を実行します。ブランドブックは、コードが静かに乖離すると機能しなくなります。BRAND.md内のカラートークンを1つ以上のターゲットCSSファイルと比較し、16進数値のずれがあると非ゼロで終了します。CIに組み込んでください。
-
スキャフォールディング前にインタビューを強制する場合 → scripts/new-brand-book.sh に
--require-interview path/to/signature-interview.mdを渡します。インタビューに未記入の{{PLACEHOLDER}}、{{TODO}}、または> …の回答行が残っている場合、スキャフォールディングを拒否します。強く推奨します。
ハウスルール
-
スキャフォールディング前にアンチテンプレートムーブを必須とする。 インタビューはオプションではありません。1つの考案された固有名詞、3つの反証可能な原則、過去のミスからの3つの実際の禁止事項、ブランドのボイスで書かれた150語のボイスサンプル、そしてベストプラクティスを意図的に破る1つの署名ムーブが必要です。これらがない場合、ブックはテンプレートです。reference/signature-moves.md を参照してください。
-
ライト/ダーク間でアクセントカラーを一定に保つ。 サーフェスとテキストのセマンティックトークンだけがテーマ間で切り替わります。唯一の彩度の高いブランドカラーは両モードで同一です。これにより、署名プリミティブはシステム設定に関係なく同じ意味を持ちます。templates/tokens.css.tmpl にエンコードされています。
-
Nathan Curtisの分類法に基づく3階層トークン。 プリミティブ(
--color-cream: #F3EAD3)→ セマンティック(--bg: var(--color-cream))→ コンポーネント(--btn-bg: var(--bg-elevated))。プリミティブは@themeに、セマンティックは:rootに、ダークモードのオーバーライドは[data-theme="dark"]に配置します。reference/tokens.md を参照してください。 -
2026年、WCAG 2.2 AAが法的な最低基準です。 APCAではありません。APCAは2023年7月にWCAG 3から削除され、復帰していません。AAとは、本文4.5:1、大規模/UI/フォーカス3:1、24×24のターゲットサイズ最小値を意味します。scripts/audit-contrast.py で監査します。reference/accessibility.md を参照してください。
-
RTLは基礎であり、付録ではありません。 製品がヘブライ語やアラビア語で出荷される場合、初日からCSS論理プロパティ(
margin-leftではなくmargin-inline-start)を使用してください。後から修正するコストは、最初から設計する場合の10~50倍です。reference/rtl.md を参照してください。 -
ブランドブック自体がブランドのインスタンスであること。
BRAND.htmlテンプレートは製品自身のパレットとタイプを使用するため、ドキュメントは1ページ目からブランドの外観を持ちます。ブランドブック自身のスタイリングが自ら説くルールを満たしていない場合、それは間違いです。 -
ダークモードはシステムファースト、トグルはセカンド。 デフォルトで
prefers-color-schemeを尊重し、明示的なユーザーオーバーライドはlocalStorageに保存します。ナビ内の可視的なダークモードトグルはアンチパターンです。システム対応SVGファビコンのルール(reference/favicon-pack.md 内)も同じ論理に従います。
非目標
- ロゴアートワークの生成 — それは image-generation の担当です。
- 機械的なアセットパイプライン(PNG→SVGのベクター化、アイコンパック生成、指定サイズでのラスタライズ)— それは brand-assets の担当です。
- 実際のコンポーネントの構築 —
BRAND.mdの§18は仕様を文書化します。react-components と frontend-design がそれを実装します。 - ブランドストーリーテリング/マーケティングコピーライティング — §13は どのように 書くかを規定し、何を 書くかは規定しません。
- コピーの翻訳 — このスキルはRTL対応の 構造 をスキャフォールディングしますが、翻訳は行いません。
- ブランドブックを製品としてバージョニングする — その場で更新し、明確なメッセージでコミットし、リポジトリルートに単一の信頼できる情報源を置きます。
標準の20セクションアウトライン(BRAND.md.tmplが生成するもの)
| # | セクション | 核心となる必須項目 |
|---|---|---|
| 0 | アイデア | 一文のコアアイデア + 「X以外をすべて削ぎ落とす」テスト |
| 1 | マークの読み解き方 | ロゴの3~5の同時的な読み解き方 |
| 2 | 署名プリミティブ | あらゆるサーフェスに現れるセマンティックトークン — 8つ以上の使用サイト |
| 3 | 署名ムーブ | ロゴなしでブランドを特定できる5~7の要素 |
| 4 | ブランドエッセンス | 我々は何か/何でないか/トーン/ポジショニング文 |
| 5 | ロゴシステム | バリエーション、クリアスペース、最小サイズ、禁止事項、ファビコン+PWAパック要件 |
| 6 | カラーシステム | コア+拡張+ニュートラル+セマンティックトークン、62/30/8比率、ライト/ダークパリティ |
| 7 | タイポグラフィ | フェイス、タブラーナ数字、スケール、メジャー、RTL対応、ワードマーク処理 |
| 8 | アイコノグラフィ | スタイル、カラールール(アクセントは不使用)、サイズトークン、RTL反転 |
| 9 | スペーシングとレイアウト | 8ピクセルグリッド、コンテナ、半径+同心円半径ルール |
| 10 | サーフェスとマテリアル | デフォルト+フローティングマテリアル、グレインオーバーレイ、ヒーロー背景 |
| 11 | モーション | 原則、トークン、署名アニメーション、動きの抑制動作 |
| 12 | イメージとイラストレーション | 写真ルール、イラストスタイル、アンチパターン |
| 13 | ボイス&トーン | ルール、感情状態別トーンマトリックス、同一思考の3段階、RTL固有事項 |
| 14 | アクセシビリティ | WCAG 2.2 AAコントラストマトリックス、フォーカスリング、動きの抑制、RTL等価性 |
| 15 | リファレンスセット | ブランドが位置する棚と、何でないか |
| 16 | アンチパターン | 具体的な「してはいけないこと」リスト — 禁止された具体的な悪習慣 |
| 17 | 実装 — Tailwind v4 @theme | 完全ブロック、:root + [data-theme="dark"]、ボディルール |
| 18 | コンポーネント | ボタン、リンク、入力、カード、バッジ、ナビ、アラート、ダイアログ、プローズ、ランディングプリミティブ |
| 19 | 移行計画 | 廃止されるもの、トークン/パターンごとに✅/⚠️/❌、日付 |
| 20 | これが何でないか+決定ログ | 非目標+決定事項の日付付きテーブルとその根拠 |
クイック呼び出し
# リポジトリルートに新しいブランドブックをスキャフォールディング
~/.claude/skills/brand-system/scripts/new-brand-book.sh \
--product "Agentiko" \
--positioning "A real worker who lives inside WhatsApp." \
--palette-bg '#F3EAD3' \
--palette-fg '#0E1320' \
--palette-accent '#B85A3A' \
--signature-primitive "voice dot" \
--primary-font "Rubik" \
--locale "he" \
--output-dir .
# コントラスト監査
~/.claude/skills/brand-system/scripts/audit-contrast.py \
--bg '#F3EAD3' --fg '#0E1320' --accent '#B85A3A'
# 印刷可能版をレンダリング
~/.claude/skills/brand-system/scripts/render-pdf.sh BRAND.html BRAND.pdf
# 後日:既存のブックをアウトラインと照合
~/.claude/skills/brand-system/scripts/audit-outline.py BRAND.md
関連スキル
- brand-assets — 機械的なSVG/PNGパイプライン。このスキルの後に実行してファビコンパックを生成します。
- image-generation — このスキルを実行する前にロゴ/ヒーローイメージをデザインします。
- frontend-design — §18のコンポーネントをプロダクションコードで実装します。
- react-components — §18が作成されたらコンポーネントプリミティブを構築します。