Bucket MCP Server
公式フラグ機能を管理し、会社データを操作し、Bucketを使用して機能アクセスを制御します。
ドキュメント
Reflag CLI
Reflag サービスとやり取りするためのコマンドラインインターフェースです。この CLI を使用すると、アプリ、フラグ、認証の管理、および Reflag フラグ用の TypeScript 型の生成を行うことができます。このツールを使用することで、ターミナルから直接フラグ管理ワークフローを効率化できます。
インストール
開発依存関係として CLI をプロジェクトにインストールします。
npm
npm install --save-dev @reflag/cli
yarn
yarn add --dev @reflag/cli
プロジェクトのルートディレクトリから new コマンドを実行して、CLI の初期化、フラグの作成、TypeScript 型の生成を一度に行います。
npm
npx reflag new
yarn
yarn reflag new
Bucket SDK からの移行
Bucket CLI から移行する場合、注意すべき主な変更点は次のとおりです。
- コマンド名:
bucketからreflagに変更されました - 型定義ファイル:
features.d.tsからflags.d.tsに名前が変更されました(コミットされていた場合は手動で古いファイルを削除してください) - 認証ファイル:
.bucket-authから.reflag-authに変更されました(古いファイルの名前を変更するか削除してください) - 設定ファイル:
bucket.config.jsonからreflag.config.jsonに変更されました(古いファイルの名前を変更するか削除してください) - コマンド:
featuresコマンドはflagsになりました - 環境変数:
BUCKET_API_KEYの代わりにREFLAG_API_KEYを使用してください
重要: これらの変更を反映するために、スクリプト、ビルドステップ、.gitignore パターンを更新してください。
個別のコマンド
より詳細に制御するには、各コマンドを個別に実行できます。
プロジェクトで Reflag を初期化します(まだセットアップされていない場合)
npx reflag init
新しいフラグを作成します
npx reflag flags create "My Flag"
フラグ用の TypeScript 型を生成します
npx reflag flags types
設定
CLI は、reflag init を実行すると、プロジェクトディレクトリに reflag.config.json ファイルを作成します。このファイルには、Reflag 統合に必要なすべての設定が含まれています。
設定ファイルの構造
reflag.config.json ファイルで利用可能なすべての設定オプションは次のとおりです。
{ "$schema": "https://unpkg.com/@reflag/cli@latest/schema.json", "baseUrl": "https://app.reflag.com", "apiUrl": "https://app.reflag.com/api", "appId": "ap123456789", "typesOutput": [ { "path": "gen/flags.d.ts", "format": "react" } ] }
| オプション | 説明 | デフォルト |
|---|---|---|
| $schema | 設定のオートコンプリート。latest は特定のバージョンに置き換えることができます。 | "https://unpkg.com/@reflag/cli@latest/schema.json" |
| baseUrl | Reflag サービスのベース URL。 | "https://app.reflag.com" |
| apiUrl | Reflag サービスの API URL(API 呼び出しの baseUrl を上書きします)。 | "https://app.reflag.com/api" |
| appId | Reflag アプリケーション ID。 | 必須 |
| typesOutput | TypeScript 型が生成されるパス。文字列、または path と format プロパティを持つオブジェクトの配列を指定できます。利用可能なフォーマット: react と node。 | フォーマット "react" の "gen/flags.ts" |
これらの設定は、個々のコマンドのコマンドラインオプションを使用して上書きできます。
コマンド
reflag init
プロジェクトで新しい Reflag 設定を初期化します。これにより、設定を含む reflag.config.json ファイルが作成され、オプションで提供されていない必要な情報の入力を求められます。
npx reflag init [--overwrite]
オプション:
--overwrite: 既存の設定ファイルがある場合に上書きします。--app-id <id>: アプリケーション ID を設定します。--key-format <format>: フラグのキー形式を設定します。
reflag new [flagName]
すぐに開始するためのオールインワンコマンドです。このコマンドは、init、フラグ作成、型生成を 1 つのステップにまとめます。Reflag を最速で起動して実行するために使用します。
npx reflag new "My Flag" [--app-id ap123456789] [--key my-flag] [--key-format custom] [--out gen/flags.ts] [--format react]
オプション:
--key: フラグの特定のキー。--app-id: 使用するアプリ ID。--key-format: フラグキーの形式(custom、snake、camel など)。--out: TypeScript 型を生成するパス。--format: 生成される型の形式(react または node)。
各ステップをより詳細に制御したい場合は、代わりに個別のコマンド(init、flags create、flags types)を使用できます。
reflag login
Reflag アカウントで認証します。これにより、後続の操作のために資格情報が安全に保存されます。
npx reflag login
reflag logout
Reflag アカウントからサインアウトし、保存された資格情報を削除します。
npx reflag logout
reflag flags
次のサブコマンドで Reflag フラグを管理します。
reflag flags create [flagName]
Reflag アプリで新しいフラグを作成します。オプションが提供されていない場合、コマンドはインタラクティブなプロンプトでフラグ作成プロセスをガイドします。
npx reflag flags create "My Flag" [--app-id ap123456789] [--key my-flag] [--key-format custom]
オプション:
--key: フラグの特定のキー。--app-id: 使用するアプリ ID。--key-format: フラグキーの形式。
reflag flags list
現在のアプリのすべてのフラグを一覧表示します。これにより、利用可能なフラグとその現在の設定を視覚化できます。
npx reflag flags list [--app-id ap123456789]
オプション:
--app-id: 使用するアプリ ID。
reflag flags types
フラグ用の TypeScript 型を生成します。これにより、TypeScript/JavaScript アプリケーションで Reflag フラグを使用する際の型安全性が確保されます。
npx reflag flags types [--app-id ap123456789] [--out gen/flags.ts] [--format react]
オプション:
--app-id: 使用するアプリ ID。--out: TypeScript 型を生成するパス。--format: 生成される型の形式(react または node)。
reflag apps
Reflag アプリを管理するためのコマンド。
グローバルオプション
これらのオプションは任意のコマンドで使用できます。
--debug: 詳細出力のデバッグモードを有効にします。--base-url <url>: Reflag API のベース URL を設定します。--api-url <url>: API URL を直接設定します(ベース URL を上書きします)。--api-key <key>: 非インタラクティブ認証用の Reflag API キー。--help: コマンドのヘルプ情報を表示します。
AI 支援開発
Reflag は、ルールと Model Context Protocol (MCP) を通じて強力な AI 支援開発機能を提供します。これらの機能により、AI 開発ツールがフラグをよりよく理解し、より正確な支援を提供できるようになります。
Reflag ルール(推奨)
rules コマンドは、プロジェクトに AI 固有のルールを設定するのに役立ちます。これらのルールにより、AI ツールは Reflag フラグの操作方法と、コードベースでの使用方法をよりよく理解できるようになります。
npx reflag rules [--format <cursor|copilot>] [--yes]
オプション:
--format: ルールを追加する形式:cursor: Cursor IDE 統合用に.cursor/rules/reflag.mdcにルールを追加します。copilot: GitHub Copilot 統合用に.github/copilot-instructions.mdにルールを追加します。
--yes: 確認プロンプトをスキップし、確認なしで既存のファイルを上書きします。
このコマンドは、Reflag フラグの設定方法と使用方法に関するコンテキストを AI ツールに提供するルールをプロジェクトに追加します。copilot 形式の場合、ルールはファイル内の専用セクションに追加されるため、Reflag のルールと共に他の copilot 命令を維持できます。
Model Context Protocol
Model Context Protocol (MCP) は、AI モデルをさまざまなデータソースやツールに接続するための標準化された方法を提供するオープンプロトコルです。Reflag のコンテキストでは、MCP によりコードエディタがフラグ、その状態、およびコードベース内での関係を理解できるようになります。これにより、フラグ管理ワークフローと AI 搭載開発ツールの間にシームレスな橋渡しが生まれます。MCP サーバーは Reflag によってホストされているため、簡単に開始できます。
**注: Reflag mcp CLI コマンドは、以前は ローカル サーバーに使用されていました。ただし、Reflag CLI の最近のバージョンでは、mcp コマンドは、新しいリモート MCP サーバーへの接続を支援するために再利用されました。**
MCP のセットアップ
mcp コマンドは、エディタまたは AI クライアントが Reflag のリモート MCP サーバーに接続するように設定するのに役立ちます。これにより、AI ツールがフラグを理解し、よりコンテキストに応じた支援を提供できるようになります。
npx reflag mcp [--editor ] [--scope <local|global>]
オプション:
--editor: 設定するエディタ/クライアント:cursor: Cursor IDEvscode: Visual Studio Codeclaude: Claude Desktopwindsurf: Windsurf
--scope: 設定をグローバルに行うか、プロジェクトに対してローカルに行うか。
コマンドは次の手順をガイドします。
- 設定するエディタ/クライアントの選択。
- 接続する Reflag アプリの選択。
- グローバル設定とプロジェクトローカル設定の選択。
- 選択したエディタに適切な設定ファイルをセットアップ。
注: セットアップでは、リモートでホストされている Reflag MCP サーバーが MCP STDIO サーバーをサポートするすべてのエディタ/クライアントと連携できるようにする互換性レイヤーとして mcp-remote を使用します。エディタ/クライアントが OAuth を使用した HTTP ストリーミングをサポートしている場合は、Reflag MCP サーバーに直接接続できます。
CI/CD パイプラインでの使用(ベータ版)
Reflag CLI は、CI/CD パイプラインでシームレスに動作するように設計されています。インタラクティブなログインが不可能な自動化環境では、--api-key オプションを使用するか、REFLAG_API_KEY 環境変数で API キーを指定します。
CI/CD で型を生成
npx reflag apps list --api-key $REFLAG_API_KEY
重要な制限事項:
--api-keyを使用する場合、loginおよびlogoutコマンドは無効になります- API キーはすべてのインタラクティブな認証フローをバイパスします
- API キーは 1 つのアプリにのみバインドされます。
apps listなどのコマンドは、バインドされたアプリのみを返します - CI/CD プラットフォームのシークレット管理を使用して API キーを安全に保存します
CI ワークフローの例:
GitHub Actions の例
- name: Generate types run: npx reflag flags types --api-key ${{ secrets.REFLAG_API_KEY }}
GitHub Actions の例(環境を使用):
- name: Generate types (environment) run: npx reflag flags types env: REFLAG_API_KEY: ${{ secrets.REFLAG_CI_API_KEY }}
開発
CLI をビルド
yarn build
CLI をローカルで実行
yarn reflag [command]
コードのリントとフォーマット
yarn lint yarn format
要件
- Node.js >=18.0.0
ライセンス
MIT License Copyright (c) 2025 Bucket ApS