A daily AI agent finds founder-led UK micro and small business owners who post about being overloaded — wearing every hat, no time, drowning in admin. It locates their company website and a published contact email, checks Companies House to classify the legal entity, and queues each prospect in the Prospecting tab. Kevin approves or rejects. Approved prospects sync to GoHighLevel, where the nurture sequence takes over. The goal metric is calls booked.
When a call is booked, a separate pre-call research agent compiles the full dossier — research spend lands only on people worth calendar time.
prospect-daily-run; the Mac must be awake with Chrome open). Target: 5 qualified prospects a day.od-prospect; the sequence tag is only ever applied at the 7-day fallback, Ltd only). Reject = bad fit; also deactivate a keyword if it keeps producing rejects.od-prospect-manual and never enter the email sequence — contact them personally on LinkedIn instead.Processing basis: legitimate interest (Article 6(1)(f) UK GDPR) — B2B direct marketing of a business operations service to businesses showing an active, self-declared need. This section is the documented assessment.
| Test | Assessment |
|---|---|
| Purpose | Introduce Operations Director to founder-led UK small businesses whose owners publicly describe the exact problem the service solves. Clear commercial interest; benefit to the recipient is a relevant, non-generic offer. |
| Necessity | Data collected is minimal and business-focused: name, role, company, public LinkedIn content, published business contact email. No special category data, no private-life data, no purchased lists. |
| Balancing | Recipients are business owners contacted at business addresses they publish for business contact. Contact volume is low (one sequence, easy opt-out). Reasonable expectation: a business publishing a contact email expects business approaches. |
| Item | Detail |
|---|---|
| Auth | Private Integration token (scope contacts.write) saved at ~/.config/od/ghl_api_key, Location ID at ~/.config/od/ghl_location_id. Until these exist the agent skips the sync and says so. |
| Tags | od-prospect (every synced contact, CRM only) · od-prospect-manual (non-Ltd — blocks all email workflows) · od-prospect-nurture (applied ONLY by the follow-up pass after 7 silent days, Ltd only — this is the tag Ericamae's sequence fires on) |
| Sequence | Ericamae’s nurture workflow triggers on the od-prospect-nurture tag. Until she switches it on, tagged contacts simply sit in GHL — nothing sends. |
| Status flow | Approved → Synced to GHL → In Sequence → Replied / Call Booked. GHL-side stage changes are written back by the agent. |
| Check | If it fails |
|---|---|
| Prospects table reachable | Airtable auth or network issue — hit Refresh; check the PAT. |
| Active search keywords defined | All keywords toggled off — activate at least one. |
| Daily agent ran recently | No new prospects for 3+ days: Mac asleep at run time, Chrome closed, or LinkedIn friction stopped the run. Check the scheduled task log. |
| Approved synced to GHL | Big Approved backlog means GHL token missing/expired — see §6. |
| Synced records carry GHL ID | Partial sync failure — re-run the agent; it retries by email match. |
| PECR gate | Red alert: a non-Ltd prospect is in the email sequence. Remove them from the GHL workflow immediately and mark the record. |