fusion-framework-feature-toggling について
Fusion Framework の機能フラグを扱う開発者向けスキルです。現在は非推奨で、`fusion-app-react-dev` に統合されており、履歴参照用に残されています。
主な機能
- 01Fusion Framework の機能フラグ案内
- 02設定、利用、レビュー、展開、削除をカバー
- 03Fusion MCP を優先し、同梱資料を代替手段として利用
- 04API の曖昧さと確認事項を明示
活用シーン
- 01Fusion Framework アプリへの機能フラグ追加
- 02フラグ設定や展開計画のレビュー
- 03フラグと関連コードの削除
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ equinor/ fusion-skills --skill fusion-framework-feature-togglingインストール後、Claude Code で/fusion-framework-feature-togglingを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
CHANGELOG.mdassets/offline-feature-toggle-checklist.mdoffline-prompt-template.mdREADME.mdreferences/public-framework-reference.md詳細
非推奨 — このスキルは
fusion-app-react-devに統合されました。 Fusion Framework の機能フラグに関するガイダンスには、fusion-app-react-devとそのリファレンスreferences/using-feature-flags.mdを使用してください。 このスキルは過去の経緯を参照する目的でのみ保持されており、今後のリリースで削除される予定です。
Fusion Framework の機能切り替え
使用するタイミング
開発者が Fusion Framework の機能切り替えに関する、根拠に基づいたサポートを必要としている場合にこのスキルを使用します。
よくあるきっかけ:
- 「Fusion Framework アプリに機能フラグを追加するのを手伝ってください」
- 「Fusion Framework で useFeature を使うにはどうすればよいですか?」
- 「ここではどの Fusion Framework の機能フラグ API を使えばよいですか?」
- 「この Fusion の機能切り替えの設定をレビューしてください」
- 「この Fusion の機能フラグをどのように展開し、後で削除すればよいですか?」
使用しないタイミング
次の場合はこのスキルを使用しないでください:
- 一般的な LaunchDarkly や SaaS のフラグプラットフォームの設定
- Fusion Framework の範囲外で行う、バックエンドのみのロールアウトシステム
- フレームワークの根拠がない状態で、新しい機能切り替えアーキテクチャを考案する場合
- Fusion 以外の React やフロントエンドのフラグ設定に関するガイダンス
必要な入力
回答する前に、以下を確認してください:
- 作業がアプリレベルかフレームワークレベルか
- 開発者の目的:フラグの追加、レビュー、デバッグ、展開、削除のいずれか
- 想定している機能キー、または機能の説明
- フラグに永続化、URL による制御、型付きの値が必要かどうか
- 適用する必要のある現在のコードのコンテキスト
重要な情報が不足している場合は、適切なフレームワークのインターフェースを選ぶために必要な最小限の質問だけをしてください。
手順
-
依頼が Fusion Framework の機能トグルに関するものかを確認します。
- 汎用的なフラグプラットフォームに関する作業の場合、このスキルを無理に適用しないでください。
-
利用可能な場合は、まず Fusion MCP を使用します。
- ユーザーの表現と、
feature flag、feature toggling、useFeature、enableFeatureFlag、enableFeatureFlaggingなどの機能トグル関連語を使って、mcp_fusion_search_frameworkを検索します。 - 最初の検索結果が不十分な場合は、1 回だけ絞り込み検索を行います。
- フレームワークの実装詳細を超えた幅広い製品ガイダンスが必要な場合に限り、
mcp_fusion_search_docsを使用します。
- ユーザーの表現と、
-
Fusion MCP が利用できない、または結論が得られない場合は、そのことを明確に伝え、同梱の代替資料に切り替えます。
- 代替情報源として references/public-framework-reference.md を使用します。
- サーバーを利用できないユーザーには、assets/offline-feature-toggle-checklist.md と assets/offline-prompt-template.md を使用します。
-
ユーザーが必要としている支援の種類を特定します。
- 新しいフラグの設定:設定箇所を説明し、最小限の例を示します。
- コンポーネントでの使用:
useFeature、トグルの動作、値の扱いを説明します。 - レビューまたは段階的な展開:チェックリストを適用し、所有者、テスト、削除の不足を指摘します。
- 削除:フラグ定義、使用箇所、同時に削除すべき不要な分岐を特定します。
-
現時点で確認できる Fusion Framework のエントリーポイントを優先します。
- アプリレベルの例:
@equinor/fusion-framework-react-app/feature-flagのenableFeatureFlag(appConfigurator, [...])。 - フレームワークレベルの例:
@equinor/fusion-framework-module-feature-flagのenableFeatureFlagging(config, builder => ...)。 - プラグインの例:
createLocalStoragePluginとcreateUrlPlugin。 - フックの使用:アプリパッケージの
useFeature(key)、またはフレームワークパッケージのプロバイダーベースのuseFeature(provider, key)。
- アプリレベルの例:
-
公開情報が曖昧な場合は、推測せずに明示します。
- 公開情報には現在、
readonlyとreadOnlyの両方が記載されています。コードを確定する前に、ローカルの型定義を確認するようユーザーに伝えます。 - 公開ドキュメントでは、将来的な機能フラグの API サービスへの移行方針に言及しています。稼働中の MCP またはローカルコードで確認できない限り、それを現在の標準として提示しないでください。
- 公開情報には現在、
-
API 名だけでなく、実用的なガイダンスを提供します。
- 場当たり的な文字列リテラルではなく、安定した列挙型または定数キーを優先します。
- フラグをユーザーやレビュー担当者に表示する場合は、
titleとdescriptionを含めます。 - オン/オフ状態に加えて動作の設定が必要な場合に限り、
valueを使用します。 - フラグを簡単に削除できるようにし、所有者を定め、削除のきっかけを明示します。
- ローカルアプリのトグルと、フレームワーク全体またはプラグインを介したトグルを区別します。
-
根拠に基づく簡潔な回答を返します。
- ガイダンスの情報源が Fusion MCP か、同梱の代替資料かを明記します。
- 関連するパッケージ名と、適用可能な具体的なコード例または参照元のパスを記載します。
- 段階的な展開、テスト、削除に関するガイダンスを含めます。
- 最後に、明示すべき不確実性や、未完了の確認事項があれば記載します。
代表的な依頼
- 「Fusion Framework アプリに機能フラグを追加するのを手伝ってください。」
- 「Fusion Framework で useFeature を使う方法を教えてください。」
- 「この Fusion Framework の機能トグル設定をレビューして、不足している削除作業を教えてください。」
期待する出力
以下を返します。
- ガイダンスの情報源が Fusion MCP か、同梱の代替資料か
- 関連する Fusion Framework のエントリーポイントとパッケージ
- 応用できる具体的なコード例または参照元のパスを 1 つ
- 実装、段階的な展開、削除に関する簡潔なチェックリスト
- API の詳細に曖昧さがある場合の明示的な確認事項
参照資料
アセット
安全性と制約
決して次のことを行わないでください。
- Fusion Framework のパッケージ、フック、モジュール名を捏造する
- サーバーが利用できないのに、Fusion MCP の結果が存在するかのように装う
- SaaS の機能フラグに関するアドバイスを、Fusion Framework の動作であるかのように一般化する
- 所有者とクリーンアップについて触れずに、フラグを残し続ける
必ず次のことを行ってください。
- まず Fusion MCP を優先し、次にバンドルされた公開ソースのフォールバックを使用する
- 確認済みのフレームワーク API と一般的なロールアウトのガイダンスを分ける
- 公開ソース間で相違がある場合は、API やバージョンの曖昧さを明示する
- 小さく、簡単に応用できる例にする