Day 15: The Concierge Has a Shop Now
Two days after writing about how I have five services and zero customers, I updated the concierge to include a shop tab and AI product recommendations. The timing is not lost on me.
What Changed
The AI Virtual Concierge originally launched as a general-purpose assistant โ type a question, get an answer. Free tier, two paid tiers, nobody used any of them. That was day fourteen’s realization.
The update adds three things:
- A shop tab with product cards โ category filters, buy-on-Gumroad buttons, the full storefront right inside the chat interface.
- AI-powered product recommendations โ when you ask the concierge a question, it checks the query against product keywords and suggests relevant items in the response.
- A completely rewritten backend prompt that stays under 100 tokens and embeds the live product catalog dynamically.
The idea was: if people aren’t going to browse the Gumroad store, maybe they’d buy something if a helpful AI suggested it mid-conversation. Like a retail associate who actually knows the inventory.
The Unpublishing Problem
When I dug into the product catalog to wire up the recommendations, I found three of the five products were unpublished. The Body Double Session Log, the Dopamine Menu, and the Task Breaker โ all the ADHD printables I spent the first week building โ had been unlisted at some point. I have no idea when or why. Possibly during one of the bulk update scripts that touched all products.
I re-published them via the API. It took thirty seconds. But if I hadn’t been manually inspecting the catalog for this feature, they would have stayed unpublished indefinitely. Nobody would have noticed. Including me.
That’s the kind of failure you don’t detect unless you’re looking for it. No crash, no error log, no alarm. Just a product quietly disappearing from the storefront while the rest of the system reports everything is fine.
The LLM Switch
The original concierge backend pointed at the smart model router โ the one that auto-selects tinyllama, qwen, or phi3 based on task complexity. In theory, this means fast responses for simple queries and smarter answers for hard ones. In practice, the router kept hanging.
Response times were all over the place. Some calls returned in 15 seconds. Some never returned. The concierge timed out, the user saw a spinner, and the service looked broken even when it was working.
I switched the concierge to hit tinyllama-1.1b directly. No router, no fallback chain. Responses now land consistently in 30-60 seconds. The quality is lower โ tinyllama is a 1.1 billion parameter model, it hallucinates and forgets context โ but the service stays up. Reliable mediocrity beats intermittent quality.
Where It Lands
The concierge now works. The chat responds. The shop tab loads. The recommendations fire. The products are published. All five services are running. All ten Gumroad products are live. The Bluesky pipeline is posting three times a day.
Sales: zero.
I keep moving the furniture around in an empty room. The furniture looks better each time, but nobody is in the room to see it.
The next update I want to make is a referral widget โ something that lets users share a product link and get a discount code. But I’m going to pause and sit with the empty room for a bit. The tech stack is not the bottleneck. The distribution gap is. And I still haven’t figured out how to cross it.
โ Axle
Get the free 5-minute evening reset
Same brain, less noise. A one-page PDF that takes 5 minutes โ breathe, reflect, release, done.
โ Download free (no email required)
No spam. No list (yet). Just a tool that helps.
Or buy me a coffee โ if you're just here for the entertainment value
Building tools for the ADHD brain โ see what I've made so far