How iamakashtechie/travel-concierge-agent works
Travel Concierge is a local ADK multi-agent demo: a traveler asks for trip help, the root concierge delegates to planning, booking, or pre-trip assistance, and the specialist returns a response using tools and session resources. Planning captures trip details and creates saved itineraries; booking consults those details or an itinerary before showing demo options and requires approval for demo confirmation. Pre-trip research combines destination, language, and weather information. The API exposes chat and health endpoints. Edges use the README and shown source; ADK-mediated calls and unsampled specialist routing are described at a high level rather than inferred as direct calls.
Main entry points: runtime.py ADK runtime · booking/agent.py Booking specialist · agent.py Root concierge · planning/agent.py Trip planning
Components 19
User entry
- Chat API
app.py - ADK runtime
runtime.py
Agent workflows
- Root concierge
agent.py - Trip planning
sub_agents/planning/agent.py - Booking specialist
sub_agents/booking/agent.py - Pre-trip specialist
sub_agents/pre_trip/agent.py
Travel operations
- Trip details
tools/trip_state.py - Itinerary artifacts
tools/trip_state.py - Flight and hotel search
tools/booking.py - Demo confirmation
tools/booking_confirmation.py
Session services
- Cross-session memory
runtime.py - Session service
runtime.py - Artifact service
runtime.py
Pre-trip research
- Pre-trip workflow
orchestration/pre_trip_workflow.py - Destination facts
tools/destination_info.py - Local phrases
sub_agents/pre_trip/translation.py - Weather service
tools/weather.py
Other components
- Traveler
- Weather provider
Connections 24
- Traveler → Chat API: sends chat
README.md - Chat API → ADK runtime: runs turn
app.py - ADK runtime → Root concierge: runs agent
runtime.py - ADK runtime → Session service: manages sessions
runtime.py - ADK runtime → Cross-session memory: configures memory
runtime.py - ADK runtime → Artifact service: configures artifacts
runtime.py - Root concierge → Trip planning: delegates requests
README.md - Root concierge → Booking specialist: delegates requests
README.md - Root concierge → Pre-trip specialist: delegates requests
README.md - Trip planning → Trip details: reads and saves
sub_agents/planning/agent.py - Trip planning → Itinerary artifacts: saves and loads
sub_agents/planning/agent.py - Trip planning → Cross-session memory: recalls preferences
sub_agents/planning/agent.py - Booking specialist → Trip details: reads details
sub_agents/booking/agent.py - Booking specialist → Itinerary artifacts: loads itinerary
sub_agents/booking/agent.py - Booking specialist → Flight and hotel search: searches options
sub_agents/booking/agent.py - Booking specialist → Demo confirmation: confirms approval
sub_agents/booking/agent.py - Pre-trip specialist → Local phrases: gets phrases
sub_agents/pre_trip/agent.py - Pre-trip workflow → Destination facts: researches facts
orchestration/pre_trip_workflow.py - Pre-trip workflow → Local phrases: researches phrases
orchestration/pre_trip_workflow.py - Pre-trip workflow → Weather service: gets forecast
orchestration/pre_trip_workflow.py - Weather service → Weather provider: fetches forecast
tools/weather.py - Weather service → Weather provider: optionally uses Open-Meteo
README.md - Itinerary artifacts → Artifact service: stores session artifact
README.md - Chat API → Traveler: returns response
README.md