Internal Project — our own sales tool
Chamber I · Opening
HVAC Lead Finder
A compliance-aware lead machine for a real HVAC business: it finds prospects through official data sources, scores them, and hands the operator a ready-to-work calling queue every morning. In active internal use.

Chamber II · The problem
The starting point
Growing an HVAC equipment business needs a steady stream of qualified local prospects — homeowners with aging systems, and B2B targets like property managers — without buying junk lists or scraping in ways that create legal exposure.
Chamber III · The intelligence
What was built
- Full pipeline orchestration: one command chains discover → analyze → score → queue → report. Sources include public property records and permit CSV imports plus the Google Places API — official API only, a deliberate compliance stance.
- Website-liveness analyzer that inspects only a business's own public pages to detect reachability and digital-presence gaps — a qualification signal and a conversation opener.
- Config-driven scoring from YAML rules, with dedupe constraints and an event-sourced audit log of every lead's history.
- Operational CRM UI: a 9-tab app — KPI command center, prioritized calling queue with one-click outcome buttons (interested / needs quote / won / lost), business leads, permit triggers, top opportunities.
- Reporting: multi-sheet formatted Excel workbooks — KPIs, calling queue, follow-ups, activity, talking guides — generated daily.
- Engineering hygiene: 15/15 tests passing (executed 2026-07-12), CI, lint gating, dependency audit, static security analysis. TCPA / CAN-SPAM / do-not-call considerations documented in the outreach design.
Chamber III · The method
How it was built
The hard problems were data and usability, not novelty: turning messy county CSVs and API results into one deduplicated, scored queue; keeping outreach compliant by design rather than by memo; and making a data pipeline usable by a non-technical operator — one command in, one worked queue out.
Verified real-world use: the system has processed 290 live business leads for our own store's outreach — the exact count read from the system's own database on 2026-07-12, never rounded up. Portfolio screenshots use bundled sample data; real prospect data never leaves the machine.
Chamber IV · The evidence
Craft evidence
Real captures of the tool running on bundled demo data — real prospect data never leaves the machine.



Verified, not claimed
- 290 live business leads processed — the exact count read from the system's own database on 2026-07-12, never rounded up.
- 15/15 tests passing — executed 2026-07-12, with CI, lint gating, dependency audit, and static security analysis.
- Official API only — discovery runs on public records, permit CSVs, and the Google Places API, a deliberate compliance stance.
- Real prospect data never leaves the machine — portfolio screenshots use bundled sample data.
Chamber V · Future vision
Where this is heading.
Future Vision · Concept Today HVAC Lead Finder is an internal single-operator pipeline that we run for our own store — official-API-only, config-driven scoring, one worked queue each morning. The direction we are designing toward is a productized version other operators could point at their own territory, with the same compliance-by-design discipline. That is a concept of where this could go, not a shipped product — it carries no external customers and no outcomes, because there are none to claim.
Chamber VI · The foundation
What's measured next
Internal production — a single-operator tool in active use for our own business, not multi-tenant software. Lead counts are reported from the system's own database as they accrue; conversion outcomes join this entry when the numbers are real.
Want a calling queue your team actually works from?
This build maps to our Systems and Growth clusters — official data sources, your scoring rules, daily reports, and none of the compliance risks of scraped lists. The AI Opportunity Diagnostic traces where your own enquiries leak between channels and spreadsheets — and hands you a worked, prioritized queue rather than a lecture.