Side project · Multi-agent review · 2026

AI drafts, reviewed. A human stays in charge.

Content Evaluation is a review workbench for AI-assisted writing. A specialist review pipeline attaches advisory findings to the lines it critiques. A human reviews the findings and then reviews a proposed revision before applying it.

Stack · Next.js · TypeScript · FastAPI · LangGraphAgents · human voice · structure · fact checkDemo · fixture-driven walkthrough, no live AI calls

Why I built this

Most AI writing tools optimise for speed at the exact moment you need control. You prompt, a polished draft comes back, and the familiar problem starts: it feels usable but not trustworthy enough to publish. Ask for one change and three paragraphs rewrite themselves. The model's voice quietly becomes the final voice.

So this tool treats a draft as something to review, not something to regenerate. The draft is an artifact. Findings attach to specific lines. You can accept one point, reject another, and leave a third open without losing your place, the same way an editor works through a manuscript. It's a study in keeping the judgement where it belongs: agents are fast at noticing things and bad at deciding which of them matter.

How a review runs

/01 · run

Specialist reviews run in a dependency-aware sequence.

You paste a draft and pick the reviewers. Human Voice and Fact Check can start together. Structure and Conversion follows with their findings as context. The result is a set of source-linked, advisory comments, not a consensus or a verdict.

Run progress view with a live preview finding and three agent status cards.
Mid-run: human voice done, fact check running, findings already streaming in.
/02 · review

Findings attach to the lines they critique.

Every finding points at a specific sentence and brings its reasoning with it. You stay the editor: accept a point, reject it, or mark it uncertain. Fact-check findings carry their sources, so evidence sits next to the claim it is supposed to support.

A highlighted sentence beside an agent comment with accept, reject, and uncertain buttons.
Every suggestion is a proposal, never an overwrite; the reviewer decides.
/03 · promote

Upstream keeps revision and application as separate reviews.

In the upstream app, accepted suggestions can seed a surgical candidate, while a rewrite can use a short direction prompt. Both return a diff for a separate human review. This portfolio walkthrough loads captured candidates instead of calling a model.

A surgical diff with struck-through original text and accepted replacement text.
The upstream diff keeps each proposed replacement visible before application.

Try the demo.

The walkthrough replays a captured run on a prepared draft through intake, review, diff, and applied states. Controls update local demo state, but the candidates and final artifacts come from fixtures. It makes no backend, model, or web-research requests. It takes about five minutes.