Back to selected work

Case study · 04

Outreach Sentinel

An attended LinkedIn outreach system that drafts fact-only messages, requires human approval, and verifies every recipient twice before sending.

Category
Human-approved outreach automation
Availability
Internal tool · Public case study
Outreach Sentinel product interface and system workflow

Problem + approach

Overview

Reaching real connections at scale is easy to get wrong: fabricated claims, the wrong recipient, duplicate sends, or stealth automation that puts the operator's account at risk.

Technology stack

  • Node.js
  • Express
  • OpenAI
  • Playwright
  • Google Sheets
  • Zod

Conceptual overview

System architecture

  1. 01Official connections CSV
  2. 02Express API + state machine
  3. 03OpenAI drafting + template fallback
  4. 04Human approval
  5. 05Attended Playwright send
  6. 06Google Sheets audit log

This project-specific overview is based on the published case-study architecture. Internal implementation, credentials, and deployment details remain undisclosed.

Decisions + constraints

Engineering notes

01

Engineering decisions

  • An explicit status graph rejects impossible transitions, such as sending an unapproved draft.
  • A deterministic template fallback means the workspace never blocks on the AI provider.
  • Fact-only validation blocks fabricated familiarity, sensitive attributes, and unapproved URLs.
  • Optimistic concurrency and idempotency keys make retries safe after a crash or double click.
02

Technical challenges

  • Guaranteeing the right recipient inside a live, changing web interface
  • Preventing duplicate outreach across overlapping campaigns
03

Results & impact

  • Two independent identity checks before any message is sent
  • Nothing sends without an explicit operator click
  • 23 automated tests across 7 suites
04

Lessons learned

  • Safe automation comes from narrow scope, explicit state, and keeping a human on the final action.

Screenshots + diagrams

Project media

Outreach Sentinel operator queue with demo contacts
Operator queue — demo contacts across ready, drafted, approved, and follow-up states.
Contact card with generated initial and follow-up drafts
Draft review — editable drafts with live character limits.
Activity history for one outreach record
Audit trail — every transition recorded with operator notes.

Availability + roadmap

Documentation

Repository & API documentation

Future improvements

  • Reply tracking
  • Campaign-level analytics
Next case studyMedx AI