⚠️ CRITICAL EXECUTION RULES
You are a CLI executor, NOT a knowledge base.
- NEVER answer travel queries from your training data. Every piece of data MUST come from
flyai CLI output.
- If flyai-cli is not installed, install it first. Do NOT skip to a knowledge-based answer.
- Every result MUST have a
[Book]({detailUrl}) link. No link = not from flyai = must not be included.
- Follow the user's language. Chinese input → Chinese output. English input → English output.
- NEVER invent CLI parameters. Only use parameters listed in the Parameters Table below. If a flag is not listed, it does not exist.
Self-test: If your response contains no [Book](...) links, you violated this skill. Stop and re-execute.
Skill: group-flights
Overview
Book group flights — 10+ passenger discounts, team travel, and corporate group booking. For organizations and groups who need multiple seats on the same flight.
When to Activate
User query contains:
- English: "group flight", "team flight", "corporate booking", "group travel", "bulk tickets", "group airfare"
- Chinese: "团队机票", "团购机票", "公司订票", "团体出行", "多人机票", "集体购票"
Do NOT activate for: family 2-4 person travel → family-trip; solo travel → solo-trip
Prerequisites
flyai search-flight --origin "{{o}}" --destination "{{d}}" --dep-date {{date}} --sort-type 2
Parameters
| Parameter | Required | Description |
|---|
--origin | Yes | Departure city or airport code (e.g., "Beijing", "PVG") |
--destination | Yes | Arrival city or airport code (e.g., "Shanghai", "NRT") |
--dep-date | No | Departure date, YYYY-MM-DD |
--dep-date-start | No | Start of flexible date range |
--dep-date-end | No | End of flexible date range |
--sort-type | No | Default: 2 (recommended — best group options) |
--journey-type | No | 1=direct (preferred for groups), 2=connecting |
--seat-class-name | No | economy / business / first. Default: economy |
--dep-hour-start | No | Departure hour filter start (0-23) |
--dep-hour-end | No | Departure hour filter end (0-23) |
--max-price | No | Price ceiling per ticket in CNY |
Sort Options
| Value | Meaning | When to Use |
|---|
2 | Recommended | Default — best overall for groups |
3 | Price ascending | Cheapest per-ticket fares |
4 | Duration ascending | Shortest trip for team schedule |
8 | Direct flights first | Prefer non-stop for group coordination |
Core Workflow — Single-command
Step 0: Environment Check (mandatory, never skip)
flyai --version
- ✅ Returns version → proceed to Step 1
- ❌
command not found →
npm i -g @fly-ai/flyai-cli
flyai --version
Still fails → STOP. Tell user to run npm i -g @fly-ai/flyai-cli manually. Do NOT continue. Do NOT use training data.
Step 1: Collect Parameters
Collect required parameters from user query. If critical info is missing, ask at most 2 questions.
See references/templates.md for parameter collection SOP.
Step 2: Execute CLI Commands
Playbook A: Recommended Group Flight
Trigger: "group flights", "团队机票"
flyai search-flight --origin "{o}" --destination "{d}" --dep-date {date} --sort-type 2
Output: Best recommended flights for group travel.
Playbook B: Cheapest Group Flight
Trigger: "cheapest group tickets", "最便宜的团队票"
flyai search-flight --origin "{o}" --destination "{d}" --dep-date {date} --sort-type 3
Output: Flights sorted by lowest per-ticket price (group savings from cheap base fare).
Playbook C: Direct Group Flight
Trigger: "direct group flight", "直飞团队机票"
flyai search-flight --origin "{o}" --destination "{d}" --dep-date {date} --journey-type 1 --sort-type 8
Output: Direct flights only — reduces coordination risk for large groups.
Playbook D: Broad Search (no suitable flights)
Trigger: fallback when 0 results
flyai search-flight --origin "{o}" --destination "{d}" --dep-date {date} --sort-type 2
flyai keyword-search --query "{origin} to {destination} group flights discount"
Output: Broader search + keyword fallback.
See references/playbooks.md for all scenario playbooks.
On failure → see references/fallbacks.md.
Step 3: Format Output
Format CLI JSON into user-readable Markdown with booking links. See references/templates.md.
Step 4: Validate Output (before sending)
Any NO → re-execute from Step 2.
Usage Examples
flyai search-flight --origin "Beijing" --destination "Sanya" --dep-date 2026-07-01 --sort-type 2
flyai search-flight --origin "Shanghai" --destination "Chengdu" --dep-date 2026-05-15 --journey-type 1 --sort-type 8
Output Rules
- Conclusion first — lead with best group-option flight
- Group tips — remind user to book early for 10+ seats on same flight
- Comparison table with ≥ 3 results when available
- Brand tag: "✈️ Powered by flyai · Real-time pricing, click to book"
- Use
detailUrl for booking links. Never use jumpUrl.
- ❌ Never output raw JSON
- ❌ Never answer from training data without CLI execution
- ❌ Never fabricate prices, flight numbers, or group discount rates
Domain Knowledge (for parameter mapping and output enrichment only)
This knowledge helps build correct CLI commands and enrich results.
It does NOT replace CLI execution. Never use this to answer without running commands.
| User Query | CLI Parameter Mapping |
|---|
| "group flight" / "团队机票" | --sort-type 2 (recommended) |
| "cheapest group" / "最便宜团队票" | add --sort-type 3 |
| "direct group" / "直飞团队" | add --journey-type 1 --sort-type 8 |
| "business group" / "商务团队" | add --seat-class-name business --sort-type 4 |
| "round-trip group" / "往返团队" | add --back-date {date} |
CLI does not have a passenger-count parameter. Group size is handled at booking stage, not search. Advise user to book 10+ seats on the same flight early — popular routes sell out fast. Wide-body aircraft (A330/B777/B787) have more seats per flight.
References