Bucket

resmi

Kelola fitur, atur data perusahaan, dan kendalikan akses fitur menggunakan Bucket.

Apa yang bisa Anda lakukan dengan Bucket MCP?

  • Inisialisasi proyek Reflag — Jalankan init untuk membuat reflag.config.json dengan ID aplikasi dan pengaturan output tipe Anda.
  • Buat dan bootstrap flag dalam satu langkah — Gunakan new untuk menginisialisasi proyek, membuat flag, dan menghasilkan tipe TypeScript sekaligus.
  • Buat flag fitur — Jalankan flags create dengan nama dan kunci opsional untuk menambahkan flag baru ke aplikasi Reflag Anda.
  • Hasilkan tipe TypeScript untuk flag — Jalankan flags types untuk menghasilkan definisi tipe untuk React atau Node dari flag Anda saat ini.
  • Daftar semua flag untuk aplikasi — Jalankan flags list untuk melihat flag yang ada dan konfigurasinya.
  • Siapkan aturan editor AI untuk Reflag — Jalankan rules untuk menambahkan instruksi Cursor atau Copilot yang membantu alat AI memahami flag Anda.

Dokumentasi

Reflag CLI

Antarmuka baris perintah untuk berinteraksi dengan layanan Reflag. CLI ini memungkinkan Anda mengelola aplikasi, flag, autentikasi, dan menghasilkan tipe TypeScript untuk flag Reflag Anda. Dengan alat ini, Anda dapat menyederhanakan alur kerja flagging langsung dari terminal Anda.

Instalasi

Instal CLI sebagai dependensi pengembangan di proyek Anda:

npm

npm install --save-dev @reflag/cli

yarn

yarn add --dev @reflag/cli

Jalankan perintah new dari direktori root proyek Anda untuk menginisialisasi CLI, membuat flag, dan menghasilkan tipe TypeScript dalam satu langkah:

npm

npx reflag new

yarn

yarn reflag new

Migrasi dari Bucket SDK

Jika Anda bermigrasi dari Bucket CLI, berikut adalah perubahan utama yang perlu diperhatikan:

  • Nama perintah: Berubah dari bucket menjadi reflag
  • File definisi tipe: Berganti nama dari features.d.ts menjadi flags.d.ts (hapus file lama secara manual jika sudah di-commit)
  • File autentikasi: Berubah dari .bucket-auth menjadi .reflag-auth (ganti nama atau hapus file lama)
  • File konfigurasi: Berubah dari bucket.config.json menjadi reflag.config.json (ganti nama atau hapus file lama)
  • Perintah: Perintah features sekarang menjadi flags
  • Variabel lingkungan: Gunakan REFLAG_API_KEY alih-alih BUCKET_API_KEY

Penting: Perbarui skrip, langkah build, dan pola .gitignore Anda untuk mencerminkan perubahan ini.

Perintah Individual

Untuk kontrol lebih, Anda dapat menjalankan setiap perintah secara individual:

Inisialisasi Reflag di proyek Anda (jika belum diatur)

npx reflag init

Buat flag baru

npx reflag flags create "My Flag"

Hasilkan tipe TypeScript untuk flag Anda

npx reflag flags types

Konfigurasi

CLI membuat file reflag.config.json di direktori proyek Anda saat Anda menjalankan reflag init. File ini berisi semua pengaturan yang diperlukan untuk integrasi Reflag Anda.

Struktur File Konfigurasi

Berikut adalah semua opsi konfigurasi yang tersedia di file 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" } ] }

OpsiDeskripsiDefault
$schemaPelengkapan otomatis untuk konfigurasi. latest dapat diganti dengan versi tertentu."https://unpkg.com/@reflag/cli@latest/schema.json"
baseUrlURL dasar untuk layanan Reflag."https://app.reflag.com"
apiUrlURL API untuk layanan Reflag (menimpa baseUrl untuk panggilan API)."https://app.reflag.com/api"
appIdID aplikasi Reflag Anda.Wajib
typesOutputJalur tempat tipe TypeScript akan dihasilkan. Dapat berupa string atau array objek dengan properti path dan format. Format yang tersedia: react dan node."gen/flags.ts" dengan format "react"

