Inspiration
AI agents can plan trips, dinners and weekends, but they have no real sense of taste. Ask an agent for "something fun for the group" and you usually get the same generic landmarks. We wanted a cultural intelligence layer that agents can call to turn what people actually love into places and experiences that fit them.
What it does
TasteOS is a cultural intelligence tool for AI agents, powered by the Qloo API. It takes a group's favorites and a location, and returns a ranked group plan.
- Taste to plan: each person's favorites (artists, brands, places, and more) become taste signals. Qloo Search resolves names to real Qloo entities, and Qloo Insights returns recommendations from those signals plus the location.
- Group Concierge: pick profiles, set a location, and get a primary pick, alternatives and the reasons behind them. Maya and Sam, for example, get indie food spots, bars and art venues in New York.
- Agent-callable API:
POST /api/v1/concierge/planis documented with OpenAPI at/docs, so any agent can call TasteOS as a tool. A developers page shows how. - Edit your tastes: type a favorite and TasteOS looks up the matching Qloo entity, so real taste signals drive the result.
Without Qloo there are no taste-based recommendations: with no valid taste signals, TasteOS falls back to location only and says so in the response.
How we built it
- A six-stage pipeline that resolves entities, builds taste signals, retrieves candidates from Qloo Insights, and ranks and explains the plan.
- The backend runs on Google Cloud Run with a database for profiles. The frontend is deployed on Netlify.
- Qloo Search and Qloo Insights are called live at runtime. The app reports its mode and whether a key is configured at
/healthand/api/v1/mode. - Only real Qloo entity IDs are sent to Qloo. Anything else is skipped, and the response says how many favorites were skipped.
- 66 backend unit tests cover the pipeline.
Challenges
- Keeping invalid or placeholder IDs from breaking Qloo requests. We now filter to valid Qloo IDs and show a skipped-favorites note instead of failing.
- Making demo profiles use real taste signals, by resolving their favorites to Qloo entities.
- Plans take around 12 seconds because they chain several live Qloo calls.
What we learned
Taste data changes results a lot. The same city gives landmark lists with no taste signals and very different, personal picks with them.
What's next
More entity types, richer group-consensus logic, and an agent-framework integration so agents can discover and call TasteOS directly.
Built With
- fastapi
- google-cloud
- netlify
- next
- postgresql
- python
- react
- restapi
Log in or sign up for Devpost to join the conversation.