Antarmuka Baris Perintah

FloopFloop CLI

Instal CLI FloopFloop, otorisasi perangkat, dan kendalikan setiap proyek dari terminal Anda — `floop login`, `floop new`, `floop chat`, `floop refine`, dan banyak lagi.

Terakhir diperbarui:

FloopFloop CLI

FloopFloop CLI (floop) adalah klien baris perintah berkas tunggal untuk platform FloopFloop. Semua yang dapat dilakukan melalui konsol web juga dapat dilakukan di sini — membuat proyek dari prompt, memantau deploy secara langsung, menyempurnakan proyek dalam REPL obrolan — tanpa meninggalkan terminal Anda.

Berbeda dengan kunci API (yang dibatasi untuk paket Business), token perangkat CLI terikat pada paket akun normal Anda, persis seperti masuk melalui web. CLI untuk manusia; kunci API untuk skrip.

Instalasi

Pilih biner yang sesuai untuk mesin Anda dan letakkan di $PATH Anda. Tabel instalasi lengkap (dengan tombol salin) tersedia di floopfloop.com/cli.

macOS (Apple Silicon)

curl -L https://github.com/FloopFloopAI/floop-cli/releases/latest/download/floop-darwin-arm64 -o /usr/local/bin/floop
chmod +x /usr/local/bin/floop

macOS (Intel)

curl -L https://github.com/FloopFloopAI/floop-cli/releases/latest/download/floop-darwin-x64 -o /usr/local/bin/floop
chmod +x /usr/local/bin/floop

Linux x64

curl -L https://github.com/FloopFloopAI/floop-cli/releases/latest/download/floop-linux-x64 -o /usr/local/bin/floop
chmod +x /usr/local/bin/floop

Windows x64

# In PowerShell:
Invoke-WebRequest https://github.com/FloopFloopAI/floop-cli/releases/latest/download/floop-windows-x64.exe -OutFile $env:USERPROFILE\floop.exe

Peluncuran pertama di macOS atau Windows akan memperingatkan bahwa biner belum ditandatangani. Di macOS, klik kanan → Buka, atau jalankan xattr -d com.apple.quarantine /usr/local/bin/floop. Di Windows, klik "Info selengkapnya" → "Tetap jalankan".

Masuk

Otorisasi perangkat ke akun FloopFloop Anda. CLI membuka browser Anda, Anda mengklik Setujui, dan CLI menerima token berumur panjang yang terikat pada mesin ini.

floop login

Di mesin tanpa antarmuka grafis (SSH, CI, Docker), gunakan alur perangkat sebagai gantinya:

floop login --device

Anda akan mendapatkan kode untuk ditempel di floopfloop.com/device. Setelah disetujui, CLI menerima token dan menyimpannya ke ~/.floop/config.json dengan izin 0600.

Verifikasi sesi aktif dengan floop whoami. Keluar dengan floop logout. Kelola semua perangkat yang masuk dari Akun → Perangkat.

Perintah

floop new <prompt>

Buat proyek baru dan (secara default) tunggu hingga proyek aktif.

floop new "a crypto RSI dashboard for BTC and ETH" --subdomain my-rsi
FlagDeskripsi
--name <name>Nama proyek (default: kata pertama dari prompt)
--subdomain <slug>Subdomain (default: slug dari nama)
--bot-type <type>Salah satu dari site, app, bot, api, internal, game
--team <teamId>Buat di bawah ruang kerja tim
--no-waitKembali segera setelah antrean; tidak melakukan streaming progres
--jsonKeluarkan JSON yang dapat dibaca mesin

floop list (alias ls)

Tampilkan daftar proyek Anda dalam tabel atau sebagai JSON.

floop list
floop list --json
floop list --team team_abc123

floop status <project>

Tampilkan status build sebuah proyek. Menerima ID proyek atau subdomain. Tambahkan --watch untuk melakukan streaming progres secara langsung hingga build mencapai status terminal.

floop status my-rsi
floop status my-rsi --watch
floop status my-rsi --json

floop chat <project>

