We have spent a decade building machines that generate persuasive text and almost no time building machines that audit it. That asymmetry is starting to hurt. False news spreads "farther, faster, deeper, and more broadly" than the truth — Vosoughi, Roy, and Aral demonstrated this at scale across roughly 126,000 stories on Twitter, and the effect was driven by humans, not bots [1]. If the demand side of manipulation is human psychology, then the supply side is now industrialized by language models. The tooling that helps a reader think clearly has to be at least as sophisticated as the tooling that helps a writer persuade.

This essay is about how to build that auditing tool: a forensic media analyzer that treats an article the way a lab treats a tissue sample — measuring what is structurally present rather than voting on whether it feels biased. I'll cover the science it rests on, the engineering problems that make it genuinely hard (LLM non-determinism chief among them), a practical build guide, and an honest account of the limitations. Some of the design decisions come from work we've done on Rhetoric Audit, a browser-based forensic media evaluator; most of the ideas are older than any of us and belong to rhetoric, argumentation theory, and cognitive science.