- audit/phase-one + phase-two: security audit briefs, findings, credential-rotation plan, Docker-USER hardening scripts, rollback refs - disaster-recovery/restore-test-log.md + backup-dr-audit-2026-08-10.md - clients/ (modelortho SEO audit, ai-biz-dev competitive landscape), notes/ (tiktok strategy) - projects/: front-desk-voice-agent, seo-visibility-checker product plan, hotnow-savannah HTML, resend-transactional-email, backup-dashboard-enhancements, code-review-graph, seo-ci-architecture - proposals/verdicttank/: architecture v4.0, methodology, judge-pool review, consolidation reasoning, cross-check review - docs/super-search/firecrawl-provider-strategy.md - updates: CHANGELOG, model-chain, projects-master-readme, intelsight.io - .gitignore: exclude nested standalone repos (seo-tool, venturebuilt)
8.8 KiB
Sho'Nuff Front-Desk — AI Voice Lead Qualification & Booking
Saved: 2026-08-24 Status: Future Project — Competitive Teardown + Build Path Category: SaaS Product / Revenue Owner: IT Pro Partner (Sho'Nuff) Inspiration: Qexo.ai competitive teardown (2026-08-24)
The Competitive Trigger
Qexo.ai is AI voice agents for lead qualification + appointment booking, aimed at home-services / SMB verticals (solar, HVAC, home services, real estate, insurance, clinics). It is the third tool in a row we've teardown'd (after tranx.io and dozier.io) shaped as a single-purpose vertical tool on generic AI plumbing: narrow SMB wedge + clean before/after loop + evidence/confidence. The pattern is now a signal, not a coincidence.
Qexo's four-step loop:
1. Capture — web/form intake catches the lead while intent is hot
message + contact + consent attached to ONE record
2. Understand — "lead intelligence" scores intent / urgency / service-fit
0–100 qualification score, flags missing details
3. Call & Book — with consent, voice agent calls OUT, gets context,
books against live calendar, confirms address/access notes
4. Manage — unified lead workspace (inquiry + transcript +
qualification + appointment), human override
Why Qexo is clever (and what to steal):
- Full-context handoff — the outbound call inherits the web intake, never starts over. The caller already knows what the lead asked for.
- Transparent AI + consent — kills the FTC/legal objection up front. Voice agents calling out is the single most legally exposed move in this space; Qexo neutralizes it by design.
- "Not another inbox" — explicitly positioned as NOT a CRM. A unified lead workspace, not a login you'll ignore.
The Honest Read: We Already Own 90% of This
The gap is productization, not capability. We have every component running today:
| Component | Existing Asset | Status |
|---|---|---|
| Outbound voice calling | shonuff-voice-caller, twilio-voice-calling skills (Twilio + ElevenLabs) |
✅ Live |
| Inbound call handling | ai-receptionist.md (VoIPSimplicity Concierge) |
📐 Designed, not built |
| Missed-call capture | missed-call-lead-recovery.md (Twilio SMS text-back) |
📐 Designed, not built |
| Voice stack (STT→LLM→TTS) | voice-agent-deployment skill — Hermes Voice (xAI realtime) + Kokoro/faster-whisper open-source |
✅ Live |
| Orchestration brain | Hermes Agent (personality, memory, tool routing) | ✅ Live |
| Calendar | Rally family calendar + booking patterns | ✅ Live |
The missing 10% — the part that makes it a product rather than a demo:
- A lead-record model that survives web → voice → calendar — one object holding intake message, contact, consent, qualification score, transcript, and appointment, all keyed to the same lead. This is Qexo's actual moat, and it's a schema problem, not an AI problem.
- A qualification scorer — 0–100 intent/urgency/service-fit score with visible evidence (the lead's own words).
Neither is hard. Both are a weekend build on the infra we already run.
Build Path
Phase 1 — The Lead Record (the real moat)
Postgres table (single source of truth):
leads
id, tenant_id, source (web/form/call/missed-call)
contact_name, phone, email
message (original inquiry, verbatim)
consent_at (timestamp), consent_medium (form checkbox / verbal / none)
qual_score (0-100), qual_evidence (json: flagged signals)
service_fit, urgency, intent
transcript (json, appended on call)
appointment_id, appointment_status
created_at, updated_at
Every downstream step (scorer, outbound call, calendar write) reads and writes this same record. The lead never starts over. This is the "full-context handoff" Qexo sells, reduced to a schema.
Phase 2 — Qualification Scorer
DeepSeek (via admin-ai) classifies the lead record into a 0–100 score with visible evidence:
- Intent — did they ask for a specific service, or just browse?
- Urgency — "as soon as possible" / "this week" / "just looking"
- Service-fit — does the inquiry match any offered service?
- Missing detail flags — no address, no timeframe, no budget signal
Output: a score + the exact phrases that drove it. The evidence layer is what makes it defensible against "AI made that up" — the customer sees the lead's own words backing the score.
Phase 3 — Outbound Call & Book
With consent on record, the voice agent calls out:
- Pulls the lead record (never re-asks what the form already captured)
- Confirms interest, fills the gaps the scorer flagged
- Books against live calendar
- Confirms address/access notes
- Appends transcript + appointment to the lead record
Reuse shonuff-voice-caller (ElevenLabs professional male voice) + Twilio outbound. The open-source Kokoro/faster-whisper stack from voice-agent-deployment is the $0-cost alternative for beta.
Phase 4 — Unified Workspace ("Not another inbox")
Single view per lead: original inquiry + qualification score + transcript + appointment, human override everywhere. Not a CRM — a workspace where a lead either gets booked or gets a reason why not.
Positioning vs. What We Already Have
| Product | Inbound | Outbound | Qualifies | Books | Key Differentiator |
|---|---|---|---|---|---|
VoIPSimplicity Concierge (ai-receptionist.md) |
✅ answers calls | ❌ | ⚠️ basic | ✅ | Replaces IVR for existing VoIP customers |
Missed-Call Recovery (missed-call-lead-recovery.md) |
⚠️ missed calls | ❌ | ❌ | ❌ | SMS text-back within seconds |
| Sho'Nuff Front-Desk (this) | ✅ | ✅ calls out | ✅ scores | ✅ | Full-context handoff: web → score → outbound → calendar |
| Qexo.ai (competitor) | ✅ | ✅ | ✅ | ✅ | The benchmark we're matching |
The Front-Desk is the top of the funnel the other two feed into. Missed-call recovery captures the lead; the Front-Desk qualifies and books it. These are three products on one voice stack, not three competing ideas.
Pricing (Premium, Value-Based — Never Undercut)
Modeled on Qexo's SMB wedge but priced like we own the infrastructure (we do):
| Tier | Price/mo | Included |
|---|---|---|
| Solo | $99 | 1 voice number, web intake + scorer, 50 outbound calls, calendar booking |
| Pro | $299 | 3 numbers, 200 calls, multi-location, transcript archive, human-override console |
| Managed | $599+ | White-label, agency resell, custom qualification rules, SLA |
Undercut Qexo on unit economics, not headline price. Our marginal cost is near-zero (self-hosted voice stack, admin-ai tokens at cost). Qexo pays per-call infrastructure margins we don't.
Risks
- FTC / TCPA on outbound AI calls — the single biggest exposure. Qexo's consent-first design is correct and mandatory. We mirror it: no outbound call without a recorded consent timestamp.
debt-recovery-complianceskill already documents the TCPA/consent discipline; reuse it. - Voice quality at scale — Kokoro is good but not ElevenLabs. Start managed-tier on ElevenLabs, offer Kokoro for beta cost control.
- Calendar write integrity — a wrong booking is a lost customer. The lead record must be the single writer; no side-channel calendar edits.
Open Questions
- First vertical — solar/HVAC (Qexo's beachhead) vs. our existing warm markets (Debt Recovery Experts intake, VoIPSimplicity customers, Forefront Wireless)?
- Calendar backend — Rally, or a dedicated booking calendar per tenant?
- Consent capture — form checkbox (SMS/web) vs. recorded verbal consent (call). Both need a timestamped, auditable record.
- Tenant model — multi-tenant from day one (agencies reselling to clients), or single-tenant until 3 paying customers?
Next Steps
- Decide first vertical (open question 1) — this shapes every downstream choice
- Build the lead-record schema (Phase 1) — the moat, and a pure schema task
- Weekend spike: qualification scorer on 10 sample leads, verify evidence layer
- Wire outbound call via existing
shonuff-voice-caller+ Twilio - Beta with 1–2 friendly businesses before any pricing commitment
Meta-Signal (worth remembering)
Three teardowns in a row — tranx.io, dozier.io, qexo.ai — are all single-purpose vertical tools on generic AI plumbing, each with the same shape: narrow SMB wedge, clean before/after loop, evidence/confidence layer. The pattern means the plumbing is commoditizing. The defensible layer is not the AI — it's the data model and the compliance posture (lead record + consent + calendar integrity). We already own the plumbing. The win is in the schema, the scorer evidence, and the consent design — not in out-building the AI.