storybook について
Storybook 10 を使う開発作業向けのスキルで、ストーリー、設定、テスト、ドキュメント、移行を扱います。リポジトリの調査方法や実装方針を示し、変更内容に応じた検証手順も案内します。
主な機能
- 01Storybook のバージョンと設定を調査
- 02CSF3 のストーリーとドキュメント作成を案内
- 03インタラクション、アクセシビリティ、ビジュアルテストに対応
- 04セットアップ、アップグレード、移行を支援
- 05変更に応じた検証方法を提示
活用シーン
- 01Storybook のストーリーを追加・更新
- 02Storybook のテストやアクセシビリティを設定
- 03Storybook プロジェクトをアップグレード・移行
MCP 対応
`@storybook/addon-mcp` など、プレビュー段階の Storybook AI・MCP ツールを扱います。MCP サーバーやクライアントについての説明はありません。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dobroslavradosavljevic/ skills --skill storybookインストール後、Claude Code で/storybookを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/production-migration.mdsetup-core.mdsource-map.mdtesting.mdwriting-stories.md詳細
Storybook
Storybook 10 に関わる作業(または Storybook 10 へのアップグレード)では、このスキルを使用します。対象には、ストーリー、CSF、設定、ドキュメント、インタラクション/a11y/ビジュアルテスト、Vitest アドオン、ポータブルストーリー、フレームワークパッケージ、エージェント/MCP ツール、8.x/9.x からの移行が含まれます。
ワークフロー
- コードを変更する前に、ローカルの Storybook の構成を確認します。
storybook、フレームワークパッケージ(例:@storybook/react-vite、@storybook/nextjs-vite)、@storybook/addon-docs、@storybook/addon-a11y、@storybook/addon-vitest、Node、Vite/Vitest、React/Vue/Svelte のピア依存関係のパッケージバージョン。- 設定:
.storybook/main.ts|js(ESM が必須)、preview.ts|tsx、任意のmanager.ts、vitest.setup.ts、ストーリーの glob、staticDirs。 - ストーリーのスタイル:CSF3 の
Meta/StoryObj、実験的な CSF Next(definePreview/preview.meta/meta.story)、MDX ドキュメント、タグ。 - テストの経路:Vitest アドオン、旧式の test-runner、ポータブルな
composeStories、Chromatic/ビジュアルテスト、a11y。
- バージョンが不明な場合、またはアップグレード、ESM、CSF Next、Vitest のブラウザーモードに関わる作業では、最新のドキュメントを確認します。source-map.md から始めてください。
- インストール、フレームワーク、
main/preview、コア機能とアドオン、CLI については、setup-core.md を使用します。 - CSF3/CSF Next、args、render、decorators、parameters、tags、docs については、writing-stories.md を使用します。
play、storybook/test、Vitest アドオン、ポータブルストーリー、a11y については、testing.md を使用します。- ビルド、CI、doctor/upgrade、8→9→10 のパッケージ移行、AI/MCP ツール、よくある失敗については、production-migration.md を使用します。
実装上の判断
- リポジトリで意図的にバージョンを固定している場合を除き、Storybook 10 を対象にします。孤立したレンダラー専用パッケージではなく、型やインポートにはフレームワークパッケージ(
@storybook/react-vite)を優先します。 - デフォルトでは CSF3(
satisfies Meta、StoryObj)を記述します。CSF Next はオプトインが必要な実験的機能として扱い、承認なしに安定した CSF3 コードベースを書き換えないでください。 - テストユーティリティは
storybook/testからインポートします(manager/preview API はstorybook/manager-api/storybook/preview-apiからインポートします)。@storybook/test、@storybook/addon-interactions、@storybook/addon-essentialsを再導入しないでください。 - Controls、actions、viewport、interactions は core に含まれます。これらの機能が必要な場合は、
@storybook/addon-docs、@storybook/addon-a11y、@storybook/addon-vitestをインストールします。 - Vite を使う React/Vue/Svelte プロジェクトでは、
@storybook/test-runnerよりも@storybook/addon-vitestを優先します。Next.js で Vitest アドオンを使用するには、@storybook/nextjs-viteが必要です。 - ストーリーはコンポーネントと同じ場所に配置します。ストーリー内の React state よりも
argsと Controls を優先し、インタラクションやアサーションにはplayを使用します。 - タグは目的を持って使用します(
autodocs、!autodocs、!test、カスタムフィルター)。meta のtitle/componentは静的に解析可能でなければなりません。 - AI ツール(
@storybook/addon-mcp、storybook skills/storybook tools)は 10.6 ではプレビューのみです。依頼があった場合にのみ追加してください。docs ツールセットではfeatures.componentsManifest: trueが必要です。 - Storybook 11 は alpha(
next)です。リポジトリでオプトインしていない限り、10.x を使用してください。 .storybook/main.*は有効な ESM でなければなりません(require/__dirnameは使用不可)。パスの計算にはimport.meta.urlを使用します。
検証
リポジトリに既存のチェックがあれば、それを優先します。Storybook に重要な変更を加える場合は、関連する項目を実施します。
bun run storybook(またはプロジェクトのスクリプト)でスモークテストを行い、ストーリーがコンパイルされてレンダリングされることを確認します。main設定、フレームワーク、Vite エイリアス、ESM の境界を変更した場合は、bunx storybook buildを実行します。- アップグレード後、または
@storybook/*のバージョン不一致がある場合は、bunx storybook doctorを実行します。 play/a11y/カバレッジを変更した場合は、対象を絞った Vitest ストーリープロジェクト(vitest --project=storybook)または UI テスト用ウィジェットを使用します。Meta/StoryObj、フレームワークのインポート、storybook/testの使用について型チェックを行います。- リポジトリに該当するパイプラインがある場合は、ビジュアル/Chromatic または a11y のスモークテストを行います。
コメント
Markdown 対応