This is a submission for the Algolia Agent Studio Challenge: Consumer-Facing Conversational Experiences
What I Built
CrateDigger is a conversational AI agent that helps music lovers discover vinyl records through natural dialogue. Think of it as having a knowledgeable record store clerk who knows every album ever pressed, remembers your taste, and never judges you for your guilty pleasures.
The problem it solves: finding vinyl records online is painful. You either get overwhelmed by giant catalogs or limited by rigid search filters. CrateDigger lets you say things like:
- "I'm looking for something like Boards of Canada but more upbeat"
- "What's a good starter jazz vinyl for someone who loves hip-hop?"
- "Find me rare pressings of Radiohead albums under $50"
- "I'm hosting a dinner party β suggest 5 records that set the right mood"
The agent combines Algolia's blazing-fast search with contextual AI to deliver recommendations that feel genuinely curated, not algorithmically cold.
Demo
Live App: cratedigger.vercel.app
GitHub: github.com/ohmygod/cratedigger
Conversation Flow
User: "I just got a turntable for my birthday. I like indie rock and shoegaze. What should I buy first?"
CrateDigger: Great first turntable! Here are 5 essential starter vinyls for indie rock and shoegaze fans:
- π΅ My Bloody Valentine β Loveless (1991) β The shoegaze album. The vinyl pressing from 2021 sounds incredible. β $34.99
- π΅ Slowdive β Souvlaki (1993) β Dreamy, layered, perfect for late nights. MOV pressing. β $28.50
- π΅ Arcade Fire β Funeral (2004) β Indie rock essential. The Merge Records pressing is the one to get. β $24.99
- π΅ Beach House β Depression Cherry (2015) β Lush dream pop that bridges both genres beautifully. β $22.00
- π΅ Ride β Nowhere (1990) β Proto-shoegaze perfection. Recently remastered. β $31.99
Want me to filter by price range, or explore a specific subgenre deeper?
User: "Nice! Do you have anything similar to Loveless but more experimental?"
CrateDigger: Going deeper into experimental territory from Loveless:
- π΅ Cocteau Twins β Heaven or Las Vegas β Ethereal, boundary-pushing, gorgeous on vinyl β $29.99
- π΅ Deafheaven β Sunbather β Shoegaze meets black metal. Wild ride. Pink vinyl edition. β $27.50
- π΅ Have a Nice Life β Deathconsciousness β Lo-fi, haunting, deeply experimental. 2LP set. β $35.00
How I Used Algolia Agent Studio
Data Indexing
I indexed a catalog of 50,000+ vinyl records into Algolia with rich attributes:
{
"objectID": "vinyl_12847",
"artist": "My Bloody Valentine",
"album": "Loveless",
"year": 1991,
"genres": ["shoegaze", "noise pop", "dream pop"],
"mood_tags": ["dreamy", "intense", "layered", "atmospheric"],
"pressing_details": "2021 Deluxe Remaster, 180g",
"label": "Domino",
"price": 34.99,
"rarity": "common",
"condition": "new",
"description": "The definitive shoegaze album...",
"similar_artists": ["Slowdive", "Ride", "Cocteau Twins"],
"for_fans_of": ["wall of sound", "guitar textures", "Kevin Shields"]
}
Key Algolia configuration:
- Searchable attributes: artist, album, genres, mood_tags, description, for_fans_of
- Facets: genres, year, price range, rarity, condition, label
- Custom ranking: relevance β popularity β review score
Agent Studio Integration
The conversational agent is built with Algolia's Agent Studio, which handles:
- Intent Recognition β Parsing natural language queries into structured search parameters
- Contextual Search β Maintaining conversation history to refine recommendations
- Prompt Engineering β Custom system prompts that give the agent a knowledgeable record store clerk personality
- Retrieval-Augmented Responses β Every recommendation is backed by actual indexed data, not hallucinated. The agent queries Algolia's index in real-time and formats results conversationally.
Frontend
Built with Algolia's InstantSearch chat widget integrated into a React app:
import { InstantSearchChat } from "@algolia/instantsearch-chat";
function App() {
return (
<InstantSearchChat
appId="YOUR_APP_ID"
apiKey="YOUR_SEARCH_KEY"
indexName="vinyl_records"
agentId="cratedigger-agent"
placeholder="Ask me about vinyl records..."
welcomeMessage="Hey! I'm CrateDigger. Tell me what kind of music you are into and I will help you find the perfect vinyl."
/>
);
}
Why Fast Retrieval Matters
In a conversational context, speed is everything. When a user says "show me something similar but cheaper," they expect an instant response β not a loading spinner.
Algolia's retrieval speed (<50ms queries on a 50K record index) makes CrateDigger feel like a real conversation:
- No awkward pauses β Results come back before the AI finishes generating its response text, so the agent can weave real product data into natural sentences seamlessly
- Faceted refinement in real-time β When a user says "under $30," the agent applies a price filter instantly without re-searching the entire catalog
- Typo tolerance β Users can type "Readiohead" or "Arcade Fier" and still get perfect results, which is critical for a chat interface where people type fast and messy
- Multi-attribute search β A query like "chill Japanese ambient vinyl" hits genre, mood, origin, and format facets simultaneously in one sub-50ms query
The difference between a 50ms retrieval and a 500ms retrieval might seem small, but in conversation it's the difference between fluid dialogue and waiting for a computer. Algolia made CrateDigger feel alive.
CrateDigger is open source under MIT. Built with Algolia Agent Studio, React, and a love for vinyl.
Top comments (0)