Bucket MCP Server
официальныйУправляйте функциями, данными компании и доступом к функциям с помощью Bucket.
Документация
Reflag CLI
Интерфейс командной строки для взаимодействия с сервисами Reflag. CLI позволяет управлять приложениями, флагами, аутентификацией и генерировать типы TypeScript для ваших флагов Reflag. С помощью этого инструмента вы можете оптимизировать рабочий процесс управления флагами прямо из терминала.
Установка
Установите 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 - Переменная окружения: Используйте
REFLAG_API_KEYвместоBUCKET_API_KEY
Важно: Обновите ваши скрипты, шаги сборки и шаблоны .gitignore, чтобы отразить эти изменения.
Отдельные команды
Для большего контроля вы можете выполнять каждую команду по отдельности:
Инициализировать Reflag в вашем проекте (если еще не настроено)
npx reflag init
Создать новый флаг
npx reflag flags create "My Flag"
Сгенерировать типы TypeScript для ваших флагов
npx reflag flags types
Конфигурация
CLI создает файл reflag.config.json в директории вашего проекта при запуске reflag init. Этот файл содержит все необходимые настройки для вашей интеграции с 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 | Базовый URL для сервисов Reflag. | "https://app.reflag.com" |
| apiUrl | URL API для сервисов Reflag (переопределяет baseUrl для вызовов API). | "https://app.reflag.com/api" |
| appId | Идентификатор вашего приложения Reflag. | Обязательно |
| typesOutput | Путь(и), по которым будут сгенерированы типы TypeScript. Может быть строкой или массивом объектов со свойствами path и format. Доступные форматы: react и node. | "gen/flags.ts" с форматом "react" |
Вы можете переопределить эти настройки с помощью параметров командной строки для отдельных команд.
Команды
reflag init
Инициализировать новую конфигурацию Reflag в вашем проекте. Создает файл reflag.config.json с вашими настройками и запрашивает любую необходимую информацию, не предоставленную через параметры.
npx reflag init [--overwrite]
Параметры:
--overwrite: Перезаписать существующий файл конфигурации, если он есть.--app-id <id>: Установить идентификатор приложения.--key-format <format>: Установить формат ключа для флагов.
reflag new [flagName]
Команда «все в одном» для быстрого старта. Эта команда объединяет init, создание флага и генерацию типов в одном шаге. Используйте ее для самого быстрого способа начать работу с Reflag.
npx reflag new "My Flag" [--app-id ap123456789] [--key my-flag] [--key-format custom] [--out gen/flags.ts] [--format react]
Параметры:
--key: Конкретный ключ для флага.--app-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: Используемый идентификатор приложения.--key-format: Формат ключей флагов.
reflag flags list
Вывести список всех флагов для текущего приложения. Это помогает визуализировать, какие флаги доступны и их текущие конфигурации.
npx reflag flags list [--app-id ap123456789]
Параметры:
--app-id: Используемый идентификатор приложения.
reflag flags types
Сгенерировать типы TypeScript для ваших флагов. Это обеспечивает безопасность типов при использовании флагов Reflag в ваших приложениях TypeScript/JavaScript.
npx reflag flags types [--app-id ap123456789] [--out gen/flags.ts] [--format react]
Параметры:
--app-id: Используемый идентификатор приложения.--out: Путь для генерации типов TypeScript.--format: Формат генерируемых типов (react или node).
reflag apps
Команды для управления приложениями Reflag.
Глобальные параметры
Эти параметры можно использовать с любой командой:
--debug: Включить режим отладки для подробного вывода.--base-url <url>: Установить базовый URL для API Reflag.--api-url <url>: Установить URL API напрямую (переопределяет базовый URL).--api-key <key>: Ключ API Reflag для неинтерактивной аутентификации.--help: Показать справочную информацию по команде.
Разработка с помощью ИИ
Reflag предоставляет мощные возможности разработки с помощью ИИ через правила и Model Context Protocol (MCP). Эти функции помогают вашим инструментам разработки на базе ИИ лучше понимать ваши флаги и предоставлять более точную помощь.
Правила Reflag (Рекомендуется)
Команда rules помогает настроить специфичные для ИИ правила для вашего проекта. Эти правила позволяют инструментам ИИ лучше понимать, как работать с флагами Reflag и как их следует использовать в вашей кодовой базе.
npx reflag rules [--format <cursor|copilot>] [--yes]
Параметры:
--format: Формат для добавления правил:cursor: Добавляет правила в.cursor/rules/reflag.mdcдля интеграции с Cursor IDE.copilot: Добавляет правила в.github/copilot-instructions.mdдля интеграции с GitHub Copilot.
--yes: Пропустить запросы подтверждения и перезаписать существующие файлы без запроса.
Эта команда добавляет в ваш проект правила, которые предоставляют инструментам ИИ контекст о том, как настраивать и использовать флаги Reflag. Для формата copilot правила добавляются в специальный раздел файла, что позволяет вам поддерживать другие инструкции copilot наряду с правилами Reflag.
Model Context Protocol
Model Context Protocol (MCP) — это открытый протокол, предоставляющий стандартизированный способ подключения моделей ИИ к различным источникам данных и инструментам. В контексте Reflag MCP позволяет вашему редактору кода понимать ваши флаги, их состояния и их взаимосвязи в вашей кодовой базе. Это создает плавный мост между вашим рабочим процессом управления флагами и инструментами разработки на базе ИИ. MCP-сервер размещается Reflag, что упрощает начало работы.
**Примечание: Команда Reflag mcp CLI ранее использовалась для локального сервера. Однако в последних версиях Reflag CLI команда mcp была перепрофилирована, чтобы помочь вам подключиться к новому удаленному MCP-серверу.**
Настройка MCP
Команда mcp помогает настроить ваш редактор или ИИ-клиент для подключения к удаленному MCP-серверу Reflag. Это позволяет вашим инструментам ИИ понимать ваши флаги и предоставлять более контекстную помощь.
npx reflag mcp [--editor ] [--scope <local|global>]
Параметры:
--editor: Редактор/клиент для настройки:cursor: Cursor IDEvscode: Visual Studio Codeclaude: Claude Desktopwindsurf: Windsurf
--scope: Настроить параметры глобально или локально для проекта.
Команда проведет вас через:
- Выбор редактора/клиента для настройки.
- Выбор приложения Reflag для подключения.
- Решение между глобальной или локальной для проекта конфигурацией.
- Настройку соответствующего файла конфигурации для выбранного редактора.
Примечание: В настройке используется mcp-remote в качестве слоя совместимости, позволяющего удаленно размещенному MCP-серверу Reflag работать со всеми редакторами/клиентами, поддерживающими серверы MCP STDIO. Если ваш редактор/клиент поддерживает HTTP Streaming с OAuth, вы можете подключиться к MCP-серверу Reflag напрямую.
Использование в CI/CD пайплайнах (Бета)
Reflag CLI разработан для бесперебойной работы в CI/CD пайплайнах. Для автоматизированных сред, где интерактивный вход невозможен, используйте параметр --api-key или укажите ключ API в переменной окружения REFLAG_API_KEY.
Генерация типов в CI/CD
npx reflag apps list --api-key $REFLAG_API_KEY
Важные ограничения:
- При использовании
--api-keyкомандыloginиlogoutотключены - Ключи API обходят все интерактивные потоки аутентификации
- Ключи API привязаны только к одному приложению. Такие команды, как
apps list, вернут только привязанное приложение - Храните ключи API безопасно, используя управление секретами вашей CI/CD платформы
Пример 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