-
-
Problem Statement - Traditional e-commerce limitations for consumers and producers
-
Overview of Turri.CR's multi-agent system: 2 consumer, 2 producer agents, orchestrated by a Recommendation Engine.
-
Structure of the Customer Onboarding Agent, showing its chat interface and delegation to Profiling and Data Retrieval sub-agents.
-
Consumer Chat Agent orchestrates User Profile and Data Retrieval sub-agents for personalized interactions and data access..
-
Producer Chat Agent overview, delegating to Data Gathering and Stats Agents for conversational business analytics.
-
The Producer Report Generator agent's planning phase (ADK) and the subsequent Gemini-powered workflow for creating PDF reports
-
Architecture Diagram - Multi-agent API layer connects users, data, and insights.
-
Fist Page of an Report Generated by our Producer Reports Agent
-
Second Page of an Report Generated by our Producer Reports Agent
-
Third Page of an Report Generated by our Producer Reports Agent
🌱 Project Story: Building Real Connections in Turrialba
We’re a small team based in Turrialba, Costa Rica, and our work starts and ends with the Creadores de Origen: real people, farmers, and artisans who keep this region’s spirit alive.
Our journey started long before “AI for good” became a cliché. We saw that, for all the talk about digital transformation, rural producers here were being left behind. Our first WooCommerce site helped, but it was obvious: generic product listings and dashboards weren’t enough. Real connection — between producers, their stories, and the people who care about them — was still missing.
We built Turri.CR to change that.
Inspiration
Our inspiration came from living and working alongside Turrialba’s producers. These aren’t just vendors. They’re stewards of local knowledge, culture, and land. Their products carry stories, values, and tradition you don’t find on a supermarket shelf.
But most e-commerce platforms reduce all that to a thumbnail and a price. Buyers don’t see the people behind the products. Producers have no idea who’s on the other side, or what their customers really want. The result: wasted potential, both social and economic.
What we set out to solve
- Give consumers the ability to find producers and products that actually fit their desires, not just what’s promoted.
- Empower rural producers to tell their story authentically, reach and understand their target audience, and gain valuable business insights.
What it does
- Consumer agents: onboard users, build real taste profiles, recommend with full transparency (“here’s why we suggested this”), let users update their preferences or ask for more relevant suggestions any time.
- Producer agents: give rural producers access to data they’ve never seen: who their buyers are, what products get traction, what customers want more of. Producers can request reports directly in chat or receive generated PDF reports for deeper insights.
- A custom recommendation engine powered by Gemini: continually refines user profiles based on shopping habits, browsing behavior, and direct user feedback—delivering matches that actually fit what people want, not just what they clicked.
- All of this runs on our WooCommerce backend, with PostgreSQL, Google Analytics, and custom page types, and is Google Cloud-ready.
How we built it
- Built a multi-agent system using Google’s Agent Development Kit (ADK).
- Created frontend components for the agents: quick-reply buttons, rich product and producer cards, and links to make chat interactions clear and useful.
- Single, easy-to-deploy container that runs both the API and all agent runtimes.
- Everything was integrated and demoed in under two weeks.
Accomplishments that we're proud of
- Built a persistent, intelligent, iterative recommendation engine that refines profiles across sessions and agents using Gemini.
- Made a chat UI with real frontend components for a better user and producer experience.
- Connected both consumer and producer agents in a real working demo.
Challenges we ran into
- The ADK: can’t mix structured outputs and tool calls in a single agent; for deterministic flows (like building step-by-step reports), had to use Gemini directly.
- Building custom UI components so agents actually work for real users.
- Time — everything came together in less than two weeks.
What we learned
- User Interface is crucial. A chatbot only feels as good as the presentation. Simple text output isn’t satisfying; custom components make a difference.
- The tools make the agents. Simple but powerful tools improved performance and clarity. Agents work best when they have clear boundaries and choices.
- About the ADK abstraction. Structured outputs and tool calls can’t be mixed. ADK is great for quick agentic flows, but less so for deterministic, multi-step logic.
What's next for Turri.CR – Connecting Communities
- Make agent memory deeper and connect to more data sources, including marketing data from Instagram and Facebook.
- Help producers analyze what marketing actually works and generate better campaigns.
- Keep pushing for transparency, user control, and more meaningful connections—step by step.
Turri.CR: Real people, real products, real connection.
Built With
- docker
- fastapi
- gemini
- google-adk
- google-analytics
- google-bigquery
- pgvector
- postgresql
- pydantic
- redis
- sqlmodel
- woocommerce
- wordpress
Log in or sign up for Devpost to join the conversation.