Bucket

resmi

Özellikleri işaretleyin, şirket verilerini yönetin ve Bucket kullanarak özellik erişimini kontrol edin.

Bucket MCP ile neler yapabilirsiniz?

  • Proje kurulumunu başlat — Asistanın reflag init komutunu çalıştırarak uygulama kimliğiniz ve ayarlarınızla bir reflag.config.json dosyası oluşturmasını isteyin.
  • Özellik bayrakları oluştur — Asistanın reflag flags create "My Flag" komutunu çalıştırarak isteğe bağlı özel anahtar ve biçimle yeni bir bayrak eklemesini sağlayın.
  • TypeScript türleri üret — Asistanın reflag flags types komutunu çalıştırarak React veya Node için tür güvenli bayrak tanımları üretmesini isteyin.
  • Mevcut bayrakları listele — Asistana, geçerli uygulamanız için yapılandırılmış tüm bayrakları görüntülemek üzere reflag flags list komutunu çalıştırmasını söyleyin.
  • AI asistan kurallarını yapılandır — Asistanın Cursor veya Copilot için Reflag bağlam kurallarını eklemek üzere komutu çalıştırmasını isteyin.
  • MCP bağlantısını kur — Asistanın, düzenleyicinizi uzak Reflag MCP sunucusuna bağlamak için komutu çalıştırmasını sağlayın.

Dokümantasyon

Reflag CLI

Reflag hizmetleriyle etkileşim kurmak için komut satırı arayüzü. CLI, uygulamaları, bayrakları, kimlik doğrulamayı yönetmenize ve Reflag bayraklarınız için TypeScript türleri oluşturmanıza olanak tanır. Bu araçla, bayrak yönetimi iş akışınızı doğrudan terminalinizden kolaylaştırabilirsiniz.

Kurulum

CLI'yi projenize geliştirme bağımlılığı olarak kurun:

# npm
npm install --save-dev @reflag/cli

# yarn
yarn add --dev @reflag/cli

Projenizin kök dizininden new komutunu çalıştırarak CLI'yi başlatın, bir bayrak oluşturun ve TypeScript türlerini tek adımda oluşturun:

# npm
npx reflag new

# yarn
yarn reflag new

Bucket SDK'dan Geçiş

Bucket CLI'dan geçiş yapıyorsanız, dikkat etmeniz gereken önemli değişiklikler şunlardır:

  • Komut adı: bucket olarak değiştirildi, şimdi reflag
  • Tür tanımları dosyası: features.d.ts olarak yeniden adlandırıldı, şimdi flags.d.ts (taahhüt edilmişse eski dosyayı manuel olarak kaldırın)
  • Kimlik doğrulama dosyası: .bucket-auth olarak değiştirildi, şimdi .reflag-auth (eski dosyayı yeniden adlandırın veya kaldırın)
  • Yapılandırma dosyası: bucket.config.json olarak değiştirildi, şimdi reflag.config.json (eski dosyayı yeniden adlandırın veya kaldırın)
  • Komut: features komutu artık flags
  • Ortam değişkeni: REFLAG_API_KEY yerine BUCKET_API_KEY kullanın

Önemli: Komut dosyalarınızı, derleme adımlarınızı ve .gitignore kalıplarınızı bu değişiklikleri yansıtacak şekilde güncelleyin.

Bireysel Komutlar

Daha fazla kontrol için her komutu ayrı ayrı çalıştırabilirsiniz:

# 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

Yapılandırma

CLI, reflag init komutunu çalıştırdığınızda proje dizininizde bir reflag.config.json dosyası oluşturur. Bu dosya, Reflag entegrasyonunuz için gerekli tüm ayarları içerir.

Yapılandırma Dosyası Yapısı

reflag.config.json dosyasında bulunan tüm yapılandırma seçenekleri şunlardır:

{
  "$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"
    }
  ]
}
SeçenekAçıklamaVarsayılan
$schemaYapılandırma için otomatik tamamlama. latest belirli bir sürümle değiştirilebilir." https://unpkg.com/@reflag/cli@latest/schema.json "
baseUrlReflag hizmetleri için temel URL." https://app.reflag.com "
apiUrlReflag hizmetleri için API URL'si (API çağrıları için baseUrl'yi geçersiz kılar)." https://app.reflag.com/api "
appIdReflag uygulama kimliğiniz.Gerekli
typesOutputTypeScript türlerinin oluşturulacağı yol(lar). Bir dize veya path ve format özelliklerine sahip nesnelerden oluşan bir dizi olabilir. Kullanılabilir biçimler: react ve node."gen/flags.ts" biçimi "react"

