Google Flights for agents. A read-only, JSON-first flight-search CLI an LLM can drive.
no API key · no account · no OAuth
uvx gfly search JFK LHR --depart 2026-08-15
Stable, versioned schemaVersion envelope when piped. Tables for humans at a TTY.
gfly schema and an embedded gfly agent contract — zero external files.
Real failures get real codes: BLOCKED, SCHEMA_DRIFT, RATE_LIMITED + retryAfterSeconds.
--limit / --offset / --select so an agent never drowns in 40 itineraries.
A persistent, cross-process throttle that survives the fresh-process-per-call model.
It searches. It cannot book or mutate anything. Safe to hand an autonomous agent.
| 0 | ok | 7 | rate limited |
| 2 | usage / parse | 8 | retryable (transient) |
| 3 | empty results | 13 | input required |
| 4 | auth required | 20 | BLOCKED (CAPTCHA / soft-block) |
| 5 | not found | 21 | SCHEMA_DRIFT (upstream changed) |