Seats.aero Award Monitor
/install seats-aero-monitor
Seats.aero Monitor Skill
Track award availability from Seats.aero without airline-specific confirmers.
What This Skill Does
- Query Seats.aero cached search for multiple watchers.
- Normalize raw API records into a stable internal schema.
- Persist watcher config + watcher state in SQLite for idempotent
new_onlyalerting. - Return
[UNCONFIRMED / Seats.aero]alert events fornone -> availabletransitions.
Entry Point
python3 \x3Cskill-dir>/scripts/check_awards.py --watchers-source db
Optional Flags
# Single watcher only
python3 \x3Cskill-dir>/scripts/check_awards.py --watchers-source auto --watcher ana_sfo_hnd
Watchers In DB
Import watchers from config into DB:
python3 \x3Cskill-dir>/scripts/check_awards.py --watchers-import --replace-watchers --config /path/to/watchers.json
List DB watchers:
python3 \x3Cskill-dir>/scripts/check_awards.py --watchers-list
Update watchers' date ranges:
# Update specific watcher by ID
python3 \x3Cskill-dir>/scripts/update_watcher_dates.py \
--watcher pvg_sfo_aeroplan_2026summer --start 2026-08-01 --end 2026-08-15
# Update all watchers from an origin airport
python3 \x3Cskill-dir>/scripts/update_watcher_dates.py \
--origin PVG --start 2026-08-01 --end 2026-08-15
# Dry run (preview changes)
python3 \x3Cskill-dir>/scripts/update_watcher_dates.py \
--origin PVG --start 2026-08-01 --end 2026-08-15 --dry-run
# Skip confirmation prompt
python3 \x3Cskill-dir>/scripts/update_watcher_dates.py \
--origin PVG --start 2026-08-01 --end 2026-08-15 --yes
# See all options
python3 \x3Cskill-dir>/scripts/update_watcher_dates.py --help
Fixed date range support:
fixed_start_date+fixed_end_date(YYYY-MM-DD) to track a fixed window (for example, August only).- Set both to same day to track one specific date.
- If fixed dates are set,
window_daysis ignored.
Default state DB path (override via --state-db or SEATS_AERO_DB env):
\x3Cskill-dir>/data/monitor.db(relative to skill installation)- Or set
SEATS_AERO_DB=/path/to/monitor.dbin environment
Requirements
- Python: 3.11+ (uses
str | Noneunion syntax) - SQLite3: Built into Python standard library; DB file and schema are auto-created on first run
- Optional:
brotliPython package (only needed if Seats.aero API returns Brotli-compressed responses) - Seats.aero API Key: Required for all API calls
Environment
Set Seats API key before running:
export SEATS_AERO_API_KEY="pro_xxx..."
Important Limitation
All alerts are candidate signals from Seats.aero. This skill intentionally does not perform airline-side confirmation and marks all alerts as unconfirmed.
This script does not send messages directly; caller/agent should read data.alert_events from JSON output and send notifications.
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install seats-aero-monitor - After installation, invoke the skill by name or use
/seats-aero-monitor - Provide required inputs per the skill's parameter spec and get structured output
What is Seats.aero Award Monitor?
Monitor award availability via Seats.aero API across configurable watchers (route/program/cabin/date window), emit UNCONFIRMED alerts on none->available tran... It is an AI Agent Skill for Claude Code / OpenClaw, with 81 downloads so far.
How do I install Seats.aero Award Monitor?
Run "/install seats-aero-monitor" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Seats.aero Award Monitor free?
Yes, Seats.aero Award Monitor is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Seats.aero Award Monitor support?
Seats.aero Award Monitor is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Seats.aero Award Monitor?
It is built and maintained by softtrymee (@softtrymee); the current version is v1.0.1.