Bu ayarları, bireysel komutlar için komut satırı seçeneklerini kullanarak geçersiz kılabilirsiniz.

Komutlar

reflag init

Projenizde yeni bir Reflag yapılandırması başlatın. Bu, ayarlarınızla birlikte bir reflag.config.json dosyası oluşturur ve seçeneklerle sağlanmayan gerekli bilgiler için sorar.

npx reflag init [--overwrite]

Seçenekler:

  • --overwrite: Varsa mevcut yapılandırma dosyasının üzerine yaz.
  • --app-id <id>: Uygulama kimliğini ayarla.
  • --key-format <format>: Bayraklar için anahtar biçimini ayarla.

reflag new [flagName]

Hızlı başlamak için hepsi bir arada komut. Bu komut, init, bayrak oluşturma ve tür oluşturmayı tek bir adımda birleştirir. Reflag ile en hızlı şekilde çalışmaya başlamak için bunu kullanın.

npx reflag new "My Flag" [--app-id ap123456789] [--key my-flag]  [--key-format custom] [--out gen/flags.ts] [--format react]

Seçenekler:

  • --key: Bayrak için belirli anahtar.
  • --app-id: Kullanılacak uygulama kimliği.
  • --key-format: Bayrak anahtarları için biçim (custom, snake, camel, vb.).
  • --out: TypeScript türlerinin oluşturulacağı yol.
  • --format: Oluşturulan türlerin biçimi (react veya node).

Her adım üzerinde daha fazla kontrol istiyorsanız, bireysel komutları (init, flags create, flags types) kullanabilirsiniz.

reflag login

Reflag hesabınızla kimlik doğrulayın. Bu, kimlik bilgilerinizi sonraki işlemler için güvenli bir şekilde saklar.

npx reflag login

reflag logout

Reflag hesabınızdan çıkış yapın ve saklanan kimlik bilgilerini kaldırın.

npx reflag logout

reflag flags

Reflag bayraklarınızı şu alt komutlarla yönetin:

reflag flags create [flagName]

Reflag uygulamanızda yeni bir bayrak oluşturun. Seçenekler sağlanmazsa komut, etkileşimli istemlerle bayrak oluşturma sürecinde size rehberlik eder.

npx reflag flags create "My Flag" [--app-id ap123456789] [--key my-flag] [--key-format custom]

Seçenekler:

  • --key: Bayrak için belirli anahtar.
  • --app-id: Kullanılacak uygulama kimliği.
  • --key-format: Bayrak anahtarları için biçim.

reflag flags list

Geçerli uygulama için tüm bayrakları listeler. Bu, hangi bayrakların kullanılabilir olduğunu ve mevcut yapılandırmalarını görselleştirmenize yardımcı olur.

npx reflag flags list [--app-id ap123456789]

Seçenekler:

  • --app-id: Kullanılacak uygulama kimliği.

reflag flags types

Bayraklarınız için TypeScript türleri oluşturun. Bu, TypeScript/JavaScript uygulamalarınızda Reflag bayraklarını kullanırken tür güvenliğini sağlar.

npx reflag flags types [--app-id ap123456789] [--out gen/flags.ts] [--format react]

Seçenekler:

  • --app-id: Kullanılacak uygulama kimliği.
  • --out: TypeScript türlerinin oluşturulacağı yol.
  • --format: Oluşturulan türlerin biçimi (react veya node).

reflag apps

Reflag uygulamalarını yönetmek için komutlar.

Genel Seçenekler

Bu seçenekler herhangi bir komutla kullanılabilir:

  • --debug: Ayrıntılı çıktı için hata ayıklama modunu etkinleştir.
  • --base-url <url>: Reflag API'si için temel URL'yi ayarla.
  • --api-url <url>: API URL'sini doğrudan ayarla (temel URL'yi geçersiz kılar).
  • --api-key <key>: Etkileşimli olmayan kimlik doğrulama için Reflag API anahtarı.
  • --help: Bir komut için yardım bilgilerini görüntüle.

Yapay Zeka Destekli Geliştirme

Reflag, kurallar ve Model Context Protocol (MCP) aracılığıyla güçlü yapay zeka destekli geliştirme yetenekleri sağlar. Bu özellikler, yapay zeka geliştirme araçlarınızın bayraklarınızı daha iyi anlamasına ve daha doğru yardım sağlamasına yardımcı olur.

