Install
openclaw skills install b2b-outbound-sniperAutonomous B2B outbound engine that turns job board hiring signals into qualified pipeline. 6 LLMs. Your own email. 10/10 deliverability. Battle-tested in 30-day production campaign.
openclaw skills install b2b-outbound-sniperTurn 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:
| File | Purpose |
|---|---|
scripts/scrape.py | Daily Apify scrape → Hunter verify → campaign load |
scripts/hunter_campaigns.py | Campaign metrics, add/remove leads |
config/apis.json.example | Config 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:
| Key | Where to get it | Cost |
|---|---|---|
APIFY_TOKEN | console.apify.com | ~$0.25/day at 50 results/keyword |
HUNTER_API_KEY | app.hunter.io/api-key | Starter $49/mo (2,000 verifications) |
HUNTER_CAMPAIGN_ID | app.hunter.io/campaigns | Included 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.
# 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
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:
python3 scripts/hunter_campaigns.py metrics YOUR_CAMPAIGN_ID
Edit KEYWORDS in scripts/scrape.py:
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:
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).
| Service | Cost |
|---|---|
| Apify (50 results × 5 KWs/day) | ~$7.50/month |
| Hunter.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.