Buka REPL interaktif yang terikat pada proyek. Setiap baris yang Anda ketik dikirim sebagai penyempurnaan, dengan progres build langsung. Perintah slash:

  • /help — tampilkan semua perintah slash
  • /status — status sekali jalan
  • /open — buka URL langsung
  • /clear — bersihkan layar
  • /exit — keluar dari REPL (Ctrl+D juga berfungsi)

Selama build berlangsung, Ctrl+C menghentikan pemantauan; build tetap berjalan di sisi server. Tekan Ctrl+C lagi (atau /exit) untuk benar-benar keluar dari REPL.

floop refine <project> "<message>"

Penyempurnaan non-interaktif — kembar skripting dari floop chat. Mengirim satu pesan penyempurnaan dan keluar, tanpa masuk ke REPL. Berguna untuk pipeline CI ("sempurnakan halaman utama saat cabang ini digabungkan") atau perubahan satu kali.

floop refine my-bot "tighten the dashboard table padding"
floop refine my-bot "fix the typo in the hero" --code-only --watch
floop refine my-bot "swap the brand colour to teal" --json
FlagDeskripsi
--watchIkuti build yang dihasilkan hingga status terminal (live / failed / cancelled / archived). Tanpa flag ini, akan kembali segera setelah antrean.
--code-onlySetel codeEditOnly: true — melewati replan / redesign dan menjalankan patch in-place 3 langkah alih-alih rebuild penuh 6 langkah. Menggunakan sekitar setengah kredit penyempurnaan. Terbaik untuk pengeditan teks, penggantian warna, perbaikan ketik pada proyek yang sudah aktif.
--jsonKeluarkan JSON yang dapat dibaca mesin. Menampilkan ketiga bentuk respons — processing (build dimulai), queued (antre di belakang build saat ini), atau queued: false (disimpan sebagai pesan obrolan, tidak ada build).

floop cancel <project> · floop reactivate <project> [--watch]

Batalkan build yang berjalan atau aktifkan kembali proyek yang sebelumnya dibatalkan. reactivate memulai build baru dari prompt terbaru proyek; dengan --watch perintah akan mengikuti build baru hingga status terminal (live / failed / cancelled / archived) alih-alih kembali segera. Pola poll-with-dedup yang sama seperti floop status --watch dan floop refine --watch.

floop cancel my-bot
floop reactivate my-bot
floop reactivate my-bot --watch
floop reactivate my-bot --watch --json

floop open <project>

Buka URL langsung proyek di browser default Anda. Beralih ke https://<subdomain>.floop.tech jika API belum menampilkan URL kustom.

floop upgrade

Ganti biner floop dengan GitHub Release terbaru. Memverifikasi SHA256 terhadap SHA256SUMS yang diterbitkan sebelum mengganti. Tambahkan --check untuk hanya memeriksa pembaruan tanpa menginstal.

floop upgrade
floop upgrade --check

Hanya berfungsi untuk biner yang dikompilasi. Jika Anda menginstal melalui npm atau menjalankan node dist/index.js dari sumber, perintah ini akan menolak dan mengarahkan ke alat yang tepat.

floop docs · floop feedback

Pintasan cepat: floop docs membuka halaman ini, floop feedback membuka formulir dukungan / laporan masalah di floopfloop.com.

floop completion <bash|zsh|fish|powershell>

Cetak skrip penyelesaian shell ke stdout. Instal per shell:

# bash
echo 'source <(floop completion bash)' >> ~/.bashrc

# zsh — save to a directory on $fpath
floop completion zsh > "${fpath[1]}/_floop"

# fish
floop completion fish > ~/.config/fish/completions/floop.fish

# PowerShell
floop completion powershell | Out-String | Invoke-Expression
# (or append to your $PROFILE to persist)

Saat ini penyelesaian bersifat statis — mengetahui nama perintah dan sub-perintah, bukan subdomain proyek Anda. Penyelesaian dinamis melalui cache lokal ada dalam peta jalan.

floop config get [key] · floop config set <key> <value>