Anda dapat menimpa pengaturan ini menggunakan opsi baris perintah untuk perintah individual.

Perintah

reflag init

Inisialisasi konfigurasi Reflag baru di proyek Anda. Ini membuat file reflag.config.json dengan pengaturan Anda dan meminta informasi yang diperlukan jika tidak disediakan melalui opsi.

npx reflag init [--overwrite]

Opsi:

  • --overwrite: Timpa file konfigurasi yang ada jika ada.
  • --app-id <id>: Atur ID aplikasi.
  • --key-format <format>: Atur format kunci untuk flag.

reflag new [flagName]

Perintah all-in-one untuk memulai dengan cepat. Perintah ini menggabungkan init, pembuatan flag, dan pembuatan tipe dalam satu langkah. Gunakan ini untuk cara tercepat memulai dengan Reflag.

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

Opsi:

  • --key: Kunci spesifik untuk flag.
  • --app-id: ID aplikasi yang akan digunakan.
  • --key-format: Format untuk kunci flag (custom, snake, camel, dll.).
  • --out: Jalur untuk menghasilkan tipe TypeScript.
  • --format: Format tipe yang dihasilkan (react atau node).

Jika Anda lebih suka kontrol lebih pada setiap langkah, Anda dapat menggunakan perintah individual (init, flags create, flags types) sebagai gantinya.

reflag login

Autentikasi dengan akun Reflag Anda. Ini menyimpan kredensial Anda dengan aman untuk operasi selanjutnya.

npx reflag login

reflag logout

Keluar dari akun Reflag Anda dan hapus kredensial yang tersimpan.

npx reflag logout

reflag flags

Kelola flag Reflag Anda dengan subperintah berikut:

reflag flags create [flagName]

Buat flag baru di aplikasi Reflag Anda. Perintah ini memandu Anda melalui proses pembuatan flag dengan prompt interaktif jika opsi tidak disediakan.

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

Opsi:

  • --key: Kunci spesifik untuk flag.
  • --app-id: ID aplikasi yang akan digunakan.
  • --key-format: Format untuk kunci flag.

reflag flags list

Daftar semua flag untuk aplikasi saat ini. Ini membantu Anda memvisualisasikan flag apa yang tersedia dan konfigurasi mereka saat ini.

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

Opsi:

  • --app-id: ID aplikasi yang akan digunakan.

reflag flags types

Hasilkan tipe TypeScript untuk flag Anda. Ini memastikan keamanan tipe saat menggunakan flag Reflag di aplikasi TypeScript/JavaScript Anda.

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

Opsi:

  • --app-id: ID aplikasi yang akan digunakan.
  • --out: Jalur untuk menghasilkan tipe TypeScript.
  • --format: Format tipe yang dihasilkan (react atau node).

reflag apps

Perintah untuk mengelola aplikasi Reflag.

Opsi Global

Opsi ini dapat digunakan dengan perintah apa pun:

  • --debug: Aktifkan mode debug untuk output verbose.
  • --base-url <url>: Atur URL dasar untuk API Reflag.
  • --api-url <url>: Atur URL API secara langsung (menimpa URL dasar).
  • --api-key <key>: Kunci API Reflag untuk autentikasi non-interaktif.
  • --help: Tampilkan informasi bantuan untuk suatu perintah.

Pengembangan Berbantuan AI

Reflag menyediakan kemampuan pengembangan berbantuan AI yang kuat melalui aturan dan Model Context Protocol (MCP). Fitur-fitur ini membantu alat pengembangan AI Anda lebih memahami flag Anda dan memberikan bantuan yang lebih akurat.

Aturan Reflag (Direkomendasikan)

Perintah rules membantu Anda mengatur aturan khusus AI untuk proyek Anda. Aturan ini memungkinkan alat AI untuk lebih memahami cara bekerja dengan flag Reflag dan bagaimana mereka harus digunakan di basis kode Anda.

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

Opsi:

  • --format: Format untuk menambahkan aturan:
    • cursor: Menambahkan aturan ke .cursor/rules/reflag.mdc untuk integrasi Cursor IDE.
    • copilot: Menambahkan aturan ke .github/copilot-instructions.md untuk integrasi GitHub Copilot.
  • --yes: Lewati prompt konfirmasi dan timpa file yang ada tanpa bertanya.

