コマンドラインインターフェース

FloopFloop CLI

FloopFloop CLI をインストールし、デバイスを認可し、ターミナルからすべてのプロジェクトを操作します — `floop login`、`floop new`、`floop chat`、`floop refine` など。

最終更新:

FloopFloop CLI

FloopFloop CLI(floop)は、FloopFloop プラットフォーム向けの シングルバイナリ型コマンドラインクライアントです。ウェブコンソールでできること ——プロンプトからプロジェクトを作成する、デプロイをリアルタイムで確認する、 チャット REPL でプロジェクトを改善する——をすべてターミナルから行えます。

API キー(Business プランが必要です)とは異なり、CLI デバイストークンは 通常のアカウントプランにスコープされており、ウェブでサインインするのと まったく同じです。CLI は人間のためのもの、API キーはスクリプトのためのものです。

インストール

お使いのマシンに合ったバイナリを選び、$PATH に追加してください。 インストールの一覧(コピーボタン付き)は 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

macOS または Windows での初回起動時、バイナリがまだ署名されていないという 警告が表示されます。macOS では右クリック → 開く、またはxattr -d com.apple.quarantine /usr/local/bin/floopを実行してください。 Windows では "詳細情報" → "実行する" をクリックしてください。

サインイン

FloopFloop アカウントに対してデバイスを認証します。CLI がブラウザを開き、 承認をクリックすると、CLI はこのマシンに紐付いた長期トークンを受け取ります。

floop login

ヘッドレスマシン(SSH、CI、Docker)では、代わりにデバイスフロー 使用してください:

floop login --device

floopfloop.com/device に貼り付けるコードが表示されます。 承認されると、CLI はトークンを受け取り、0600 権限で ~/.floop/config.json に保存します。

アクティブなセッションは floop whoami で確認できます。サインアウトは floop logout で行います。サインイン済みのデバイスをすべて管理するには アカウント → デバイス にアクセスしてください。

コマンド

floop new <prompt>

新しいプロジェクトを作成し、デフォルトではライブになるまで待機します。

floop new "a crypto RSI dashboard for BTC and ETH" --subdomain my-rsi
フラグ説明
--name <name>プロジェクト名(デフォルトはプロンプトの最初の単語)
--subdomain <slug>サブドメイン(デフォルトは名前のスラッグ)
--bot-type <type>siteappbotapiinternalgame のいずれか
--team <teamId>チームワークスペース配下に作成する
--no-waitキューに追加した後すぐに返す。進捗をストリームしない
--json機械可読な JSON を出力する