Baca atau ubah pengaturan CLI lokal. Kunci yang dapat diatur: apiUrl(timpa URL dasar API — berguna untuk staging atau self-hosted) dan telemetry (true/false).

floop config get
floop config get telemetry
floop config set telemetry false
floop config set apiUrl https://staging.floopfloop.com

Penyimpanan token sengaja TIDAK dapat diatur melalui config set— jalur ini menjaga token tidak masuk ke riwayat shell. Gunakan floop login / floop logout untuk mengelola sesi aktif.

floop usage

Tampilkan paket Anda, kredit yang tersedia (bulan ini + sisa + seumur hidup yang digunakan), dan penggunaan periode saat ini (proyek dibuat, build, penyempurnaan, penyimpanan, bandwidth) terhadap batas paket Anda.

floop usage
floop usage --json

floop conversations <project> (alias history)

Cetak riwayat obrolan proyek — pesan pengguna, respons asisten, dan penanda deployment (● Deployed v2) dalam urutan kronologis. Tambahkan --limit 10 untuk hanya menampilkan 10 entri terakhir.

floop conversations my-bot
floop history my-bot --limit 5
floop conversations my-bot --json

floop keys <list|create|rm>

Mengelola kunci API programatik (flp_…) untuk digunakan dalam skrip CI/CD. Berbeda dari token perangkat floop login — token perangkat untuk manusia, terikat pada paket normal Anda; kunci API bersifat programatik, membutuhkan paket Business, dapat dicabut satu per satu dari dasbor atau berdasarkan nama/id dengan floop keys rm.

floop keys list
floop keys create "github-actions"     # raw key shown ONCE — copy it
# In CI:
export FLOOP_TOKEN=flp_…
floop list --json | jq …
# Later:
floop keys rm "github-actions"

Sub-perintah rmmenolak untuk mencabut kunci API yang digunakan untuk melakukan panggilan — gunakan kunci lain (atau cabut dari dasbor) jika Anda benar-benar ingin menghapusnya.

floop library <list|clone>

Telusuri proyek library publik dan kloning ke akun Anda.

floop library list
floop library list --search "trading bot" --sort popular
floop library clone <projectId> --subdomain my-fork

Chat REPL: /attach <file> + pemilih interaktif

Di dalam floop chat, lampirkan file ke pesan penyempurnaan berikutnya:

floop chat my-bot
you ▸ /attach ./mockup.png
✓ Attached mockup.png (320 KB, image/png)
  Attached to your NEXT message. 1 file(s) pending.
you ▸ make the dashboard look like this

CLI mengunggah melalui alur presigned-PUT yang ada; jenis yang diizinkan adalah png/jpg/gif/svg/webp/ico/pdf/txt/csv/doc/docx, maks 5 MB. Lampiran dikonsumsi oleh pesan berikutnya yang Anda kirim — mengetik lebih banyak perintah slash atau menekan enter pada baris kosong membuatnya tetap tertunda.

floop chat tanpa argumen proyek menampilkan pemilih bernomor atas proyek Anda. Dengan satu proyek, langsung memilihnya.

floop subdomain check <slug> · floop subdomain suggest "<prompt>"

Pembantu skripting untuk floop new. check keluar dengan 0 jika slug tersedia, 1 jika tidak. suggestmencetak slug yang tersedia yang berasal dari prompt — pipe langsung ke --subdomain:

# Pre-flight check
floop subdomain check my-bot && echo "available"

# Auto-pick a slug from the prompt
SLUG=$(floop subdomain suggest "a crypto rsi dashboard for btc")
floop new "a crypto rsi dashboard for btc" --subdomain "$SLUG"

floop secrets <list|set|rm> <project> [<key>]

Kelola variabel lingkungan hanya-tulis pada sebuah proyek. Nilai tidak pernah dikembalikan oleh API — list hanya menampilkan metadata (kunci, 4 karakter terakhir, cap waktu). Sub-perintah set membaca nilai dari --value, --from-env, atau stdin (dalam urutan itu) — utamakan stdin atau --from-env untuk nilai sensitif agar tidak masuk ke riwayat shell.

# List
floop secrets list my-bot

