LinkedIn outreach is one of those tasks that everyone knows they should do, but nobody actually wants to spend time on.
I was in the same boat. As a developer, I figured: why not automate the repetitive parts and keep the human touch where it matters?
Here's the stack I built:
n8n as the workflow engine — fully visual, self-hosted, no black boxes
Puppeteer for browser automation — handles the LinkedIn UI safely
AI (GPT-4) for message personalization — reads prospect profiles, writes contextual messages that don't sound like templates
Supabase for the database — tracks connections, conversations, follow-ups
The workflow basically does:
✅ Finds prospects by keyword and sends connection requests
✅ AI writes a personalized message based on their profile
✅ Tracks who replied and auto-follows up after 3 days
✅ Respects LinkedIn daily limits (stays way under the radar)
The key insight: don't automate the human part. Automate the clicking, typing, and remembering. The AI handles personalization, but the strategy stays human.
Result: 11+ hours freed up every week. And my response rate went up because I was actually consistent.
If you're thinking about automating your outreach — n8n + Puppeteer is a solid combo. Happy to share more details about the setup!