feature-flags-react-native について
React Native アプリに PostHog のフィーチャーフラグを追加する開発スキルです。実装方法を案内し、接続済みの PostHog MCP サーバーがあればフラグ管理にも利用できます。
主な機能
- 01セットアップとフラグ実装の案内
- 02フラグ確認用 React フック
- 03ブール型フラグを標準に採用
- 04環境変数の使用と変更範囲の最小化
- 05PostHog MCP ツールでのフラグ管理
活用シーン
- 01React Native アプリへのフラグ追加
- 02PostHog でのフラグ作成や更新
- 03フラグ状態に応じた画面表示
MCP 対応
PostHog MCP サーバーが接続されている場合、フラグの作成、一覧表示、更新、削除に使えるツールを探し、直接管理できます。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ posthog/ skills --skill feature-flags-react-nativeインストール後、Claude Code で/feature-flags-react-nativeを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/adding-feature-flag-code.mdbest-practices.mdreact-native.md詳細
React Native 向け PostHog フィーチャーフラグ
このスキルは、React Native アプリケーションへの PostHog フィーチャーフラグの追加を支援します。
リファレンスファイル
references/react-native.md- React Native のフィーチャーフラグのインストール - ドキュメントreferences/adding-feature-flag-code.md- フィーチャーフラグコードの追加 - ドキュメントreferences/best-practices.md- フィーチャーフラグのベストプラクティス - ドキュメント
API の詳細やフレームワーク固有のパターンについては、ドキュメントを参照してください。
主な原則
- 環境変数:PostHog のキーには必ず環境変数を使用してください。ハードコードしないでください。
- 変更は最小限に:既存のロジックに沿ってフィーチャーフラグのコードを追加してください。既存のコードを置き換えたり、再構成したりしないでください。
- まずはブール値フラグ:ユーザーから多変量フラグを明示的に求められない限り、ブール値のフラグチェックを使用してください。
- 可能であればサーバー側で評価:UI のちらつきを防ぐため、サーバー側でのフラグ評価を優先してください。
PostHog MCP ツール
PostHog MCP サーバーが接続されているか確認してください。利用できる場合は、フィーチャーフラグ管理(フラグの作成、一覧表示、更新、削除)に関連するツールを探してください。ユーザーにダッシュボード上で手動操作を求めるのではなく、これらのツールを使って PostHog のフラグを直接管理してください。
フレームワークのガイドライン
- フィーチャーフラグには、
useFeatureFlagEnabled()またはuseFeatureFlagPayload()フックを使用してください。これらは読み込み状態と外部との同期を自動的に処理します。 - ユーザー操作が発生するイベントハンドラー内で分析イベントをキャプチャしてください。状態の変化に反応する
useEffect内には追加しないでください。 - データ変換に
useEffectを使用しないでください。代わりに、レンダリング中に派生値を計算してください。 - ユーザーイベントへの対応に
useEffectを使用しないでください。そのロジックはイベントハンドラー自体に記述してください。 - 状態更新を連鎖させるために
useEffectを使用しないでください。関連するすべての更新をイベントハンドラー内でまとめて計算してください。 - 親コンポーネントへの通知に
useEffectを使用しないでください。イベントハンドラー内でsetStateと併せて親のコールバックを呼び出してください。 - プロパティの変更時にコンポーネントの状態をリセットするには、
useEffectを使う代わりに、そのプロパティをコンポーネントのkeyとして渡してください。 useEffectは外部システム(React 以外のウィジェット、ブラウザー API、ネットワークサブスクリプション)との同期にのみ使用してください。posthog-react-nativeは React Native SDK のパッケージ名です。react-native-configを使用して.envからPOSTHOG_PROJECT_TOKENとPOSTHOG_HOSTを読み込んでください(変数は実行時ではなく、ビルド時に埋め込まれます)。react-native-svgはposthog-react-nativeの必須 peer dependency(サーベイ機能で使用)であり、併せてインストールする必要があります。- React Navigation v7 との互換性を保つため、
PostHogProviderはNavigationContainerの内側に配置してください。
コメント
Markdown 対応