Pulse — autonomous AI content engine
Collects, dedupes, AI-summarises and auto-publishes content on a schedule — zero editors.

A background service that pulls fresh articles from RSS, Hacker News and GitHub Trending, filters out duplicates, AI-summarises what's left, and publishes signed posts on a schedule — with a live operator dashboard to watch it run.
The problem
A new content channel with nothing in it gives people no reason to open it twice. Manually curating and posting content daily doesn't scale and always eventually stops. Pulse runs as an independent, always-on service so a channel never sits empty.
How we built it
A strictly layered pipeline — collectors, a hash-based dedup engine, an AI processor, and a publisher — that only ever talks to repository interfaces, never SQL directly. A scheduler runs collection every 15 minutes and publishing every 5, and everything is swappable (add a source type, a new channel, or even a new database) without touching the rest of the system.
What it does
- Pluggable collectors — RSS, Hacker News, GitHub Trending; adding a new feed is one YAML line
- Dual-provider AI layer — a 6-model fallback chain, then a fully independent second provider takes over automatically if the first is down or rate-limited
- Structured AI output — title, ~120-150 word note, tags and a quality score; only notes above the quality bar get published
- Per-channel bot identities, routed purely by source category — no code change to add a channel
- Live operator dashboard — pause/resume, per-source health toggles, analytics charts, full publish log, error log
- Dry-run preview mode — test sources and prompts locally with no database or publishing keys needed
Screens




