Orchestrate the complete travel booking workflow. Coordinate FlightClaw, VisaClaw, and SafetyClaw agents to research, validate, and book trips. Use when user wants to plan and book a complete trip with multiple components (flights, visas, safety checks) handled in one workflow.
The conductor that runs your travel agent orchestra.
1. RECEIVE trip request
└── origin, destination, dates, passengers, preferences
2. RUN FlightClaw → Get cheap + fast options
└── Present choices, user selects
3. RUN VisaClaw → Check entry requirements
└── Alert if visa/passport issues detected
4. RUN SafetyClaw → Check advisories + alerts
└── Warn if Level 3+ advisory or active disruptions
5. VALIDATE → All checks pass?
└── Block booking if critical issues found
6. CONFIRM → Present final trip summary
└── Get user approval
7. BOOK → Execute booking via APIs
└── Flight, insurance, add-ons
8. CONFIRM → Send confirmation + itinerary
└── Email/message with booking refs
python3 scripts/book_trip.py \
--origin SIN \
--destination BKK \
--depart 2025-05-15 \
--return 2025-05-20 \
--passengers 2 \
--nationality SG \
--mode coordinated
| Flag | Description | Example |
|---|---|---|
--origin, -o | From airport | SIN, KUL |
--destination, -d | To airport | BKK, NRT |
--depart | Departure date | 2025-05-15 |
--return | Return date (optional) | 2025-05-20 |
--passengers, -p | Number | 1, 2 |
--nationality, -n | For visa check | SG, MY |
--mode | How to run agents | coordinated, flight-only, research-only |
--cabin | Class | economy, business |
| Mode | Description |
|---|---|
research-only | Run all agents, show results, don't book |
coordinated | Full workflow with user confirmation at each step |
flight-only | Just flights, skip visa/safety |
auto-book | Research + book without stops (dangerous!) |
The coordinator calls other agents:
# Calls FlightClaw
flight_results = run_agent("flight-search", params)
# Calls VisaClaw
visa_results = run_agent("visa-checker", params)
# Calls SafetyClaw
safety_results = run_agent("safety-alerts", params)
# Makes go/no-go decision
decision = validate_trip(flight_results, visa_results, safety_results)
Final trip package includes:
references/booking_apis.md - API documentationassets/confirmation_template.html - Email template