flypod
CLI reference

Account commands

Connect the flypod CLI to an account, list owned sites, attach anonymous deploys, and remove the local session.

Accounts are optional. Anonymous deploys still work without one and expire after 14 days. A connected CLI creates owned deploys with no expiry.

flypod login

flypod login

The CLI requests a device code, prints the code and approval URL, and waits for you to approve the request in a signed-in browser. It then saves the returned session token in session.json (mode 0600) inside your per-user flypod config directory. Nothing is written to the project.

If you already hold a Better Auth session token, you can save it directly:

flypod login --token <session_token>

For a stateless agent or CI job, prefer the environment instead of a session file:

FLYPOD_TOKEN=<session_token> flypod ./dist --json

Session tokens act as your account. Store them in a secret manager, never commit them, and do not confuse them with a site's manage_token.

Auto-attach on login

After login, the CLI finds anonymous sites remembered on this machine and sends their stored manage_tokens to POST /account/bulk-attach. Successfully attached sites become owned and permanent. The tokens stay in the mode-0600 project registry and travel only over HTTPS.

flypod logout

flypod logout

Deletes the saved session from session.json. It does not revoke other browser or CLI sessions and does not delete sites.

flypod list

flypod list

Lists owned sites as JSON on stdout. Requires a saved login or FLYPOD_TOKEN.

flypod claim

flypod claim <site_id> <claim_token>

Attaches one anonymous deploy to the authenticated account. This is mainly a cross-machine fallback: normal login auto-attaches sites the local CLI already remembers.

Credential precedence

For account operations and deploys, flypod resolves credentials in this order:

  1. FLYPOD_TOKEN for the current process.
  2. The session saved by flypod login.
  3. FLYPOD_API_KEY, accepted only as a legacy compatibility fallback.
  4. No credential, which produces an anonymous deploy.

See Tokens and ownership for the difference between account sessions, manage_token, and claim_token.

On this page