Bucket
offiziellFunktionen kennzeichnen, Unternehmensdaten verwalten und den Zugriff auf Funktionen mit Bucket steuern.
Was kann man mit Bucket MCP machen?
- Initialize a Reflag project — Führen Sie
initaus, um einereflag.config.jsonmit Ihrer App-ID und den Ausgabeeinstellungen für den Typ zu erstellen. - Create and bootstrap a flag in one step — Verwenden Sie
new, um das Projekt zu initialisieren, ein Flag zu erstellen und gleichzeitig TypeScript-Typen zu generieren. - Create a feature flag — Führen Sie
flags createmit einem Namen und optionalem Schlüssel aus, um Ihrer Reflag-App ein neues Flag hinzuzufügen. - Generate TypeScript types for flags — Führen Sie
flags typesaus, um Typdefinitionen für React oder Node aus Ihren aktuellen Flags zu erstellen. - List all flags for an app — Führen Sie
flags listaus, um vorhandene Flags und deren Konfigurationen anzuzeigen. - Set up AI editor rules for Reflag — Führen Sie
rulesaus, um Cursor- oder Copilot-Anweisungen hinzuzufügen, die KI-Tools helfen, Ihre Flags zu verstehen.
Dokumentation
Reflag CLI
Befehlszeilenschnittstelle zur Interaktion mit Reflag-Diensten. Die CLI ermöglicht es Ihnen, Apps, Flags, Authentifizierung zu verwalten und TypeScript-Typen für Ihre Reflag-Flags zu generieren. Mit diesem Tool können Sie Ihren Flagging-Workflow direkt von Ihrem Terminal aus optimieren.
Installation
Installieren Sie die CLI als Entwicklungsabhängigkeit in Ihrem Projekt:
npm
npm install --save-dev @reflag/cli
yarn
yarn add --dev @reflag/cli
Führen Sie den Befehl new im Stammverzeichnis Ihres Projekts aus, um die CLI zu initialisieren, ein Flag zu erstellen und TypeScript-Typen in einem Schritt zu generieren:
npm
npx reflag new
yarn
yarn reflag new
Migration vom Bucket SDK
Wenn Sie von der Bucket CLI migrieren, sind hier die wichtigsten Änderungen, die Sie beachten sollten:
- Befehlsname: Geändert von
bucketzureflag - Typdefinitionsdatei: Umbenannt von
features.d.tszuflags.d.ts(entfernen Sie die alte Datei manuell, falls sie eingecheckt war) - Authentifizierungsdatei: Geändert von
.bucket-authzu.reflag-auth(umbenennen oder alte Datei entfernen) - Konfigurationsdatei: Geändert von
bucket.config.jsonzureflag.config.json(umbenennen oder alte Datei entfernen) - Befehl: Der Befehl
featuresheißt jetztflags - Umgebungsvariable: Verwenden Sie
REFLAG_API_KEYanstelle vonBUCKET_API_KEY
Wichtig: Aktualisieren Sie Ihre Skripte, Build-Schritte und .gitignore-Muster, um diese Änderungen widerzuspiegeln.
Einzelne Befehle
Für mehr Kontrolle können Sie jeden Befehl einzeln ausführen:
Reflag in Ihrem Projekt initialisieren (falls noch nicht eingerichtet)
npx reflag init
Ein neues Flag erstellen
npx reflag flags create "My Flag"
TypeScript-Typen für Ihre Flags generieren
npx reflag flags types
Konfiguration
Die CLI erstellt eine reflag.config.json-Datei in Ihrem Projektverzeichnis, wenn Sie reflag init ausführen. Diese Datei enthält alle notwendigen Einstellungen für Ihre Reflag-Integration.
Struktur der Konfigurationsdatei
Hier sind alle verfügbaren Konfigurationsoptionen in der reflag.config.json-Datei:
{ "$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" } ] }
| Option | Beschreibung | Standard |
|---|---|---|
| $schema | Autovervollständigung für die Konfiguration. latest kann durch eine bestimmte Version ersetzt werden. | "https://unpkg.com/@reflag/cli@latest/schema.json" |
| baseUrl | Basis-URL für Reflag-Dienste. | "https://app.reflag.com" |
| apiUrl | API-URL für Reflag-Dienste (überschreibt baseUrl für API-Aufrufe). | "https://app.reflag.com/api" |
| appId | Ihre Reflag-Anwendungs-ID. | Erforderlich |
| typesOutput | Pfad(e), unter denen TypeScript-Typen generiert werden. Kann ein String oder ein Array von Objekten mit Pfad- und Formateigenschaften sein. Verfügbare Formate: react und node. | "gen/flags.ts" mit Format "react" |
Sie können diese Einstellungen mit Befehlszeilenoptionen für einzelne Befehle überschreiben.
Befehle
reflag init
Initialisiert eine neue Reflag-Konfiguration in Ihrem Projekt. Dies erstellt eine reflag.config.json-Datei mit Ihren Einstellungen und fragt nach erforderlichen Informationen, die nicht über Optionen bereitgestellt wurden.
npx reflag init [--overwrite]
Optionen:
--overwrite: Vorhandene Konfigurationsdatei überschreiben, falls vorhanden.--app-id <id>: Die Anwendungs-ID festlegen.--key-format <format>: Das Schlüsselformat für Flags festlegen.
reflag new [flagName]
All-in-One-Befehl für einen schnellen Einstieg. Dieser Befehl kombiniert init, Flag-Erstellung und Typgenerierung in einem einzigen Schritt. Verwenden Sie dies für den schnellsten Weg, um mit Reflag loszulegen.
npx reflag new "My Flag" [--app-id ap123456789] [--key my-flag] [--key-format custom] [--out gen/flags.ts] [--format react]
Optionen:
--key: Spezifischer Schlüssel für das Flag.--app-id: Zu verwendende App-ID.--key-format: Format für Flag-Schlüssel (custom, snake, camel, etc.).--out: Pfad zur Generierung von TypeScript-Typen.--format: Format der generierten Typen (react oder node).
Wenn Sie mehr Kontrolle über jeden Schritt bevorzugen, können Sie stattdessen die einzelnen Befehle (init, flags create, flags types) verwenden.
reflag login
Authentifizieren Sie sich mit Ihrem Reflag-Konto. Dies speichert Ihre Anmeldeinformationen sicher für nachfolgende Vorgänge.
npx reflag login
reflag logout
Melden Sie sich von Ihrem Reflag-Konto ab und entfernen Sie gespeicherte Anmeldeinformationen.
npx reflag logout
reflag flags
Verwalten Sie Ihre Reflag-Flags mit diesen Unterbefehlen:
reflag flags create [flagName]
Erstellen Sie ein neues Flag in Ihrer Reflag-App. Der Befehl führt Sie durch den Flag-Erstellungsprozess mit interaktiven Eingabeaufforderungen, wenn keine Optionen angegeben werden.
npx reflag flags create "My Flag" [--app-id ap123456789] [--key my-flag] [--key-format custom]
Optionen:
--key: Spezifischer Schlüssel für das Flag.--app-id: Zu verwendende App-ID.--key-format: Format für Flag-Schlüssel.
reflag flags list
Listet alle Flags für die aktuelle App auf. Dies hilft Ihnen zu visualisieren, welche Flags verfügbar sind und wie ihre aktuellen Konfigurationen aussehen.
npx reflag flags list [--app-id ap123456789]
Optionen:
--app-id: Zu verwendende App-ID.
reflag flags types
Generieren Sie TypeScript-Typen für Ihre Flags. Dies gewährleistet Typsicherheit bei der Verwendung von Reflag-Flags in Ihren TypeScript/JavaScript-Anwendungen.
npx reflag flags types [--app-id ap123456789] [--out gen/flags.ts] [--format react]
Optionen:
--app-id: Zu verwendende App-ID.--out: Pfad zur Generierung von TypeScript-Typen.--format: Format der generierten Typen (react oder node).
reflag apps
Befehle zur Verwaltung von Reflag-Apps.
Globale Optionen
Diese Optionen können mit jedem Befehl verwendet werden:
--debug: Debug-Modus für ausführliche Ausgabe aktivieren.--base-url <url>: Die Basis-URL für die Reflag-API festlegen.--api-url <url>: Die API-URL direkt festlegen (überschreibt die Basis-URL).--api-key <key>: Reflag-API-Schlüssel für nicht-interaktive Authentifizierung.--help: Hilfeinformationen für einen Befehl anzeigen.
KI-unterstützte Entwicklung
Reflag bietet leistungsstarke KI-unterstützte Entwicklungsfunktionen durch Regeln und das Model Context Protocol (MCP). Diese Funktionen helfen Ihren KI-Entwicklungstools, Ihre Flags besser zu verstehen und genauere Unterstützung zu bieten.
Reflag-Regeln (Empfohlen)
Der Befehl rules hilft Ihnen, KI-spezifische Regeln für Ihr Projekt einzurichten. Diese Regeln ermöglichen es KI-Tools, besser zu verstehen, wie sie mit Reflag-Flags arbeiten und wie diese in Ihrer Codebasis verwendet werden sollten.
npx reflag rules [--format <cursor|copilot>] [--yes]
Optionen:
--format: Format, in dem Regeln hinzugefügt werden sollen:cursor: Fügt Regeln zu.cursor/rules/reflag.mdcfür die Cursor IDE-Integration hinzu.copilot: Fügt Regeln zu.github/copilot-instructions.mdfür die GitHub Copilot-Integration hinzu.
--yes: Bestätigungsaufforderungen überspringen und vorhandene Dateien ohne Nachfrage überschreiben.
Dieser Befehl fügt Ihrem Projekt Regeln hinzu, die KI-Tools Kontext darüber geben, wie Reflag-Flags eingerichtet und verwendet werden. Für das Copilot-Format werden die Regeln in einem eigenen Abschnitt in der Datei hinzugefügt, sodass Sie andere Copilot-Anweisungen neben den Reflag-Regeln beibehalten können.
Model Context Protocol
Das Model Context Protocol (MCP) ist ein offenes Protokoll, das eine standardisierte Möglichkeit bietet, KI-Modelle mit verschiedenen Datenquellen und Werkzeugen zu verbinden. Im Kontext von Reflag ermöglicht MCP Ihrem Code-Editor, Ihre Flags, deren Zustände und ihre Beziehungen innerhalb Ihrer Codebasis zu verstehen. Dies schafft eine nahtlose Brücke zwischen Ihrem Flag-Management-Workflow und KI-gestützten Entwicklungstools. Der MCP-Server wird von Reflag gehostet, was den Einstieg erleichtert.
**Hinweis: Der Reflag mcp CLI-Befehl wurde zuvor für einen lokalen Server verwendet. In neueren Versionen der Reflag CLI wurde der Befehl mcp jedoch umgewidmet, um Ihnen bei der Verbindung mit dem neuen entfernten MCP-Server zu helfen.**
MCP einrichten
Der Befehl mcp hilft Ihnen, Ihren Editor oder KI-Client für die Verbindung mit dem entfernten MCP-Server von Reflag zu konfigurieren. Dies ermöglicht es Ihren KI-Tools, Ihre Flags zu verstehen und kontextbezogenere Unterstützung zu bieten.
npx reflag mcp [--editor ] [--scope <local|global>]
Optionen:
--editor: Der zu konfigurierende Editor/Client:cursor: Cursor IDEvscode: Visual Studio Codeclaude: Claude Desktopwindsurf: Windsurf
--scope: Ob die Einstellungen global oder lokal für das Projekt konfiguriert werden sollen.
Der Befehl führt Sie durch:
- Auswahl des zu konfigurierenden Editors/Clients.
- Auswahl der Reflag-App, mit der Sie sich verbinden möchten.
- Entscheidung zwischen globaler oder projektlokaler Konfiguration.
- Einrichtung der entsprechenden Konfigurationsdatei für Ihren gewählten Editor.
Hinweis: Das Setup verwendet mcp-remote als Kompatibilitätsschicht, die es dem entfernt gehosteten Reflag MCP-Server ermöglicht, mit allen Editoren/Clients zu arbeiten, die MCP STDIO-Server unterstützen. Wenn Ihr Editor/Client HTTP Streaming mit OAuth unterstützt, können Sie sich direkt mit dem Reflag MCP-Server verbinden.
Verwendung in CI/CD-Pipelines (Beta)
Die Reflag CLI ist für den nahtlosen Einsatz in CI/CD-Pipelines konzipiert. Verwenden Sie für automatisierte Umgebungen, in denen eine interaktive Anmeldung nicht möglich ist, die Option --api-key oder geben Sie den API-Schlüssel in der Umgebungsvariable REFLAG_API_KEY an.
Typen in CI/CD generieren
npx reflag apps list --api-key $REFLAG_API_KEY
Wichtige Einschränkungen:
- Bei Verwendung von
--api-keysind die Befehleloginundlogoutdeaktiviert - API-Schlüssel umgehen alle interaktiven Authentifizierungsabläufe
- API-Schlüssel sind nur an eine App gebunden. Befehle wie
apps listgeben nur die gebundene App zurück - Speichern Sie API-Schlüssel sicher mit der Geheimnisverwaltung Ihrer CI/CD-Plattform
Beispiel für einen CI-Workflow:
GitHub Actions Beispiel
- name: Typen generieren run: npx reflag flags types --api-key ${{ secrets.REFLAG_API_KEY }}
GitHub Actions Beispiel (mit Umgebungsvariable):
- name: Typen generieren (Umgebung) run: npx reflag flags types env: REFLAG_API_KEY: ${{ secrets.REFLAG_CI_API_KEY }}
Entwicklung
CLI bauen
yarn build
CLI lokal ausführen
yarn reflag [command]
Linten und Code formatieren
yarn lint yarn format
Anforderungen
- Node.js >=18.0.0
Lizenz
MIT License Copyright (c) 2025 Bucket ApS