Inspiration

I asked ChatGPT to plan a road trip from San Francisco to Los Angeles for me and three friends ahead of our exchange semester. It gave us a fifteen-hour day ending at midnight, restaurants that were closed, no fuel stops until I asked, and a disclaimer that we would miss the scenery. Every suggestion still needed to be verified by hand: would it be open when we arrived, was it actually on the route, and could four students afford it?

I realized we did not need more suggestions. We needed a plan that could prove its stops were feasible. During the hackathon, I used Codex and GPT-5.6 to build an agentic workflow that finishes the job.

What it does

VibeTrip turns one request into a drivable road trip. It computes the real route, then plans verified stops along it: every stop is validated against the route, checked against opening hours when available, and scored against the user’s budget, with fuel and bathroom breaks scheduled automatically. You can talk to it like a person ("we want quiet Chinese food for lunch") and it searches only that leg of the route, then recalculates the drive through your pick. After arriving, it suggests what is worth adding at the destination, with detour time and entry cost surfaced where available, and flagged when it needs venue verification. Finished trips can be published with photos as memories, like Strava for road trips, and other travelers can remix any published route: one click forks it, and every stop is re-validated for their dates, budget, and route style.

How we built it

Codex and GPT-5.6 were my primary build collaborators. I used Codex to turn screenshots, product observations, and failure reports into code; Graphify to navigate the repository; UI/UX Pro Max to review interaction design; and a bug journal to preserve root causes and prevention rules. This allowed me to iterate quickly while keeping route, timing, budget, and safety decisions deterministic.

The planner is a typed LangGraph workflow with five nodes: route scout, vibe matcher, detour reviewer, LLM reviewer, and day builder. It runs on Google Routes and Places data, but the architecture is deterministic-first: the LLM only ranks a shortlist that has already passed route, opening-hours, and budget checks. It can suggest and rank, but it cannot commit a stop unless deterministic validators approve it.

I also modeled user memory as an Open Knowledge Format (OKF) profile document rather than scattering preferences across one-off fields. It stores planning defaults, travel style, budget sensitivity, saved-trip signals, and completed-trip feedback in one portable document that planner agents can read as shared context. In the demo, the profile is backed by browser localStorage and process memory; durable persistence can be added later without changing the contract. Route planning, chatbot stop replacement, saved-trip remixing, and future recommendations all consume the same structured profile instead of rebuilding user context from scratch.

Challenges we ran into

Route geometry was the hardest part: keeping waypoints in correct driving order after a chatbot replacement meant constraining searches to the segment between the previous and next checkpoints, then rerouting through the actual coordinates. Opening hours were sneaky too: Google's weekly periods wrap around midnight and across weeks, and "open now" is useless for a stop you reach at 2 PM tomorrow, so I check regular hours against estimated arrival time. And keeping the LLM honest required a hard boundary: structured output, validation against deterministic constraints, and a fallback that preserves the deterministic result whenever the model fails.

Accomplishments that we're proud of

A complete loop that actually runs end to end: plan, edit by conversation, save, publish, and remix, all on live data, built solo, something I have never done before. The moment the route visibly re-plans itself around a replaced stop still feels like magic, and every claim in my demo is backed by a real check in the code.

What we learned

Agentic coding changed how I scoped: with Codex handling implementation, my job became specifying behavior precisely and reviewing hard. I also learned that trust is the product. Users do not need a smarter-sounding AI, they need one that is provably not making things up.

What's next for VibeTrip

Managed authentication and hosted storage, streaming planner progress so users can watch the agents work, end-to-end tests for waypoint ordering and scheduling, and richer community features on

Explore: follows, comments, and moderation. The next big step is the data flywheel: every completed trip updates the user’s OKF memory, so future routes learn from where they actually stopped, what they replaced, what they skipped, and what they published.

Built With

Share this project:

Updates