Builds.Syed Tasavour
Builds
Petactive2026

linkedin-agent

linkedin-agent generates post candidates on a schedule, ranks them, and sends a winner to WhatsApp for approval before anything is published. Publishing requires a draft in the awaiting_approval state, so nothing reaches LinkedIn without a reply. A hard requirement is that no topic, angle or hook ever repeats.

Started
2026
Stack
TypeScript, n8n, OpenAI-compatible API, WhatsApp
Kind
Pet
Source
Private

Why I built it

Automating LinkedIn posting risks publishing unreviewed or repetitive content, since a language model has no memory between calls to avoid repeating itself.

What it does

  • Generates N candidates via an OpenAI-compatible API and ranks them deterministically
  • Rejects a winner whose topic or hook is a near-duplicate of stored posts
  • Sends the draft to WhatsApp and publishes only on an approve reply
  • Supports revision replies that loop a sharper draft back for approval

How it is built

A TypeScript service triggered by an n8n schedule, with deterministic ranking in src/rank.ts, a database of past topics for dedup, and WhatsApp delivery through wa-bridge.

How it evolved

  1. 2026
    Scoped

    Automating LinkedIn posting risks publishing unreviewed or repetitive content, since a language model has no memory between calls to avoid repeating itself.

  2. 2026
    Built

    A TypeScript service triggered by an n8n schedule, with deterministic ranking in src/rank.ts, a database of past topics for dedup, and WhatsApp delivery through wa-bridge.

  3. 2026
    Live

    Shipped and still improving it.

Built by Syed Tasavour. More at syedtasavour.com.