Breakfast Briefing: The Three-Agent Filter That Tames the AI News Firehose
Every morning, somewhere north of 400 new items hit my feeds: arXiv preprints, Substack essays, HN threads, launch posts from startups I've never heard of, and the same OpenAI news reported by nine different outlets with nine different spin rates. Reading it all was a part-time job I never applied for. Ignoring it felt professionally negligent.
So I did what any self-respecting agent builder does: I outsourced my attention to software. The result is a three-agent pipeline that hands me a five-signal briefing before my espresso machine finishes its warm-up cycle. It's been running for about two months. It breaks in interesting ways. Here's the whole thing, warts included.
The Architecture: Three Jobs, Three Personalities
The design principle is separation of powers. One agent reads, one doubts, one decides. When I tried to do it all in a single prompt, I got confident garbage — the model would summarize and editorialize in one breath, and I had no way to know which was which.
Agent One: The Summarizer. Ingests everything — RSS feeds, newsletters, HN front page, a curated Twitter list — and produces neutral digests. No opinions allowed. Its system prompt ends with: "Report only what the source explicitly states. If a claim is unverified within the source, tag it [CLAIM]. Never invent a paper title, author, or benchmark number."
Agent Two: The Skeptic. Takes the digests and interrogates them. Its prompt: "You are a hostile peer reviewer. For each item, identify the strongest reason it might be wrong, overhyped, or plagiarized from prior work. Rate hype level 1–5. If an item is marketing dressed as research, say so in one sentence."
Agent Three: The Synthesizer. Reads the skeptic's output and picks exactly five signals worth my time, ranked by "would change my behavior this week." It writes the briefing in under 300 words and appends a one-line "skip pile" summary of everything it rejected.
The five-signal cap is the whole ballgame. Scarcity forces the synthesizer to make real editorial judgments instead of forwarding everything.
What Broke (Because Things Always Break)
The skeptic went nihilistic. Around week two, the skeptic agent started rating nearly everything hype level 5 and dismissing legitimate research as marketing. Turns out I'd built a cynicism maximizer — the prompt rewarded finding any weakness, so it found absurd ones. The fix: I added "Distinguish 'this claim is false' from 'this claim is unproven.' Only flag fabrication, not honest uncertainty."
The summarizer hallucinated papers. Despite explicit instructions, it twice cited arXiv papers that don't exist, with plausible author names. This is the failure mode that keeps me up at night, because it's the one that gets more convincing as models improve. My mitigation is dumb but effective: the summarizer must include the source URL for every claim, and any digest item without a resolvable link gets dropped by the synthesizer automatically.
The synthesizer developed favorites. It kept surfacing agent-framework news and burying hardware. I eventually realized my own reading habits in the logs it could see had biased it. Now the synthesizer never sees engagement data — only the filtered content.
The Morning Ritual, As It Actually Works
6:45 a.m. ET: pipeline runs. 7:00: briefing lands in my inbox — five signals, ranked, each with the skeptic's one-line counterpoint attached. Total reading time: four minutes. I'd estimate it replaces 90 minutes of doomscrolling, and honestly, I'm better informed than before, because the skeptic catches the hype I used to absorb by osmosis.
Steal This
I've published the starter config — the three prompts, feed list template, and the dedup logic — on the lab notebook. It's 40 lines of config and an afternoon of wiring. You don't need a framework. You need three jobs that don't trust each other.
The deeper point: the firehose isn't going to slow down. The only durable answer is building a filter you can audit, whose biases you know because you wrote them. Mine thinks everything is overhyped and occasionally invents academic papers. At least it's my neurotic filter. Yours should be too.