# Set (most secure: from a local env var)
export STRIPE_KEY="sk_live_..."
floop secrets set my-bot STRIPE_KEY --from-env STRIPE_KEY

# Set (reads from stdin)
floop secrets set my-bot STRIPE_KEY < ./stripe.key

# Remove
floop secrets rm my-bot STRIPE_KEY

Kunci harus berformat UPPER_SNAKE_CASE, dimulai dengan huruf, maks 64 karakter (sesuai dengan validator rahasia proyek).

Skripting

Setiap perintah mendukung --json. Dikombinasikan dengan jq dan variabel lingkungan FLOOP_TOKEN (yang melewati login interaktif), CLI cocok untuk penggunaan CI/CD.

# Create a project, capture its ID, poll for live URL
PROJECT=$(floop new "test page" --no-wait --json | jq -r '.project.id')

# Wait until live (or terminal failure)
while true; do
  STATUS=$(floop status "$PROJECT" --json | jq -r '.status.status')
  case "$STATUS" in
    live)      echo "shipped"; break ;;
    failed)    echo "build failed"; exit 1 ;;
    cancelled) echo "cancelled"; exit 1 ;;
  esac
  sleep 5
done

Variabel lingkungan

VariabelTujuan
FLOOP_API_URLTimpa URL dasar API. Default: https://www.floopfloop.com. Berguna untuk staging.
FLOOP_TOKENToken Bearer yang digunakan sebagai pengganti token di ~/.floop/config.json. Berguna untuk CI.

Kode keluar

Kode keluar yang terdokumentasi untuk skrip shell:

KodeArti
0Berhasil
1Kesalahan pengguna (flag salah, validasi, penolakan upgrade mode-dev)
2Autentikasi (belum masuk, token dicabut, DILARANG)
3Batas kecepatan terlampaui
4Kesalahan server (5xx, kegagalan instalasi/upgrade)
5Jaringan tidak dapat dijangkau

File konfigurasi

CLI menyimpan sesinya di ~/.floop/config.json dengan izin 0600 (hanya pemilik yang dapat membaca/menulis). File tersebut berisi:

{
  "apiUrl": "https://www.floopfloop.com",
  "token": "flp_cli_…",
  "tokenPrefix": "flp_cli_a1b2…",
  "user": { "id": "...", "email": "you@example.com", "name": "..." }
}

Dukungan keychain OS (macOS Keychain, Windows Credential Manager) ada dalam peta jalan.

Privasi & telemetri

Pada jalannya pertama secara interaktif, CLI menanyakan apakah Anda ingin berbagi data penggunaan anonim. Ini bersifat opt-in — pilih n dan tidak ada yang pernah dikirim. Pilih y dan CLI mengirim satu POST ke /api/cli/telemetry per keluar perintah, yang berisi tepat:

  • anonymousId — hex acak yang dibuat saat opt-in, tidak pernah digabungkan ke akun Anda
  • command — nama perintah tingkat atas (mis. new, list)
  • exitCode
  • durationMs
  • version — versi CLI
  • osdarwin / win32 / linux

Kami tidak mengirim: prompt, nama proyek, konten file, argumen perintah, email Anda, alamat IP Anda (backend mencatat IP permintaan untuk pembatasan kecepatan; tidak digabungkan ke baris telemetri). Muatan penuh adalah enam bidang di atas.

Daftar pengecualian — telemetri tidak pernah aktif untuk floop config, floop completion, floop help, --help, atau --version (ini bersifat melingkar, sering di-pipe, atau tidak mengandung konten). Telemetri memiliki batas waktu keras 1 detik dan tidak pernah menunda keluar dari CLI.

Nonaktifkan kapan saja: floop config set telemetry false. Atau edit manual ~/.floop/config.json.

Sumber & rilis

Biner siap pakai untuk macOS, Windows, dan Linux diterbitkan ke GitHub Releases pada setiap tag cli-v*. Catatan rilis mencakup instruksi instalasi dan checksum SHA256.

Untuk daftar artefak rilis, telusuri rilis terbaru.