rules komutu, projeniz için yapay zekaya özel kurallar ayarlamanıza yardımcı olur. Bu kurallar, yapay zeka araçlarının Reflag bayraklarıyla nasıl çalışılacağını ve kod tabanınızda nasıl kullanılması gerektiğini daha iyi anlamasını sağlar.

npx reflag rules [--format <cursor|copilot>] [--yes]

Seçenekler:

  • --format: Kuralların ekleneceği biçim:
    • cursor: Cursor IDE entegrasyonu için .cursor/rules/reflag.mdc dosyasına kurallar ekler.
      • copilot: GitHub Copilot entegrasyonu için .github/copilot-instructions.md dosyasına kurallar ekler.
  • --yes: Onay istemlerini atla ve mevcut dosyaların üzerine sormadan yaz.

Bu komut, projenize yapay zeka araçlarına Reflag bayraklarının nasıl kurulacağı ve kullanılacağı hakkında bağlam sağlayan kurallar ekler. Copilot biçimi için kurallar, dosyada ayrılmış bir bölüme eklenir; böylece Reflag kurallarının yanında diğer copilot talimatlarını da koruyabilirsiniz.

Model Context Protocol

Model Context Protocol (MCP), yapay zeka modellerini farklı veri kaynaklarına ve araçlara bağlamak için standart bir yol sağlayan açık bir protokoldür. Reflag bağlamında MCP, kod düzenleyicinizin bayraklarınızı, durumlarını ve kod tabanınızdaki ilişkilerini anlamasını sağlar. Bu, bayrak yönetimi iş akışınız ile yapay zeka destekli geliştirme araçları arasında kesintisiz bir köprü oluşturur. MCP sunucusu Reflag tarafından barındırılır ve başlamayı kolaylaştırır.

**Not: Reflag mcp CLI komutu daha önce _yerel bir sunucu için kullanılıyordu. Ancak Reflag CLI'nin son sürümlerinde, mcp komutu yeni uzak MCP sunucusuna bağlanmanıza yardımcı olmak için yeniden amaçlandırılmıştır.**_

MCP Kurulumu

mcp komutu, düzenleyicinizi veya yapay zeka istemcinizi Reflag'ın uzak MCP sunucusuna bağlanacak şekilde yapılandırmanıza yardımcı olur. Bu, yapay zeka araçlarınızın bayraklarınızı anlamasını ve daha bağlamsal yardım sağlamasını sağlar.

npx reflag mcp [--editor <editor>] [--scope <local|global>]

Seçenekler:

Komut size şu adımlarda rehberlik edecektir:

  1. Hangi düzenleyiciyi/istemciyi yapılandıracağınızı seçme.
  2. Hangi Reflag uygulamasına bağlanacağınızı seçme.
  3. Genel veya proje yerel yapılandırma arasında karar verme.
  4. Seçtiğiniz düzenleyici için uygun yapılandırma dosyasını ayarlama.

Not: Kurulum, MCP STDIO sunucularını destekleyen tüm düzenleyiciler/istemcilerle uzak barındırılan Reflag MCP sunucusunun çalışmasını sağlayan bir uyumluluk katmanı olarak mcp-remote kullanır. Düzenleyiciniz/istemciniz OAuth ile HTTP Streaming destekliyorsa, Reflag MCP sunucusuna doğrudan bağlanabilirsiniz.

CI/CD Ardışık Düzenlerinde Kullanım

Reflag CLI, CI/CD ardışık düzenlerinde sorunsuz çalışacak şekilde tasarlanmıştır. Etkileşimli girişin mümkün olmadığı otomatik ortamlar için --api-key seçeneğini kullanın veya API anahtarını REFLAG_API_KEY ortam değişkeninde belirtin.

# Generate types in CI/CD
npx reflag apps list --api-key $REFLAG_API_KEY

Önemli kısıtlamalar:

  • --api-key kullanılırken, login ve logout komutları devre dışıdır
  • API anahtarları tüm etkileşimli kimlik doğrulama akışlarını atlar
  • API anahtarları yalnızca bir uygulamaya bağlıdır. apps list gibi komutlar yalnızca bağlı uygulamayı döndürür
  • API anahtarlarını CI/CD platformunuzun gizli yönetimini kullanarak güvenli bir şekilde saklayın

Örnek CI iş akışı:

# 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 }}

Geliştirme

# Build the CLI
yarn build

# Run the CLI locally
yarn reflag [command]

# Lint and format code
yarn lint
yarn format

Gereksinimler

  • Node.js >=18.0.0

Lisans

MIT Lisansı Telif Hakkı (c) 2025 Bucket ApS