AI Systems · Prospecting
Lead-Gen Engine — open-source core
Status
Live
Year
2026
A prospecting pipeline that pulls real businesses from open data, scores each one against an ideal customer profile, writes an opening line, and stages the outreach. The open-source core replaced roughly $350 a month of SaaS with about 600 lines of dependency-free Python.
What it replaces
The core is about 600 lines of Python with no third-party dependencies. It stands in for four paid tools: a scraper at roughly $150 a month, a hosted scoring API at roughly $50, a hosted database at roughly $50, and a sending tool at roughly $97. The itemised list lives in the repo README, so the figure is a sum rather than an estimate made after the fact.
Where the prospects come from
Extraction is a live query against the OpenStreetMap Overpass API. OpenStreetMap is open data under ODbL and Overpass is a public endpoint, so there is no key, no bill, and no terms-of-service problem. Google Maps, LinkedIn and Apollo all forbid scraping in their terms, which is the reason this pipeline does not touch them.
What it keeps
Every run is written to SQLite: the prospects, the score each one was given, and the reason for it. Rejected prospects are recorded rather than dropped. If a scoring rule turns out to be wrong, it can be re-run against the same set instead of a fresh scrape.
The audit log
A second table records one row per action taken against a lead, timestamped. When a prospect reaches outreach, the log shows which query found it, what it scored, and why. That is the part that makes the pipeline safe to leave running unattended.
What the demo shows, and what it does not
The dashboard published on handlit.app runs on simulated data. The extraction, the scoring and the persistence are real code with a real database behind them, but a public demo page is not a good reason to scrape live businesses. The CSV export in the demo is genuine, so the shape of the output is the shape of the output.