Inspiration
In California, it is really typical to go "swell chasing" as a surfer. Going up and down the coast trying to find your best spots. But planning this can be a nightmare, prime winter swells give analysis paralysis as the whole coast fires, summer swells can leave you searching for scraps, wondering where you can find the next waves. After considering weather, driving, crowds, and more,
What it does
It plugs LLM's into multiple MCP's for routing and directions, and live weather data for surf forecasting.
Using these MCP's it takes the configuration for your surf trip. Dates, to-from locations, surf spot preferences, the boards and your quiver, etc. and compiles together a surf plan that lets you hit the best spots at the right times, and at your discretion.
Surf trips that you generate are stored in a Vercel KV cache, making your trip link shareable (at least temporarily) via a link.
How we built it
The whole project is based in Vercel (UI, API routes, and KV cache)
The core agent loop uses multiple different agents (each connected to their own MCP) with Vercel Workflows, allowing the core loop to go over the 60s wall clock time Vercel generally allows on its API routes.
All agent actions, reasoning, MCP tool-calls, etc are streamed to the UI using SSE's
Challenges we ran into
For longer trips across longer distances with more potential spots, the agent started to use a larger portion of its context window (up to ~50%) which is not majorly significant, but can become expensive on each next turn, and can cause failure modes if these ran for even longer.
I fixed this using a multi-agent setup, each phase is split up across different LLM contexts, with previous steps becoming re-invokable, and implementing auto-summarization on rare edge cases that run for too long.
Accomplishments that we're proud of
- The 3D map rendering of the final created trip, and allowing each trip to be public and shareable.
What we learned
- Map rendering is not as frightening as I originally thought, and the ecosystem for map data and rendering libraries is very mature.
What's next for AgentToSurf
- More spots across California, and integration with other core travel entities (lodging, flights, etc.)
Built With
- ai
- redis
- tailwind
- typescript
- vercel
Log in or sign up for Devpost to join the conversation.