
Design System Maturity:6-Dimension Framework — 2026年 第28週 デザインシステム
今週のデザインシステム分野は、AIツールとコンポーネントガバナンスの交差点が主要テーマでした。Evil MartianがClaude Codeエージェントスキル群Storybook Workbench(/sb.プレフィックス)を公開しました。vibe-codedコードベースの監査のために開発されたこのツールは、実際の469コン… 開発ですぐ活用できるよう整理しました。


EN 17161とWCAGの組み合わせがDigital Accessibilityの大きな前進となる理由

Storybook Workbench:Vibe-coded UIをAuditし数時間でHidden Bugを発見
/sb.プレフィックス)を構築しました。469個のコンポーネントファイルを持つvibe-codedアプリの監査では、31個のデッドコンポーネント(うち19個は廃棄済みのページフロー全体)と、実行中のアプリでは見えなかった6件のアクセシビリティバグ — WCAG AAの4.5を下回るコントラスト比3.87のバッジバリアントとbroken combobox roleを持つselectコンポーネント — が発見されました。スキルはonboard・orchestrate・navigate・reportの4役割に分かれ、各スキルの出力は構造化JSONとしてLinearのMCPに投入してチケットを生成したり、PDFレポートとして出力したりできます。
AI-aware Component Library向けStorybook MCP
@storybook/addon-mcpが同梱され、http://localhost:6006/mcpでコンポーネントライブラリを構造化されたMCPサーバーとして公開します。サーバーは3つのツールセットにわたって6つのツールを提供します: コンポーネント探索とpropルックアップのためのdocsツールセット(list-all-documentation, get-documentation, get-documentation-for-story)、ストーリー作成のためのdevツールセット(get-storybook-story-instructions, preview-stories)、そしてVitestベースのテストを実行してアクセシビリティ違反を構造化された結果として返すtestingツールセット(run-story-tests)。MCP未接続時、Claude Codeは既存デザインシステムを無視した263行のインラインコンポーネントを生成しましたが、MCP接続後は188行でButtonとTextInputを正確なprop契約に従ってimportし、aria-invalidやaria-describedby等のアクセシビリティ修正をTextInputコンポーネントに自律的に適用しました。
shadcn/uiでProduction-ready Card Componentを構築
scale-125とoverflow-hiddenクリッピング)を持つPreview Card、TypeScript型付きpropsとデフォルトデータセット・条件付きcn()バッジカラーを備えたAnalytics Card、@iconify/react Solarアイコンとlast:border-e-0による末尾ボーダー自動削除を使用したレスポンシブ4列のStatistics Card、そしてnamed hoverグループ(group/card・group/btn)、rounded-full要素のscale-[20]によるCSS専用リップル、useStateによるサイズセレクタとウィッシュリストトグル、序数配送日付のsuppressHydrationWarningを含むEcommerce Product Variant Card。Shadcn Spaceコンポーネントはcomponents.jsonにレジストリURLを登録後、npx shadcn@latest add @shadcn-space/card-XXコマンド一つでインストールできます。
Coding Agentの結果改善はDesign Systemから
Button・TextInput・Cardなどのプリミティブコンポーネントを含むデザインシステムを先に構築することを推奨しています。エージェント自身がテーマファイル、Storybookストーリー、使用例を含む基盤を構築できますが、spacing・line-height・border-radiusの細部については人間による丁寧なレビューが依然として必要です。システムが整うと、src/components/uiの既存コンポーネントを使用し、真に不足している場合以外は新しいプリミティブを作らないよう指示する具体的なプロンプトが可能になります。
WCAGルールをいくつか破ってみよう
flex-direction: row-reverseによるキーボードナビゲーションの失敗、可視フォーカスインジケーターの欠落、一時停止・停止なしの時間制限、点滅コンテンツ、未接続のフォームラベルが示されます。axeやPa11yなどのスキャナーをCIに追加し、スクリーンリーダーで自分のプロダクトをナビゲートする練習を推奨しています。
Design System Maturity:6-Dimension Framework
WCAGルールをいくつか破ってみよう
flex-direction: row-reverseによるキーボードナビゲーションの失敗、可視フォーカスインジケーターの欠落、一時停止・停止なしの時間制限、点滅コンテンツ、未接続のフォームラベルが示されます。axeやPa11yなどのスキャナーをCIに追加し、スクリーンリーダーで自分のプロダクトをナビゲートする練習を推奨しています。EN 17161とWCAGの組み合わせがDigital Accessibilityの大きな前進となる理由
Storybook Workbench:Vibe-coded UIをAuditし数時間でHidden Bugを発見
/sb.プレフィックス)を構築しました。469個のコンポーネントファイルを持つvibe-codedアプリの監査では、31個のデッドコンポーネント(うち19個は廃棄済みのページフロー全体)と、実行中のアプリでは見えなかった6件のアクセシビリティバグ — WCAG AAの4.5を下回るコントラスト比3.87のバッジバリアントとbroken combobox roleを持つselectコンポーネント — が発見されました。スキルはonboard・orchestrate・navigate・reportの4役割に分かれ、各スキルの出力は構造化JSONとしてLinearのMCPに投入してチケットを生成したり、PDFレポートとして出力したりできます。AI-aware Component Library向けStorybook MCP
@storybook/addon-mcpが同梱され、http://localhost:6006/mcpでコンポーネントライブラリを構造化されたMCPサーバーとして公開します。サーバーは3つのツールセットにわたって6つのツールを提供します: コンポーネント探索とpropルックアップのためのdocsツールセット(list-all-documentation, get-documentation, get-documentation-for-story)、ストーリー作成のためのdevツールセット(get-storybook-story-instructions, preview-stories)、そしてVitestベースのテストを実行してアクセシビリティ違反を構造化された結果として返すtestingツールセット(run-story-tests)。MCP未接続時、Claude Codeは既存デザインシステムを無視した263行のインラインコンポーネントを生成しましたが、MCP接続後は188行でButtonとTextInputを正確なprop契約に従ってimportし、aria-invalidやaria-describedby等のアクセシビリティ修正をTextInputコンポーネントに自律的に適用しました。shadcn/uiでProduction-ready Card Componentを構築
scale-125とoverflow-hiddenクリッピング)を持つPreview Card、TypeScript型付きpropsとデフォルトデータセット・条件付きcn()バッジカラーを備えたAnalytics Card、@iconify/react Solarアイコンとlast:border-e-0による末尾ボーダー自動削除を使用したレスポンシブ4列のStatistics Card、そしてnamed hoverグループ(group/card・group/btn)、rounded-full要素のscale-[20]によるCSS専用リップル、useStateによるサイズセレクタとウィッシュリストトグル、序数配送日付のsuppressHydrationWarningを含むEcommerce Product Variant Card。Shadcn Spaceコンポーネントはcomponents.jsonにレジストリURLを登録後、npx shadcn@latest add @shadcn-space/card-XXコマンド一つでインストールできます。Coding Agentの結果改善はDesign Systemから
Button・TextInput・Cardなどのプリミティブコンポーネントを含むデザインシステムを先に構築することを推奨しています。エージェント自身がテーマファイル、Storybookストーリー、使用例を含む基盤を構築できますが、spacing・line-height・border-radiusの細部については人間による丁寧なレビューが依然として必要です。システムが整うと、src/components/uiの既存コンポーネントを使用し、真に不足している場合以外は新しいプリミティブを作らないよう指示する具体的なプロンプトが可能になります。今週のデザインシステム分野は、AIツールとコンポーネントガバナンスの交差点が主要テーマでした。Evil MartianがClaude Codeエージェントスキル群Storybook Workbench(/sb.プレフィックス)を公開しました。vibe-codedコードベースの監査のために開発されたこのツールは、実際の469コンポーネント構成のアプリで31個のデッドコンポーネント(うち19個は廃棄済みのページフロー全体)と、実行中のアプリでは見えない6件のアクセシビリティバグを発見しました。発見されたバグにはWCAG AAの4.5を下回るコントラスト比3.87のバッジバリアントとbroken combobox roleを持つselectコンポーネントが含まれていました。4つのスキル(onboard・orchestrate・navigate・report)は構造化JSONを出力し、LinearのMCPに連携してチケットを自動生成したり、PDFとして書き出したりできます。Storybook 10.3の新しい@storybook/addon-mcpはhttp://localhost:6006/mcpでコンポーネントライブラリを3つのツールセット(docs・dev・testing)の構造化MCPサーバーとして公開し、Claude Codeがインラインプリミティブを発明するのではなく正しいコンポーネントを使用するよう誘導します。
Nielsen Norman Groupは線形的なデザインシステム成熟度モデルを、組織的整合性・チームの有効性・インフラの堅牢性・ガバナンス・サポート・採用の6次元フレームワークに置き換えることを提案しました。各次元は1〜5点で評価され、六角形のレーダーチャートで視覚化されます。このモデルは評価者間の議論自体がスコアより価値ある場合が多いと強調しています。コーディングエージェントを導入する前にテーマトークン・定義されたバリアントを持つプリミティブコンポーネント・レイアウトコンテキストのためのFigma MCPサーバーを含むデザインシステムの基盤を先に構築し、エージェントのプロンプトを一度に1画面に限定するという実践的なガイドも示されました。
アクセシビリティ標準も重要なテーマとして取り上げられました。Dequeは、イシューレジストリ・RCA・CAPAトラッキングを備えたISO 9001方式の管理標準であるEN 17161 Design for Allが、最低4年先のWCAG 3.0を待つよりWCAGの実用的な補完手段だと主張しました。NDC Copenhagenの講演ではflex-direction: row-reverseによるキーボードナビゲーションの失敗や欠落したaria-invalid連携など、一般的なWCAG違反の実例が示されました。
- Storybook Workbench(Claude Codeの/sb.スキル)は469コンポーネントのvibe-codedアプリで31個のデッドコンポーネントとコントラスト比3.87のバッジを含む6件の非表示アクセシビリティバグを発見しました。出力はLinear MCPに連携してチケットを自動生成できます。
- Storybook 10.3の@storybook/addon-mcpはlocalhost:6006/mcpでライブラリを公開します。テストではClaude Codeが発明されたプリミティブで263行だったコンポーネントを、正しいButtonとTextInputのimportとアクセシビリティ自律修正を含む188行に削減しました。
- EN 17161 Design for AllはISO 9001と組み合わせてイシューレジストリ・RCA・CAPAトラッキングによるプロセスレベルのアクセシビリティガバナンスを提供します。WCAGの特定時点適合モデルでは対応できない領域であり、欧州アクセシビリティ法の期限が近づく中で重要性が高まっています。