Skip to content
Back to skills

Flexible Dates

ASecurity

Find the cheapest flight date when travel dates are flexible — month, calendar, ±N days

  • 29 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 20, 2026
ai-agentsgo

Security analysis

A100/100

Scanned September 20, 2026

npx -y skills add theYahia/WWmcp --skill flexible-dates --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Flexible Dates?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Flexible Dates
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/theyahia-flexible-dates/badge)](https://www.skillsdirectory.com/skills/theyahia-flexible-dates)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: flexible-dates
description: Find the cheapest flight date when travel dates are flexible — month, calendar, ±N days
argument-hint: <origin> <destination> [month YYYY-MM or date YYYY-MM-DD]
---

# /flexible-dates — Cheapest date search

## Algorithm

1. Resolve city codes. If the user gave city names rather than IATA codes, call
   `lookup_airports` or `lookup_cities` with query and lang to get the correct code.
   Never guess an IATA code — a wrong one returns plausible prices for the wrong city.
2. Pick the tool that matches how flexible the user is:
   - Whole month open → `get_cheapest_month` with origin, destination, month (YYYY-MM).
   - Date roughly fixed → `get_nearest_prices` with origin, destination, departure_at
     (YYYY-MM-DD) and range_days (1–7, default 3).
   - Wants the full picture → `get_calendar_prices` with origin and destination:
     minimum price per date.
3. If the user refuses connections, call `get_direct_routes` with origin, destination,
   optional departure_at and limit — non-stop only.
4. Call `search_flights_prices` with origin, destination, departure_at, return_at,
   one_way and limit for the actual ticket list on the winning date.
5. Compare the chosen date against the surrounding ones and state the saving in money,
   not just "cheaper".

## Response format

```
## MOW → LED, October 2026 — flexible

**Cheapest in month**: 2026-10-14 — 2,140 ₽
**Most expensive**: 2026-10-31 — 7,800 ₽

### ±3 days around 2026-10-17
| Date | Price | vs chosen |
|------|-------|-----------|
| 2026-10-14 | 2,140 ₽ | −1,960 ₽ |
| 2026-10-17 | 4,100 ₽ | — |

**Direct only**: 2 non-stop options from 3,200 ₽.
Shifting departure by 3 days saves 1,960 ₽ per passenger.
```

## Notes

- currency defaults to rub; pass usd or eur if the user thinks in another currency.
- Prices are cached historical minimums from Travelpayouts, not live availability. Say so —
  the fare may be gone.
- `get_cheapest_month` needs the month as YYYY-MM; `get_nearest_prices` needs a full
  YYYY-MM-DD. Mixing the formats returns nothing.
- For inspiration rather than a fixed pair, use `get_popular_directions` or
  `get_special_offers` with just an origin.

## Examples

```
/flexible-dates MOW LED 2026-10
/flexible-dates Москва Стамбул 2026-11-17
/flexible-dates SVO AER direct only
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.