Bucket
oficialMarque características, administre datos de la empresa y controle el acceso a funciones usando Bucket.
¿Qué puedes hacer con Bucket MCP?
- Initialize project setup — Pídele al asistente que ejecute
reflag initpara crear unreflag.config.jsoncon tu ID de aplicación y configuración. - Create feature flags — Haz que el asistente ejecute
reflag flags create "My Flag"para agregar una nueva bandera con clave y formato personalizados opcionales. - Generate TypeScript types — Pídele al asistente que ejecute
reflag flags typespara producir definiciones de banderas con seguridad de tipos para React o Node. - List existing flags — Indica al asistente que ejecute
reflag flags listpara ver todas las banderas configuradas para tu aplicación actual. - Configure AI assistant rules — Pídele al asistente que ejecute para agregar reglas de contexto de Reflag para Cursor o Copilot.
- Set up MCP connection — Haz que el asistente ejecute para conectar tu editor al servidor remoto de Reflag MCP.
Documentación
CLI de Reflag
Interfaz de línea de comandos para interactuar con los servicios de Reflag. La CLI te permite gestionar aplicaciones, flags, autenticación y generar tipos de TypeScript para tus flags de Reflag. Con esta herramienta, puedes optimizar tu flujo de trabajo de flags directamente desde tu terminal.
Instalación
Instala la CLI como una dependencia de desarrollo en tu proyecto:
# npm
npm install --save-dev @reflag/cli
# yarn
yarn add --dev @reflag/cli
Ejecuta el comando new desde el directorio raíz de tu proyecto para inicializar la CLI, crear un flag y generar tipos de TypeScript en un solo paso:
# npm
npx reflag new
# yarn
yarn reflag new
Migración desde el SDK de Bucket
Si estás migrando desde la CLI de Bucket, estos son los cambios clave que debes tener en cuenta:
- Nombre del comando: Cambió de
bucketareflag - Archivo de definiciones de tipos: Renombrado de
features.d.tsaflags.d.ts(elimina manualmente el archivo anterior si fue confirmado) - Archivo de autenticación: Cambió de
.bucket-autha.reflag-auth(renombra o elimina el archivo anterior) - Archivo de configuración: Cambió de
bucket.config.jsonareflag.config.json(renombra o elimina el archivo anterior) - Comando: El comando
featuresahora esflags - Variable de entorno: Usa
REFLAG_API_KEYen lugar deBUCKET_API_KEY
Importante: Actualiza tus scripts, pasos de compilación y patrones de .gitignore para reflejar estos cambios.
Comandos individuales
Para tener más control, puedes ejecutar cada comando individualmente:
# Initialize Reflag in your project (if not already setup)
npx reflag init
# Create a new flag
npx reflag flags create "My Flag"
# Generate TypeScript types for your flags
npx reflag flags types
Configuración
La CLI crea un archivo reflag.config.json en el directorio de tu proyecto cuando ejecutas reflag init. Este archivo contiene todos los ajustes necesarios para tu integración con Reflag.
Estructura del archivo de configuración
Aquí están todas las opciones de configuración disponibles en el archivo 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"
}
]
}
| Opción | Descripción | Predeterminado |
|---|---|---|
$schema | Autocompletado para la configuración. latest puede reemplazarse con una versión específica. | " https://unpkg.com/@reflag/cli@latest/schema.json " |
baseUrl | URL base para los servicios de Reflag. | " https://app.reflag.com " |
apiUrl | URL de API para los servicios de Reflag (anula baseUrl para llamadas de API). | " https://app.reflag.com/api " |
appId | Tu ID de aplicación de Reflag. | Requerido |
typesOutput | Ruta(s) donde se generarán los tipos de TypeScript. Puede ser una cadena o un arreglo de objetos con propiedades path y format. Formatos disponibles: react y node. | "gen/flags.ts" con formato "react" |
Puedes anular estos ajustes usando opciones de línea de comandos para comandos individuales.
Comandos
reflag init
Inicializa una nueva configuración de Reflag en tu proyecto. Esto crea un archivo reflag.config.json con tus ajustes y solicita cualquier información requerida que no se haya proporcionado mediante opciones.
npx reflag init [--overwrite]
Opciones:
--overwrite: Sobrescribe el archivo de configuración existente si hay uno.--app-id <id>: Establece el ID de la aplicación.--key-format <format>: Establece el formato de clave para los flags.
reflag new [flagName]
Comando todo-en-uno para comenzar rápidamente. Este comando combina init, la creación de flags y la generación de tipos en un solo paso. Úsalo para la forma más rápida de ponerte en marcha con Reflag.
npx reflag new "My Flag" [--app-id ap123456789] [--key my-flag] [--key-format custom] [--out gen/flags.ts] [--format react]
Opciones:
--key: Clave específica para el flag.--app-id: ID de aplicación a usar.--key-format: Formato para las claves de flags (custom, snake, camel, etc.).--out: Ruta para generar tipos de TypeScript.--format: Formato de los tipos generados (react o node).
Si prefieres tener más control sobre cada paso, puedes usar los comandos individuales (init, flags create, flags types) en su lugar.
reflag login
Autentícate con tu cuenta de Reflag. Esto almacena tus credenciales de forma segura para operaciones posteriores.
npx reflag login
reflag logout
Cierra sesión de tu cuenta de Reflag y elimina las credenciales almacenadas.
npx reflag logout
reflag flags
Gestiona tus flags de Reflag con estos subcomandos:
reflag flags create [flagName]
Crea un nuevo flag en tu aplicación de Reflag. El comando te guía a través del proceso de creación de flags con indicaciones interactivas si no se proporcionan opciones.
npx reflag flags create "My Flag" [--app-id ap123456789] [--key my-flag] [--key-format custom]
Opciones:
--key: Clave específica para el flag.--app-id: ID de aplicación a usar.--key-format: Formato para las claves de flags.
reflag flags list
Lista todos los flags de la aplicación actual. Esto te ayuda a visualizar qué flags están disponibles y sus configuraciones actuales.
npx reflag flags list [--app-id ap123456789]
Opciones:
--app-id: ID de aplicación a usar.
reflag flags types
Genera tipos de TypeScript para tus flags. Esto garantiza la seguridad de tipos al usar flags de Reflag en tus aplicaciones TypeScript/JavaScript.
npx reflag flags types [--app-id ap123456789] [--out gen/flags.ts] [--format react]
Opciones:
--app-id: ID de aplicación a usar.--out: Ruta para generar tipos de TypeScript.--format: Formato de los tipos generados (react o node).
reflag apps
Comandos para gestionar aplicaciones de Reflag.
Opciones globales
Estas opciones se pueden usar con cualquier comando:
--debug: Habilita el modo de depuración para salida detallada.--base-url <url>: Establece la URL base para la API de Reflag.--api-url <url>: Establece la URL de API directamente (anula la URL base).--api-key <key>: Clave de API de Reflag para autenticación no interactiva.--help: Muestra información de ayuda para un comando.
Desarrollo asistido por IA
Reflag proporciona potentes capacidades de desarrollo asistido por IA mediante reglas y Protocolo de Contexto de Modelo (MCP). Estas funciones ayudan a tus herramientas de desarrollo de IA a comprender mejor tus flags y brindar asistencia más precisa.
El comando rules te ayuda a configurar reglas específicas de IA para tu proyecto. Estas reglas permiten que las herramientas de IA comprendan mejor cómo trabajar con los flags de Reflag y cómo deben usarse en tu código.
npx reflag rules [--format <cursor|copilot>] [--yes]
Opciones:
--format: Formato para agregar reglas:cursor: Agrega reglas a.cursor/rules/reflag.mdcpara la integración con Cursor IDE.copilot: Agrega reglas a.github/copilot-instructions.mdpara la integración con GitHub Copilot.
--yes: Omite los mensajes de confirmación y sobrescribe los archivos existentes sin preguntar.
Este comando agrega reglas a tu proyecto que proporcionan contexto a las herramientas de IA sobre cómo configurar y usar los flags de Reflag. Para el formato de copilot, las reglas se agregan a una sección dedicada en el archivo, lo que te permite mantener otras instrucciones de copilot junto con las reglas de Reflag.
Protocolo de Contexto de Modelo
El Protocolo de Contexto de Modelo (MCP) es un protocolo abierto que proporciona una forma estandarizada de conectar modelos de IA a diferentes fuentes de datos y herramientas. En el contexto de Reflag, MCP permite que tu editor de código comprenda tus flags, sus estados y sus relaciones dentro de tu código. Esto crea un puente fluido entre tu flujo de trabajo de gestión de flags y las herramientas de desarrollo impulsadas por IA. El servidor MCP está alojado por Reflag, lo que facilita comenzar.
**Nota: El comando mcp de la CLI de Reflag se usaba anteriormente para un servidor _local. Sin embargo, en versiones recientes de la CLI de Reflag, el comando mcp ha sido reutilizado para ayudarte a conectarte al nuevo servidor MCP remoto.**_
Configuración de MCP
El comando mcp te ayuda a configurar tu editor o cliente de IA para conectarse al servidor MCP remoto de Reflag. Esto permite que tus herramientas de IA comprendan tus flags y brinden asistencia más contextual.
npx reflag mcp [--editor <editor>] [--scope <local|global>]
Opciones:
--editor: El editor/cliente a configurar:cursor: Cursor IDEvscode: Visual Studio Codeclaude: Claude Desktopwindsurf: Windsurf
--scope: Si se debe configurar globalmente o localmente para el proyecto.
El comando te guiará a través de:
- Seleccionar qué editor/cliente configurar.
- Elegir a qué aplicación de Reflag conectarse.
- Decidir entre configuración global o local del proyecto.
- Configurar el archivo de configuración apropiado para tu editor elegido.
Nota: La configuración usa mcp-remote como una capa de compatibilidad que permite que el servidor MCP remoto alojado de Reflag funcione con todos los editores/clientes que admiten servidores MCP STDIO. Si tu editor/cliente admite HTTP Streaming con OAuth, puedes conectarte directamente al servidor MCP de Reflag.
Uso en pipelines de CI/CD
La CLI de Reflag está diseñada para funcionar sin problemas en pipelines de CI/CD. Para entornos automatizados donde el inicio de sesión interactivo no es posible, usa la opción --api-key o especifica la clave de API en la variable de entorno REFLAG_API_KEY.
# Generate types in CI/CD
npx reflag apps list --api-key $REFLAG_API_KEY
Restricciones importantes:
- Al usar
--api-key, los comandosloginylogoutestán deshabilitados - Las claves de API omiten todos los flujos de autenticación interactivos
- Las claves de API están vinculadas a una sola aplicación. Comandos como
apps listsolo devolverán la aplicación vinculada - Almacena las claves de API de forma segura usando la gestión de secretos de tu plataforma de CI/CD
Ejemplo de flujo de trabajo de CI:
# GitHub Actions example
- name: Generate types
run: npx reflag flags types --api-key ${{ secrets.REFLAG_API_KEY }}
# GitHub Actions example (using environment):
- name: Generate types (environment)
run: npx reflag flags types
env:
REFLAG_API_KEY: ${{ secrets.REFLAG_CI_API_KEY }}
Desarrollo
# Build the CLI
yarn build
# Run the CLI locally
yarn reflag [command]
# Lint and format code
yarn lint
yarn format
Requisitos
- Node.js >=18.0.0
Licencia
Licencia MIT Copyright (c) 2025 Bucket ApS