What makes flt different

Power features you won't find on Google Flights or Skyscanner. Built for agents who search hundreds of routes.

01

Multi-Origin Compare

Client flexible on departure city? Search KUL, BKK, and MNL to Amsterdam in one command. One sorted result set across all origins.

$ flt compare KUL,BKK,MNL AMS 2026-03-22
origin cheapest carrier stops duration
KUL €412 Malaysia Airlines 1 15h 40m
BKK €438 EVA Air 1 17h 10m
MNL €523 KLM 1 16h 55m
3 origins · 84 total results
02

Route Intelligence

An offline route graph with 67,000+ edges. See which hubs connect two cities, find bridge airports, and force waypoints. Works without an internet connection.

$ flt connections AMS SYD --max-stops 2 --names
hub via distance
SIN Singapore 15,840 km
HKG Hong Kong 16,220 km
DXB Dubai 16,710 km
DOH Doha 17,090 km
18 connection routes found
03

Power Filters

Composable filters that stack: exclude Gulf carriers, require morning departures, cap duration at 16 hours, avoid specific hubs. Set defaults once via config and they apply to every search.

$ flt AMS NRT 2026-04-08 \
--exclude-region gulf \
--dep-after 08:00 \
--max-dur 960 --limit 3
O1 €728 Qatar Airways 1 stop 15h 55m 08:15→07:10+1
O2 €894 Turkish 1 stop 14h 30m 09:40→07:10+1
O3 €912 Finnair 1 stop 13h 45m 10:15→06:00+1
Filtered: 28 → 3 results
04

Session Favorites

Bookmark any result during a session. Favorites store full offer snapshots, so they survive cache expiry. Compare options hours later without re-searching.

$ flt fav O1
Saved: AMS→NRT €574 Etihad (1 stop, 19h 5m)
$ flt favs
# route price carrier stops duration
F1 AMS→NRT €574 Etihad 1 19h 5m
F2 NRT→MNL €175 Cebu Pac direct 5h 25m
F3 MNL→AMS €390 Air India 1 26h
Total: €1,139
05

Three Interfaces, One Engine

Same search engine powers a modern CLI, a retro Sabre-style TUI, and a SvelteKit web app with streaming results and route maps.

CLI
$ flt AMS NRT 2026-04-08
O1 €574 Etihad 1 stop
TUI
1AMSNRT08APR
01 574EUR EY 1STP 19H05
Web
Etihad €574
1 stop · 19h 5m · AUH
06

Sabre-Style TUI

A fullscreen green-on-black terminal that speaks GDS. Type 1AMSNRT08APR/C for business class, *1 to inspect, MD to scroll. Complete with boot animation and forced uppercase input.

SABRE
> 1AMSNRT08APR/C
01 EY AMS NRT 1025 1230+1 J 1STP 574EUR A321/A350
02 QR AMS NRT 1615 1910+1 J 1STP 728EUR B777/A350
03 TK AMS NRT 1440 1910+1 J 1STP 894EUR A321/B787
3 OF 28 RESULTS >
07

Connection Gap Analysis

The itinerary builder calculates door-to-door time between segments and warns about tight connections or long layovers. Know before you book whether a 2h10m transfer at AUH is comfortable or cutting it close.

$ flt itinerary AMS-NRT@0408:O1 \
NRT-MNL@0414:O1 --analyze
Leg 1 AMS→AUH 10:25–19:15 6h 50m
AUH layover 2h 10m
Leg 2 AUH→NRT 21:25–12:30 10h 5m
⚠ Gap AMS-NRT → NRT-MNL: 6 days 1h 15m
Arrives: Apr 9 12:30 · Departs: Apr 14 13:45
Leg 3 NRT→MNL 13:45–18:10 5h 25m direct
08

Agent-First Design

Built for AI coding agents. flt prime outputs a structured briefing. JSONL output, stable flight IDs (SHA-1 hashed from legs), structured error codes, and a phased workflow for autonomous operation.

$ flt prime
{"phase":"orient","commands":['}
"flt airports <city>",
"flt connections <from> <to>",
"flt config show"
]}
{"phase":"search","commands":['}
"flt <from> <to> <date>",
"flt matrix <from> <to> --from --to"
]}

Feature Comparison

How flt stacks up against the alternatives.

FeaturefltGoogle FlightsSkyscanner
Multi-origin compare
Offline route graph
Composable filters
Session memory
CLI + TUI + Web
Date range matrix
Itinerary builder
Export (PDF/MD/TSV)
Agent-first design
Stable flight IDs

Ready to fly?

Install flt and start searching flights from your terminal.

bun install -g github:doublej/flt