01 · Selected work
DOME + Claire
Cubby House — agentic commerce, SEO→AEO, qualified lead gen. Solo conceptualised, designed, built, and managed.
Live surface: dome.ml-nightworx.io
Marco solo conceptualised, designed, built, and manages the system.
Cut AU mattress-retailer CAC via SEO→AEO; aggregator plus qualified lead gen. Pattern for other verticals. Mattress category context: ~A$1.8B domain — not DOME revenue.
49 active users · 93 new users · 48s engagement · 643 events. Early signal only.
Scaled revenue, booked ARR, or 7ARCH / ADE-F.T inside this programme — those are separate ML-Nightworx work.
The system
DOME (brand: Cubby House) is an Australian mattress-comparison platform. It ingests retailer product feeds into a normalised catalogue, renders SEO/AEO surfaces — guides, product pages, agent manifests — and tracks every outbound retailer click.
Claire is the AI Sleep Concierge on top: a conversational consult that collects a sleep profile (position, pain points, budget, household) and matches it against the catalogue. A request flows browser → Express API on Cloud Run (australia-southeast1) → server-side POST /consult proxy → Sleep Deep Firebase Cloud Function → scored matches with AUD prices → click-through via /api/track-click (302 + UTM) to the retailer, with the click logged and GA4-enriched.
Catalogue evidence: 17 retailer feed CSVs; the site claims 16 retailers / 171+ products. AEO/SEO: 48 guides, plus llms.txt, ai-plugin.json, OpenAPI (dome_mattress_au), MCP servers.json, UCP, and sitemap. Lead handoff uses UTM-stamped outbound links and a consultation reference code as a pay-per-lead primitive.
Claire’s design
v1 Claire is prompt-driven consultation, not a tool-calling agent: front-end conversational flow and slot collection; matching by the Sleep Deep function; guide content via a Gemini persona prompt. Four required slots. Guardrails include temperature 0.0, a medical disclaimer, rate limits, brand-name suppression in guides, and privacy limits on stored fields. HITL: admin guide edit; Firestore transcripts flagged audited: false pending review.
v2 (TypeScript) adds Vertex AI RAG retrieval, Gemini 2.0 Flash re-rank, heuristic-first slot extraction, and feature-flagged Stripe + x402 USDC payments. Hybrid scoring falls back to RAG order if the LLM re-rank is skipped.
- Cloud Run · Express · Node.js
- Firebase Cloud Function (Gen2 / Genkit)
- Gemini 2.0 Flash
- Cloud Firestore
- GA4
- SendGrid
- Vertex AI RAG (v2)
Design decisions worth copying
- File-based catalogue over a database — zero-ops on Cloud Run.
- Server-side consult proxy — hide the agent endpoint, rate-limit, tight CORS.
- Hybrid scoring: RAG retrieve, LLM re-rank, RAG fallback.
- Heuristic-first slot extraction.
- Temperature 0.0 plus an engineered persona for SEO copy.
- HITL guide edit before/after publish.
- Consultation reference code as a measurable lead-handoff primitive.
- Agent-native discovery treated as first-class SEO.
- Feature-flagged payments, dark-shipped.
Production honesty
Live: catalogue, guides, Claire v1 consult proxy, Firestore, SendGrid, GA4, UTM clicks, agent manifests, Gemini guide generation, and admin HITL.
Partial: DOME v2 RAG / Stripe / x402 code is complete; deploy state is not verified from the repo. Stripe is unproven in-repo.
Known limits: in-memory click log (lost on redeploy); shared admin password; v1 scorer lives outside this repo; catalogue freshness cadence is unclear.
Open items, not claims: consultation/affiliate counts on analytics.ml-nightworx.io when that feed is live; Sleep Deep function internals if that repo is shared later.