Content operations
The Four-Agent Newsroom
One agent doing everything produces mush. Four agents with clean handoffs produce something you can actually ship.
Key takeaways
- Decompose by role, not by prompt section. Each role gets its own clean context.
- Typed handoffs are the architecture; they make the system testable and debuggable.
- The critic must be able to block, or it is decoration.
- A human approves once, at the end, with the evidence attached.
The one-agent version of a content system fails predictably. Research hedging bleeds into the draft, the draft’s enthusiasm bleeds into the self-critique, and the self-critique (being the same model that just wrote the thing) approves it. You get a confident, uniform, unfalsifiable piece of work.
Splitting into four roles fixes it, but only if you take the interfaces seriously. Here is the version we run.
Researcher
Input: a topic and an organization. Output: a structured brief, three candidate angles, each with at least one first-party fact drawn from CRM, analytics, or past post performance, plus external sources with URLs.
The contract is the discipline: the researcher may not return prose, and may not return an angle without evidence attached. An angle with no evidence is dropped, not softened. If all three drop, the run stops here and tells the human why, which is far more useful than a draft about nothing.
Writer
Input: one selected angle plus the voice profile. Output: a draft with each claim tagged to its evidence. The writer never sees the discarded angles, that is isolation doing its job. It also never searches; if it wants a fact it does not have, it fails and returns the gap.
Critic
Input: draft plus brief. Output: a pass/block verdict against a named rubric, evidence present, position present, voice matched, no banned constructions, every borrowed statistic attributed.
Two design decisions carry the weight. First, the critic runs on a different model than the writer, because a model grading its own output is an agreement machine. Second, block means block: a blocked draft returns to the writer with the failed criterion, and after two failures it escalates to the human with both versions. See evals or it did not ship for how the rubric gets validated.
Scheduler
Input: approved draft. Output: a slot. This is the least glamorous agent and the one with the clearest ROI, because it holds state nobody else does: what published recently, what argument is currently running, what is already queued, and what the audience’s actual activity pattern looks like.
It also enforces the boring rules. No two posts on the same theme inside ten days, nothing scheduled against a known industry event, respect the thesis arc.
The handoffs are the product
Brief { angles[]: { claim, evidence[], sources[] } }
Draft { body, claims[]: { text, evidence_ref } , voice_profile_id }
Verdict { pass: bool, failures[]: { criterion, detail } }
Slot { publish_at, channel, thesis_arc_position }Four schemas. Every one of them validated at the boundary, logged, and replayable. When something goes wrong you can point at exactly which stage produced garbage, which is the entire difference between debugging and guessing.
A multi-agent system without typed handoffs is a group chat with a billing address.
Where the human sits
Once, at the end, with the evidence inline and the critic’s verdict visible. Not at every stage, that is how you build something slower than writing it yourself. One gate, well-instrumented, with a reason captured on reject. More on that: approval is the product.
Role definitions for each of the four agents are published at alexcinovoj.com (opens in a new tab), and the orchestration layer comes out of the platform work at TechTide AI (opens in a new tab). Steal the org chart before you steal the prompts.
“The value is not in the agents. It is in the contracts between them.”
Questions people actually ask
- Why not one agent with a really good prompt?
- Because a single context carries the tone and assumptions of every stage into the next, and self-critique from the same model is unreliable. Separate roles with separate windows and separate models remove both problems.
- Does four agents mean four times the cost?
- No. Each stage runs on a much smaller context than one heroic conversation, and only the writer needs an expensive model. In our case the split reduced cost per accepted output.
- What if the critic blocks everything?
- That is usually a rubric problem, not a critic problem. Validate the rubric against human reviews first; unvalidated criteria produce either a rubber stamp or a brick wall.
- Do I need an orchestration framework?
- Not to start. Four functions, four schemas, and structured logs will take you a long way. Reach for a framework when you need durable retries and distributed tracing, not before.
Sources & further reading
Written by
Alex Cinovoj, Founder, TechTide AI
Alex Cinovoj builds ClawLI at TechTide AI, a fleet of specialist agents that research, draft, schedule, and grade LinkedIn content with a human approving every send. He writes about what breaks when you put agents in front of a real audience.
Keep reading
- Content operationsVoice Without the CringeHow to encode a real writing voice for an AI system, and why "professional but approachable" produces the exact opposite.
- Content operationsApproval Is the ProductHuman-in-the-loop is usually sold as a safety compromise. Designed properly it is the fastest quality loop you have.
- Content operationsThe Anti-Slop StandardA publishable checklist for beating AI slop: what to ban, what to require, and how to enforce it before a draft ever reaches a human.