floop list(エイリアス ls

プロジェクトを表形式または JSON で一覧表示します。

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

floop status <project>

プロジェクトのビルドステータスを表示します。プロジェクト ID またはサブドメインを 指定できます。--watch を追加すると、ビルドが終端状態に達するまで 進捗をその場でストリームします。

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

floop chat <project>

プロジェクトに紐付いたインタラクティブな REPL を開きます。入力した各行が リファインメントとして送信され、ライブのビルド進捗が表示されます。スラッシュコマンド:

  • /help — すべてのスラッシュコマンドを表示
  • /status — 1 回限りのステータス表示
  • /open — ライブ URL を開く
  • /clear — 画面をクリア
  • /exit — REPL を終了(Ctrl+D でも可)

ビルド中に Ctrl+C を押すと監視が停止しますが、ビルドはサーバー側で 実行され続けます。もう一度 Ctrl+C を押すか、/exit を使用すると REPL を実際に終了できます。

floop refine <project> "<message>"

非インタラクティブなリファインメント — floop chatのスクリプティング版です。 1 つのリファインメントメッセージを送信して終了し、REPL には入りません。 CI パイプライン("このブランチがマージされたらホームページをリファイン")や 1 回限りの微調整に便利です。

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
フラグ説明
--watchビルドが終端状態(live / failed / cancelled / archived)になるまでテールする。指定しない場合はキューに追加後すぐに返す。
--code-onlycodeEditOnly: true を設定します — リプラン・再デザインをスキップし、完全な 6 ステップの再構築の代わりに 3 ステップのインプレースパッチを実行します。リファインメントクレジットの約半分を消費します。すでにライブになっているプロジェクトのテキスト修正、色の変更、誤字修正に最適です。
--json機械可読な JSON を出力します。3 つのレスポンス形式をすべて返します — processing(ビルド開始)、queued(現在のビルドの後ろにキュー)、または queued: false(チャットメッセージとして保存、ビルドなし)。

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

実行中のビルドをキャンセルするか、以前にキャンセルされたプロジェクトを再アクティブ化します。reactivate はプロジェクトの最新プロンプトで新しいビルドを開始します。--watch を指定すると、すぐに返すのではなく、新しいビルドが終端状態 (live / failed / cancelled / archived)になるまでテールします。floop status --watch および 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>

プロジェクトのライブ URL をデフォルトブラウザで開きます。API がまだカスタム URL を 返していない場合は https://<subdomain>.floop.tech にフォールバックします。

floop upgrade

floop バイナリを最新の GitHub Release に置き換えます。交換前に公開されたSHA256SUMS に対して SHA256 を検証します。--check を追加すると、 インストールせずに更新の有無だけを確認できます。

floop upgrade
floop upgrade --check

コンパイル済みバイナリにのみ対応しています。npm 経由でインストールした場合や ソースから node dist/index.js を実行している場合、コマンドは拒否され、 適切なツールを案内します。

floop docs · floop feedback

クイックショートカット:floop docs はこのページを開き、 floop feedback は floopfloop.com のサポート・問題報告フォームを開きます。

floop completion <bash|zsh|fish|powershell>

シェル補完スクリプトを stdout に出力します。シェルごとのインストール方法:

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

現在の補完は静的です — コマンドとサブコマンド名は認識しますが、 あなたのプロジェクトのサブドメインは認識しません。 ローカルキャッシュを使った動的補完はロードマップに含まれています。

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

ローカルの CLI 設定を読み取るか変更します。設定可能なキー: apiUrl(API ベース URL をオーバーライド — ステージングや セルフホストに便利)および telemetry(true/false)。

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

トークンの保存は意図的に config setでは設定できません — これによりトークンがシェル履歴に残りません。アクティブなセッションの管理にはfloop login / floop logout を使用してください。

floop usage

プラン、利用可能なクレジット(今月分 + 繰り越し分 + 生涯使用量)、 および現在の期間の使用量(作成したプロジェクト数、ビルド数、リファインメント数、 ストレージ、帯域幅)をプランの上限と比較して表示します。

floop usage
floop usage --json

floop conversations <project>(エイリアス history

プロジェクトのチャット履歴を表示します — ユーザーメッセージ、アシスタントの 応答、デプロイメントマーカー(● Deployed v2)が時系列順に表示されます。--limit 10 を追加すると最新 10 件のみ表示されます。

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

floop keys <list|create|rm>

CI/CD スクリプト用のプログラマティック API キー(flp_…)を管理します。floop login のデバイストークンとは異なります— デバイストークンは人間のためのもので通常プランにスコープされていますが、 API キーはプログラマティックであり、Business プランが必要で、ダッシュボードまたは 名前・ID を指定した 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"

rmサブコマンドは、呼び出しに使用している API キー自体を失効させることを 拒否します — 本当に削除したい場合は別のキーを使用するか、ダッシュボードから 失効させてください。

floop library <list|clone>

公開ライブラリプロジェクトを閲覧し、自分のアカウントにクローンします。

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

チャット REPL:/attach <file> + インタラクティブピッカー

floop chat 内で、次のリファインメントメッセージにファイルを添付します:

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 は既存のプリサインド PUT フローでアップロードします。許可されるタイプは png/jpg/gif/svg/webp/ico/pdf/txt/csv/doc/docx で、最大 5 MB です。 添付ファイルは次に送信するメッセージで消費されます — スラッシュコマンドを 入力したり空行で Enter を押したりすると、保留状態が維持されます。

floop chat にプロジェクト引数を指定しない場合、 プロジェクトの番号付きピッカーが表示されます。プロジェクトが 1 つだけの場合は 直接選択されます。

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

floop new 用のスクリプティングヘルパーです。check はスラッグが 空いている場合に 0、そうでない場合に 1 で終了します。suggestはプロンプトから 導出された利用可能なスラッグを出力します — --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>]

プロジェクトの書き込み専用環境変数を管理します。値は API から返されません —list はメタデータ(キー、末尾 4 文字、タイムスタンプ)のみを表示します。set サブコマンドは --value--from-env、 または stdin(この順序)から値を読み取ります — シェル履歴に残らないよう、機密性の高い値にはstdin または --from-env を推奨します

# 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

キーは UPPER_SNAKE_CASE で、文字で始まり、最大 64 文字である必要があります (プロジェクトシークレットバリデーターに準拠)。

スクリプティング

すべてのコマンドは --json をサポートしています。 jq と インタラクティブなログインをバイパスする FLOOP_TOKEN 環境変数を組み合わせることで、 CLI は 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

環境変数

変数用途
FLOOP_API_URLAPI ベース URL をオーバーライドします。デフォルト:https://www.floopfloop.com。ステージング環境に便利です。
FLOOP_TOKEN~/.floop/config.json のトークンの代わりに使用するベアラートークンです。CI に便利です。

終了コード

シェルスクリプティング用の終了コード一覧:

コード意味
0成功
1ユーザーエラー(不正なフラグ、バリデーション、開発モードでのアップグレード拒否)
2認証エラー(未ログイン、トークン失効、FORBIDDEN)
3レート制限
4サーバーエラー(5xx、インストール・アップグレードの失敗)
5ネットワーク到達不能

設定ファイル

CLI はセッションを ~/.floop/config.json0600(オーナーの読み取り・書き込みのみ)の権限で保存します。 ファイルの内容:

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

OS キーチェーンのサポート(macOS キーチェーン、Windows 資格情報マネージャー)は ロードマップに含まれています。

プライバシー & テレメトリー

最初のインタラクティブな実行時に、CLI は匿名の使用データを共有するかどうかを 確認します。オプトイン方式ですn を選ぶと 何も送信されません。y を選ぶと、CLI はコマンド終了ごとに/api/cli/telemetry に 1 件の POST を送信します。送信内容は以下の 6 フィールドのみです:

  • anonymousId — オプトイン時に生成されるランダムな 16 進数。アカウントとは紐付けられません
  • command — トップレベルのコマンド名(例:newlist
  • exitCode
  • durationMs
  • version — CLI バージョン
  • osdarwin / win32 / linux

送信しないもの:プロンプト、プロジェクト名、ファイルの内容、 コマンド引数、メールアドレス、IP アドレス(バックエンドはレート制限のためにリクエスト IP を ログに記録しますが、テレメトリー行とは紐付けられません)。 ペイロードは上記の 6 フィールドのみです。

スキップリスト — floop config floop completionfloop help --help、または --version に対してテレメトリーは送信されません (これらは循環的、パイプされることが多い、またはコンテンツが空のいずれかです)。 テレメトリーには厳密な 1 秒のタイムアウトがあり、CLI の終了を遅延させることはありません。

いつでも無効化できます: floop config set telemetry false、または ~/.floop/config.json を直接編集してください。

ソース & リリース

macOS、Windows、Linux 向けのビルド済みバイナリは、cli-v* タグごとに GitHub Releases に公開されます。リリースノートにはインストール手順と SHA256 チェックサムが含まれています。

リリースアーティファクトの一覧は 最新リリースをご覧ください。