← all repositories
eracle/OpenOutreach

LinkedIn automation that actually learns who to spam

A self-hosted tool that uses Bayesian active learning to find and qualify leads without you uploading a contact list.

2k stars Python AgentsDomain Apps
OpenOutreach
Velocity · 7d
+0.6
★ / day
Trend
steady
star history

What it does

OpenOutreach automates LinkedIn B2B outreach end-to-end: it generates search queries from your product description, scrapes profiles via LinkedIn’s internal Voyager API, qualifies candidates with an LLM, sends connection requests, and runs a multi-turn follow-up agent. Everything persists in a local SQLite-backed Django CRM. You watch the browser via noVNC at localhost:6080.

The interesting bit

The qualification loop uses a Gaussian Process Regressor on 384-dimensional profile embeddings with an explore/exploit strategy. When negatives outnumber positives, it exploits (highest predicted probability); otherwise it explores (highest BALD score for maximum information gain). The LLM classifies, the GP learns, and the system gets pickier over time. It’s bandit logic applied to sales prospecting.

Key highlights

  • No lead lists required — describe your product and target market, the LLM generates search queries
  • Self-hosted by default — Docker one-liner, full data ownership, optional managed Cloud tier with openoutreach up/down CLI
  • Stealth browser automation — Playwright with stealth plugins, plus direct Voyager API scraping for structured data
  • Stateful resumable pipeline — tracks profiles through QUALIFIED → READY_TO_CONNECT → PENDING → CONNECTED → COMPLETED
  • Bring your own LLM — OpenAI, Anthropic, or any OpenAI-compatible endpoint

Caveats

  • Cold start requires at least 2 labelled profiles before the GP model can fit; early candidates are evaluated in order
  • Uses your personal LinkedIn credentials, which carries obvious account risk however “stealth” the automation claims to be
  • The Cloud tier’s “~1 min setup” claim is from the README; actual migration complexity depends on your local data state

Verdict

Founders and small sales teams who want programmatic lead gen without SaaS subscriptions should look here. If you already have clean lead lists and just need sequencing, this is overbuilt. Also probably skip if your LinkedIn account is personally valuable to you.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.