A daily digest that cross-references bys-website outreach leads with Gmail replies and Fathom meeting mentions to assign each lead a 'warmth score' (cold/warm/hot). Surfaces which pending leads have actually engaged versus gone silent, so Ethan knows who to prioritize without manually checking three systems.
Create ~/bin/lead-thermometer as a Python script. Query bys-website DB for leads with status=pending or approved. For each lead email, call gws gmail_search (bys account) for replies in last 30 days, and mcp__fathom__list_meetings filtered by attendee email. Score: hot=replied+met, warm=replied OR opened recently, cold=no signal. Write ~/Tablet/lead-thermometer-$(date +%F).md sorted hot→cold with action suggestions. Cron daily 7am. Reuses lead-alert/lead-journey patterns.
**Created:**
- `~/bin/lead-thermometer` (92 lines, executable) — Python script that reads `~/data/leads.csv` (last 30 days), cross-references each lead's email against bys Gmail (`gws gmail users messages list`) and Fathom `/meetings` API (key sourced from `~/tools/fathom-mcp/.env`), scores hot/warm/cold, and writes a sorted Markdown digest.
- `~/Tablet/lead-thermometer-2026-04-18.md` — today's digest (1 lead, cold).
- Cron: `0 7 * * * /home/ethan/bin/lead-thermometer` logging to `~/.local/state/lead-thermometer.log`.
**Verified:** test run produced a correctly-sorted digest.
**Note:** bys-website has no `leads` table with status=pending/approved; the source of truth is `~/data/leads.csv` (populated by `lead-alert`), so I used it as the lead inventory and treated the 30-day window as "pending."