PickSkill
← Back

Air France - KLM

Track Air France flights using the Air France–KLM Open Data APIs (Flight Status). Use when the user gives a flight number/date (e.g., AF007 on 2026-01-29) and wants monitoring, alerts (delay/gate/aircraft changes), or analysis (previous-flight chain, aircraft tail number → cabin recency / Wi‑Fi). Also use when setting up or tuning polling schedules within API rate limits.

README.md
Rendered from GitHub raw
View raw ↗

airfrance-afkl-skill

Clawdbot skill to track Air France flights using the Air France–KLM Open Data APIs (Flight Status).

It’s designed for day-to-day travel monitoring:

  • Flight status + schedule vs latest published times
  • Terminal / gate (when published)
  • Boarding close time (when available)
  • Aircraft tail number + cabin configuration summary (best-effort)
  • Previous-flight chain (useful to estimate delay risk)
  • Compact alerts: you only get pinged when displayed fields change

Prerequisites

  1. Register and create an API key on the AFKL developer portal:
  1. Subscribe to Open Data products (at least Flight Status API).

Configuration

Provide credentials via environment variables (recommended):

export AFKL_API_KEY="..."
# optional
export AFKL_API_SECRET="..."

Or via files in your state dir:

  • Set CLAWDBOT_STATE_DIR to your state directory (or it falls back to ./state)
  • Create:
    • afkl_api_key.txt
    • afkl_api_secret.txt (optional)

Usage

One-off query

node skills/airfrance-afkl/scripts/afkl_flightstatus_query.mjs \
  --carrier AF --flight 7 --origin JFK --dep-date 2026-01-29

Watcher (poll + change-only output)

node skills/airfrance-afkl/scripts/afkl_watch_flight.mjs \
  --carrier AF --flight 7 --origin JFK --dep-date 2026-01-29 --prev-depth 2

Output behavior:

  • Prints nothing when nothing changed
  • Prints a ready-to-send multi-line message when something changed

The message is designed to be compact and human-readable:

  • Emojis for 🛫/🕤/🛬/✈️/📶
  • Weekday + date + time (to avoid timezone ambiguity)
  • Tail + aircraft type + cabin config summary
  • Wi‑Fi line (fast/slow) when available
  • Previous-flight chain summary (e.g. ↩️ Dubai → Paris → New York (on time))
  • Optional headline line highlighting what changed (new time, inbound delay, new aircraft, boarding started)

Rate limits

AFKL Open Data is rate-limited (commonly 1 request/second and a daily quota). The watcher is designed to be schedule-aware and to avoid unnecessary calls.

Notes / disclaimers

  • Aircraft “intel” (age, first flight, etc.) is best-effort and relies on public sources.
  • Cabin configuration identifiers can vary by fleet and may not guarantee the exact seat product.

License

MIT (recommended) — add a LICENSE file if you want.