Flight Hourly Web Search
Use this skill only for the local flight monitor workflow.
Hard constraints
- Use web search only.
- Do not call paid flight APIs.
- Do not use browser automation, Browser Use, or scripted browsing.
- Work from currently indexed/public web results only.
- Prefer directly linked fare/result pages or credible fare aggregation pages.
Search goal
Given:
- one or more
origin_airports
- one
destination_scope
- one
top_n
Find the best currently visible low-fare options you can verify from public search results.
Origin coverage rules
- Treat
origin_airports as a required search set, not a hint.
- You must actively search across every listed origin airport. Do not silently collapse the job to the first airport only.
- When public results support it, include at least one credible finding for each listed origin before filling the remaining slots with the globally cheapest options.
- If one origin genuinely has no useful indexed fares, say that explicitly in the summary instead of pretending it was covered.
Ranking logic
- Prefer lower price.
- Prefer round-trip over one-way when both are available.
- Prefer concrete date ranges over vague marketing copy.
- Prefer fresher or more directly attributable sources.
- Drop results that have no usable source URL.
- Keep searching until you have a credible Top N set when public results support it; do not stop at 3-5 items just because you found a few cheap fares early.
Destination mix (longer / US-forward)
The board is most useful when it surfaces longer, transborder value, not only trips that are cheap because they are very short.
- Prioritize US destinations that are farther from the origin than the immediate Pacific Northwest / BC–Alberta corridor when public results support it—for example U.S. East Coast, Florida, Texas, the Southwest, Chicago-area hubs, and other mid-continent or cross-country markets—provided the fare is still credible and well-sourced.
- Deprioritize filling most of the Top N with ultra-short hops whose low price is “normal” (e.g. adjacent Canadian cities, routine YVR/YYC/YYJ/YYF-style short haul, or border-adjacent US airports like BLI unless the deal is clearly exceptional vs. typical pricing).
- When both a nearby cheap route and a more distant US option are verifiable, prefer including the longer US option in the list so the user sees variety beyond short-haul defaults.
- Still obey origin coverage: every listed
origin_airport should get a fair search; this rule only affects which destinations you emphasize when ranking and choosing among similarly credible results.
- If
destination_scope includes Canada, you may still include standout Canadian long-haul, but do not let the entire list collapse to only the closest Canadian cities when US results are available.
Output contract
You must output a fenced json block first, then a short human-readable summary.
The JSON object must match this shape:
{
"headline": "One-line snapshot of this hour",
"summary": "Short summary of whether this hour has anything meaningfully cheap",
"findings": [
{
"route": "YVR -> YYC",
"origin_airport": "YVR",
"destination_airport": "YYC",
"price_display": "CA$81 round trip",
"price_value": 81,
"currency": "CAD",
"date_range": "Apr 23-28",
"source_name": "Google Flights",
"source_url": "https://...",
"note": "Why this fare is worth noticing"
}
]
}
Output rules
- Target
top_n findings whenever public web results can support that many credible entries.
- Return fewer findings only when the current web results genuinely do not provide enough verifiable options; never invent entries.
price_value should be numeric when reasonably inferable, otherwise null.
destination_airport should be IATA when clear; otherwise use the city/airport token that is actually visible.
note should stay short and factual.
- The summary should briefly mention origin coverage, especially when one origin produced no credible fares.
- After the JSON block, add a compact Markdown summary suitable for a terminal transcript.
1---2name: flight-hourly-web-search3description: Search current low-fare flights from a configured origin to a configured destination scope using web search only. Use for the OrbitScan (flight-deal-agent repo) hourly terminal/dashboard workflow when the result must avoid paid APIs and browser automation, and return a structured top-N list with links and a short narrative summary.4---56# Flight Hourly Web Search78Use this skill only for the local flight monitor workflow.910## Hard constraints1112- Use web search only.13- Do not call paid flight APIs.14- Do not use browser automation, Browser Use, or scripted browsing.15- Work from currently indexed/public web results only.16- Prefer directly linked fare/result pages or credible fare aggregation pages.1718## Search goal1920Given:21- one or more `origin_airports`22- one `destination_scope`23- one `top_n`2425Find the best currently visible low-fare options you can verify from public search results.2627## Origin coverage rules2829- Treat `origin_airports` as a required search set, not a hint.30- You must actively search across every listed origin airport. Do not silently collapse the job to the first airport only.31- When public results support it, include at least one credible finding for each listed origin before filling the remaining slots with the globally cheapest options.32- If one origin genuinely has no useful indexed fares, say that explicitly in the summary instead of pretending it was covered.3334## Ranking logic35361. Prefer lower price.372. Prefer round-trip over one-way when both are available.383. Prefer concrete date ranges over vague marketing copy.394. Prefer fresher or more directly attributable sources.405. Drop results that have no usable source URL.416. Keep searching until you have a credible Top N set when public results support it; do not stop at 3-5 items just because you found a few cheap fares early.4243## Destination mix (longer / US-forward)4445The board is most useful when it surfaces **longer, transborder value**, not only trips that are cheap because they are very short.4647- **Prioritize US destinations** that are **farther from the origin** than the immediate Pacific Northwest / BC–Alberta corridor when public results support it—for example U.S. East Coast, Florida, Texas, the Southwest, Chicago-area hubs, and other **mid-continent or cross-country** markets—provided the fare is still credible and well-sourced.48- **Deprioritize** filling most of the Top N with **ultra-short hops** whose low price is “normal” (e.g. adjacent Canadian cities, routine YVR/YYC/YYJ/YYF-style short haul, or border-adjacent US airports like BLI unless the deal is clearly exceptional vs. typical pricing).49- When both a nearby cheap route and a **more distant US** option are verifiable, **prefer including the longer US option** in the list so the user sees variety beyond short-haul defaults.50- Still obey **origin coverage**: every listed `origin_airport` should get a fair search; this rule only affects **which destinations you emphasize** when ranking and choosing among similarly credible results.51- If `destination_scope` includes Canada, you may still include standout Canadian long-haul, but **do not let the entire list collapse to only the closest Canadian cities** when US results are available.5253## Output contract5455You must output a fenced `json` block first, then a short human-readable summary.5657The JSON object must match this shape:5859```json60{61 "headline": "One-line snapshot of this hour",62 "summary": "Short summary of whether this hour has anything meaningfully cheap",63 "findings": [64 {65 "route": "YVR -> YYC",66 "origin_airport": "YVR",67 "destination_airport": "YYC",68 "price_display": "CA$81 round trip",69 "price_value": 81,70 "currency": "CAD",71 "date_range": "Apr 23-28",72 "source_name": "Google Flights",73 "source_url": "https://...",74 "note": "Why this fare is worth noticing"75 }76 ]77}78```7980## Output rules8182- Target `top_n` findings whenever public web results can support that many credible entries.83- Return fewer findings only when the current web results genuinely do not provide enough verifiable options; never invent entries.84- `price_value` should be numeric when reasonably inferable, otherwise `null`.85- `destination_airport` should be IATA when clear; otherwise use the city/airport token that is actually visible.86- `note` should stay short and factual.87- The summary should briefly mention origin coverage, especially when one origin produced no credible fares.88- After the JSON block, add a compact Markdown summary suitable for a terminal transcript.