Turn job board hiring signals into qualified outbound pipeline — fully automated, end-to-end. Built and battle-tested by Lemnos AI over 30 days of live production outreach.
The core insight: When a company posts a $70-80K admin role, they're 72 hours away from committing that budget. Show up before they sign the offer letter.
All scripts are bundled in this package — no external dependencies beyond Python + pip:
FilePurposescripts/scrape.pyDaily Apify scrape → Hunter verify → campaign loadscripts/hunter_campaigns.pyCampaign metrics, add/remove leadsconfig/apis.json.exampleConfig template — copy to config/apis.json, never commit
Three API keys needed — set as environment variables or copy config/apis.json.example → config/apis.json:
KeyWhere to get itCostAPIFY_TOKENconsole.apify.com~$0.25/day at 50 results/keywordHUNTER_API_KEYapp.hunter.io/api-keyStarter $49/mo (2,000 verifications)HUNTER_CAMPAIGN_IDapp.hunter.io/campaignsIncluded with Hunter account
Security note: Never commit
config/apis.jsonwith real keys. Add it to.gitignore. All scripts accept env vars as first priority — no keys ever need to touch source files.
bash
# 1. Copy config template
cp config/apis.json.example config/apis.json
# 2. Fill in your keys
nano config/apis.json
# 3. Edit your target keywords in scripts/scrape.py
# Change the KEYWORDS array to match your vertical + geography
# 4. Run your first scrape
python3 scripts/scrape.py
text
Daily (7 AM, Mon–Fri via OpenClaw heartbeat)
→ Apify scrapes KW-1 (50 results max)
→ Filter: target geography only, exclude job board domains
→ Hunter domain-search: 90%+ confidence emails only
→ Dedup: fetch all existing campaign recipients via API (ground truth)
→ Add net-new verified leads to Hunter campaign
→ Log to references/hunter-tracking.jsonl
→ 15-min gap → KW-2 → repeat for all keywords
Hunter handles the full send sequence automatically:
bash
python3 scripts/hunter_campaigns.py metrics YOUR_CAMPAIGN_ID
Edit KEYWORDS in scripts/scrape.py:
python
KEYWORDS = [
{"label": "KW-1", "query": "office manager", "location": "New Jersey"},
{"label": "KW-2", "query": "operations coordinator", "location": "New York"},
{"label": "KW-3", "query": "executive assistant", "location": "South Florida"},
]
Any Indeed-searchable query + US location works. One keyword per run, 15-min gap between each.
Run multiple Hunter campaigns with different CTAs and compare open/reply rates:
bash
python3 scripts/hunter_campaigns.py metrics 111111 # Version A
python3 scripts/hunter_campaigns.py metrics 111112 # Version B
This tool sends commercial email. You are responsible for compliance with CAN-SPAM, GDPR, and your jurisdiction's anti-spam laws. Use only verified business email addresses and always include an unsubscribe mechanism (Hunter.io handles this automatically in campaigns).
ServiceCostApify (50 results × 5 KWs/day)$7.50/monthHunter.io Starter$49/month**Total****$57/month**
github.com/getlemnos32/b2b-outbound-sniper
Full production scripts, reference files, webhook listener, and docs. Review before deploying — all code is open source and auditable.
Star it on ClawHub: clawhub.com/skills/b2b-outbound-sniper
Built by Lemnos AI — AI operations for businesses that can't afford to hire.