Claude Code plugin for Ben Gurion Airport (TLV) flight data.
- Live flights — Departures, arrivals, status, gates from data.gov.il
- Destination weather — Current conditions via Open-Meteo (free, no API key)
- Historical analysis — On-time performance, delay stats, cancellation rates from local SQLite DB
- IATA reference — 999 airlines + 9,240 airports shipped with the plugin (no download needed)
- Bilingual — Hebrew and English
/install-plugin omriariav/natbag-skill
No setup required. On first use, the plugin automatically:
- Copies shipped
data/db.db(airlines + airports) to~/.natbag/flights.db - Fetches live flight data from Ben Gurion Airport
- Starts accumulating historical data for delay analysis
The skill triggers automatically when you ask about TLV flights. You can also invoke it directly:
/natbag departures
/natbag arrivals
/natbag LY001
/natbag delayed
- "Show me departures from Ben Gurion"
- "Is flight LY001 on time?"
- "When is the next flight to Amsterdam?"
- "Any cancelled flights?"
- "Weather in London for my flight"
- "Are El Al flights to JFK usually delayed?"
- "מה הטיסות היום מנתב״ג?"
Install → ships data/db.db (999 airlines, 6,072 airports)
↓
First use → copies IATA data into ~/.natbag/flights.db + fetches live flights
↓
Every use → PreToolUse hook runs snapshot.py (once daily, self-guards)
↓
Query → scripts return clean JSON → Claude formats for user
snapshot.py— fetches live flights, upserts into SQLite, imports IATA data on first runquery_flights.py— queries live API with filters (airline, destination, status)query_history.py— queries local DB for historical stats, airport/airline lookups
Settings are stored in ~/.natbag/config.json (created automatically on first use):
{
"daily_snapshot": true,
"last_snapshot": "2026-03-21T10:00:00+00:00"
}Disable daily snapshots:
Tell Claude: "disable natbag daily snapshots"
Or manually:
python3 -c "import json; f=open('$HOME/.natbag/config.json','r+'); d=json.load(f); d['daily_snapshot']=False; f.seek(0); json.dump(d,f,indent=2); f.truncate()"| Data | Source | Freshness |
|---|---|---|
| Flight data | Israel Open Data Portal | Live (rolling ~3 day window) |
| Weather | Open-Meteo | Live (geocoding by city name) |
| Airlines | Wikipedia | Shipped (March 2026), 999 airlines |
| Airports | ip2location + OpenFlights | Shipped (Dec 2025 + 2017 fallback), 9,240 airports |
| Version | Description |
|---|---|
| 1.2.1 | Version bump to force marketplace sync with v1.2.0 fixes |
| 1.2.0 | --date filter for accurate single-day counts, automatic pagination, input validation |
| 1.1.0 | Flight change history tracking — status/time/gate changes logged per snapshot |
| 1.0.10 | Fix hook protocol errors for non-natbag skills, file locking, atomic DB upgrades |
| 1.0.9 | Merged airport data (9,240 airports from ip2location + OpenFlights), city-name geocoding |
| 1.0.8 | Partial Hebrew search, user-agent header, input sanitization |
| 1.0.7 | Server-side --upcoming and --max filters |
| 1.0.6 | Fresh IATA data, clean JSON output, DB upgrade path |
| 1.0.1 | Fix hooks.json format for plugin schema |
| 1.0.0 | Initial release — live flights, weather, historical analysis, IATA reference |
Flight data: data.gov.il terms.
Airport data is a modified merge of ip2location IATA/ICAO (CC BY-SA 4.0) and OpenFlights (ODbL-1.0). Airline data scraped from Wikipedia (CC BY-SA 4.0).