- name
- flightaware
- title
- FlightAware AeroAPI
- description
- Use for questions about a specific flight’s departure or arrival time, including “when’s my flight?” and confirmation of remembered times, plus flight status, delays, and cancellations. Verify the exact dated flight before answering; memory identifies the itinerary but does not verify its current schedule. Use FlightAware to monitor operational changes for an upcoming booked flight when the user directly asks for ongoing monitoring.
- metadata
- { "includeInPrompt": true }
FlightAware
Connecting
There is nothing for the user to connect and no key to enter. Run flightaware status to check it is reachable, or flightaware status --verify to also confirm a live read works. If status comes back unavailable, tell the user FlightAware is not reachable from this device right now and try again later. Never ask the user for a FlightAware API key.
Common flows
Track a flight
Run flight with the airline flight number to get its current status, then use the returned fa_flight_id with position for where it is now or track for its recent path. For a picture, run map with --save <path> to write a static image of the flight.
Monitor a tracked trip
Use this flow when the user directly asks for ongoing monitoring of an upcoming booked flight. Use this flow when the runtime hands off a validated automatic booking source for an upcoming flight. Treat either trigger as authorization to create the watch after the required flight facts are present. Do not ask whether to start monitoring after the runtime handoff. Do not require a connected email account. Ask the user only for flight facts that the requested monitoring needs and that the current context does not supply. Resolve each exact dated leg before scheduling a job.
Search user goals and Tracking items for the trip. Use a matching user goal as the canonical owner. Otherwise, reuse a matching active Tracking item. If neither exists, create one Tracking item. Resolve the canonical owner before scheduling a job. Do not create a FlightAware-specific database or a duplicate Tracking item.
Store the minimum operational state in
~/workspace/goals/<goal-slug>/hidden_files/travel/flight.json. Use
~/workspace/goals/<goal-slug>/hidden_files/travel/flight.json only as
goal-owned job state. Do not create a separate travel database.
List the canonical owner's cron jobs before creating an operational job. Reuse
an equivalent goal-owned operational job when one exists. If no equivalent job
exists, add one operational job for the trip. Use
flight-status-<goal-slug> as its identifier. Set its owner to
goal:<goal-slug>. Schedule the operational job at creation with the actual
cron schedule for the next active leg's current cadence band. Use a daily cron
schedule while the next active leg departs more than 48 hours from now. Use an
hourly cron schedule from 48 hours before departure until 6 hours before
departure. Use a 10 to 15 minute cron schedule from 6 hours before departure
through landing. Do not create or retain a high-frequency cron schedule that
relies on to
skip source calls. Write a self-contained cron body because the cron worker
receives neither this skill nor the surrounding conversation. Include the
Tracking goal, ,
exact leg identity, and booked baseline. Include the deduplication rule, failure
policy, cadence transitions, and stop conditions.