Trip - Planner - Agent

byvaniya lajja

Multi-agent trip planning assistant that takes a natural-language request (e.g., "5-day trip to a hill station in India under ₹25,000") and orchestrates three specialist agents: a Destination Agent that suggests options justified against user preferences and never violates hard constraints; an Itinerary Agent that builds a realistic day-by-day plan and flags uncertainty on timing/travel; and a Budget Agent that estimates cost, never silently exceeding budget, and proposes cheaper alternatives on overage. The orchestration layer decides which agents to invoke, chains dependent calls (Destination → Itinerary → Budget), and synthesizes one coherent response. Built with FastAPI, React/TypeScript, and Groq, with constraint enforcement handled deterministically in code rather than relying on LLM compliance.

HomeBudgetDestinations
Home

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 5

Trip - Planner - Agent

Introduction

The "Trip - Planner - Agent" project aims to develop a multi-agent trip planning assistant that processes natural-language requests to plan trips efficiently. The system will utilize FastAPI, React/TypeScript, and Groq to orchestrate three specialized agents: Destination Agent, Itinerary Agent, and Budget Agent. The orchestration layer will ensure deterministic constraint enforcement to provide users with coherent and budget-compliant trip plans.

System Overview

The Trip - Planner - Agent system is designed to assist users in planning trips by processing natural-language requests. The system orchestrates three specialized agents:

  1. Destination Agent: Suggests destination options based on user preferences and constraints.
  2. Itinerary Agent: Constructs a realistic day-by-day itinerary, highlighting any uncertainties in timing or travel.
  3. Budget Agent: Estimates costs, ensuring the budget is not exceeded, and suggests cheaper alternatives if necessary.

The orchestration layer manages the invocation of these agents, chains dependent calls, and synthesizes a coherent response for the user.

Page 2 of 5

Functional Requirements as Story Points

  • As a User, I should be able to input a natural-language request for a trip plan.
  • As a Destination Agent, I should suggest destination options that align with user preferences and constraints.
  • As an Itinerary Agent, I should create a detailed day-by-day itinerary and flag any uncertainties.
  • As a Budget Agent, I should estimate the trip cost and ensure it does not exceed the user's budget.
  • As a Budget Agent, I should propose cheaper alternatives if the estimated cost exceeds the budget.
  • As the Orchestration Layer, I should determine which agents to invoke and chain their calls to produce a coherent response.

User Personas

  • User: Individuals seeking to plan a trip using natural-language requests.
  • Destination Agent: A system component responsible for suggesting destinations.
  • Itinerary Agent: A system component responsible for creating itineraries.
  • Budget Agent: A system component responsible for estimating costs and managing budgets.

Core User Flows

  1. User submits a trip request in natural language.
  2. Orchestration Layer invokes the Destination Agent.
  3. Destination Agent suggests destination options.
  4. Orchestration Layer invokes the Itinerary Agent.
  5. Itinerary Agent creates a day-by-day itinerary.
  6. Orchestration Layer invokes the Budget Agent.
  7. Budget Agent estimates costs and checks against the budget.
  8. Budget Agent suggests cheaper alternatives if needed.
  9. Orchestration Layer synthesizes a coherent response and presents it to the User.
Page 3 of 5

Visuals Colors and Theme

  • primary: #1A73E8 (a deep blue for brand identity)
  • primary_light: #E8F0FE (a light blue for hover states)
  • secondary: #FF6F61 (a coral hue for headlines and links)
  • accent: #FFD700 (a vibrant gold for CTAs and active states)
  • highlight: #FFA500 (a warm orange for notifications and active indicators)
  • bg: #FFFFFF (a clean white background)
  • surface: rgba(250, 250, 250, 0.8) (a soft grey for card backgrounds)
  • text: #202124 (a dark grey for primary text)
  • text_muted: #5F6368 (a muted grey for secondary text)
  • border: rgba(218, 220, 224, 0.2) (a subtle grey for borders)

Signature Design Concept

The homepage will feature an interactive "Travel Map Journey" concept. Users will see a dynamic map with animated paths representing potential travel routes. As users hover over different destinations, the map will highlight the route and display a brief overview of the itinerary and budget. Clicking on a destination will flip the map to reveal detailed trip plans, including day-by-day itineraries and budget breakdowns. This concept will use motion/react for animations and transitions, providing an engaging and interactive experience.

Page 4 of 5

Landing Hero Motion Brief

The landing hero will depict a map transforming into a detailed itinerary. The animation will start with a user inputting a trip request, followed by the map highlighting potential destinations. The map will then morph into a detailed itinerary, showcasing the transformation from request to plan. This loop will last 10 seconds, with interactive elements allowing users to explore different destinations and itineraries. The animation will be built using motion/react for smooth transitions and interactions.

Interaction Model & Motion Direction

  • Intended Interaction Model: Animated
    • The landing page will feature moderate scroll-triggered reveals and hover transitions.
    • Interactive elements will have spring physics for a polished user experience.
    • Each section will have a distinctive core mechanic, such as morphing SVGs or kinetic typography.

Non-Functional Requirements

  • The system must handle requests in natural language efficiently.
  • The system should provide responses within a reasonable time frame.
  • The system must ensure data privacy and security for user information.
Page 5 of 5

Tech Stack

  • Frontend: React with TypeScript
  • Backend: FastAPI
  • Database: MySQL or MariaDB
  • AI Tools: Groq for deterministic constraint enforcement

Assumptions and Constraints

  • The system assumes users will provide clear and concise natural-language requests.
  • The system is constrained by the need to operate within the specified budget and user preferences.
  • The system must comply with data protection regulations applicable in India.

Glossary

  • Orchestration Layer: The component responsible for managing the invocation of agents and synthesizing responses.
  • Destination Agent: A system component that suggests travel destinations.
  • Itinerary Agent: A system component that creates detailed travel itineraries.
  • Budget Agent: A system component that estimates costs and manages budgets.
Home design preview
Itinerary: View Day Plan
Budget: Estimate Cost
Budget: Check Against Budget
Budget: Suggest Alternatives
Budget: View Cost Breakdown
Home design preview
Itinerary: View Day Plan
Budget: Estimate Cost
Budget: Check Against Budget
Budget: Suggest Alternatives
Budget: View Cost Breakdown