Perintah ini menambahkan aturan ke proyek Anda yang memberikan konteks kepada alat AI tentang cara mengatur dan menggunakan flag Reflag. Untuk format copilot, aturan ditambahkan ke bagian khusus dalam file, memungkinkan Anda mempertahankan instruksi copilot lainnya bersama aturan Reflag.

Model Context Protocol

Model Context Protocol (MCP) adalah protokol terbuka yang menyediakan cara standar untuk menghubungkan model AI ke berbagai sumber data dan alat. Dalam konteks Reflag, MCP memungkinkan editor kode Anda memahami flag Anda, statusnya, dan hubungannya dalam basis kode Anda. Ini menciptakan jembatan mulus antara alur kerja manajemen flag Anda dan alat pengembangan bertenaga AI. Server MCP dihosting oleh Reflag, membuatnya mudah untuk memulai.

**Catatan: Perintah CLI mcp Reflag sebelumnya digunakan untuk server lokal. Namun, dalam versi terbaru Reflag CLI, perintah mcp telah dialihfungsikan untuk membantu Anda terhubung ke server MCP jarak jauh yang baru.**

Menyiapkan MCP

Perintah mcp membantu Anda mengonfigurasi editor atau klien AI Anda untuk terhubung dengan server MCP jarak jauh Reflag. Ini memungkinkan alat AI Anda memahami flag Anda dan memberikan bantuan yang lebih kontekstual.

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

Opsi:

  • --editor: Editor/klien yang akan dikonfigurasi:
    • cursor: Cursor IDE
    • vscode: Visual Studio Code
    • claude: Claude Desktop
    • windsurf: Windsurf
  • --scope: Apakah akan mengonfigurasi pengaturan secara global atau lokal untuk proyek.

Perintah ini akan memandu Anda melalui:

  1. Memilih editor/klien mana yang akan dikonfigurasi.
  2. Memilih aplikasi Reflag mana yang akan dihubungkan.
  3. Memutuskan antara konfigurasi global atau lokal proyek.
  4. Menyiapkan file konfigurasi yang sesuai untuk editor pilihan Anda.

Catatan: Pengaturan menggunakan mcp-remote sebagai lapisan kompatibilitas yang memungkinkan server MCP Reflag yang dihosting jarak jauh bekerja dengan semua editor/klien yang mendukung server MCP STDIO. Jika editor/klien Anda mendukung HTTP Streaming dengan OAuth, Anda dapat terhubung ke server MCP Reflag secara langsung.

Penggunaan di Pipeline CI/CD (Beta)

Reflag CLI dirancang untuk bekerja dengan mulus di pipeline CI/CD. Untuk lingkungan otomatis di mana login interaktif tidak memungkinkan, gunakan opsi --api-key atau tentukan kunci API di variabel lingkungan REFLAG_API_KEY.

Hasilkan tipe di CI/CD

npx reflag apps list --api-key $REFLAG_API_KEY

Pembatasan penting:

  • Saat menggunakan --api-key, perintah login dan logout dinonaktifkan
  • Kunci API melewati semua alur autentikasi interaktif
  • Kunci API terikat hanya pada satu aplikasi. Perintah seperti apps list hanya akan mengembalikan aplikasi yang terikat
  • Simpan kunci API dengan aman menggunakan manajemen rahasia platform CI/CD Anda

Contoh alur kerja CI:

Contoh GitHub Actions

  • name: Generate types run: npx reflag flags types --api-key ${{ secrets.REFLAG_API_KEY }}

Contoh GitHub Actions (menggunakan environment):

  • name: Generate types (environment) run: npx reflag flags types env: REFLAG_API_KEY: ${{ secrets.REFLAG_CI_API_KEY }}

Pengembangan

Build CLI

yarn build

Jalankan CLI secara lokal

yarn reflag [command]

Lint dan format kode

yarn lint yarn format

Persyaratan

  • Node.js >=18.0.0

Lisensi

Lisensi MIT Hak Cipta (c) 2025 Bucket ApS