I thought I could fix a bad episode later. Audio doesn't work that way.

I thought I could fix a bad episode later. Audio doesn't work that way.

Martin Shein · · 5 min read

I have shipped a lot of things I later quietly fixed. A headline that did not land. A pricing page that confused people. A docs page with a wrong endpoint. In every one of those cases I edited the file, republished, and the mistake stopped existing.

Audio does not work that way.

Once an episode is rendered and pulled down by a podcast app, the file is gone from your control. The listener has it. The directory cached it. A correction is a new episode, not an edit. That single property changes where the quality work has to happen, and it is the reason @di-atomic/podcast exists in the shape it does.

What the current tools actually give you

Point an AI podcast tool at a document today and it hands back two chatty hosts having a friendly conversation. It is genuinely impressive the first time. By the fourth time you notice that every episode has the same two people, the same rhythm, and the same slightly breathless agreeableness.

That is not a format anybody chose. It is a product limitation that got shipped as a default, and the whole market copied it.

Two real things are missing from it. The first is the script. You do not get to see it, shape it, or gate it before the audio exists. The second is the speaker count. Two is one option out of four. A solo explainer, a two-hand interview, a three-person panel, a four-way roundtable: those are different content decisions with different jobs, and picking one should be my call, not a vendor's.

Four chalk panels showing one, two, three and four microphones, labelled SOLO, DUO, PANEL and TABLE, with the two-microphone panel circled in gold

The reframe: the script is the product

So podcast does not render anything. It is the writer and the director, not the studio.

It reads a source corpus, casts the speakers, writes the episode, gates the result, and only then hands a finished script to media-generator for voicing and distribution-launcher for publishing. Everything expensive and irreversible happens downstream of a text file I can still change.

That ordering is the entire design. Text is cheap to fix. A rendered MP3 sitting in 40,000 podcast apps is not.

It also writes in two passes rather than one. Pass one produces the outline: segments, sizes, the hook first and the wrap-up last. Pass two fills each segment with the running transcript as context. I tried the obvious thing first, which was asking for a whole 20-minute episode in one go, and it drifted and repeated itself around the eight-minute mark every time. Structure first, then depth.

A chalk diagram of two passes: PASS 1 OUTLINE showing empty running-order bars, a gold arrow, then PASS 2 TRANSCRIPT showing the same bars filled with written dialogue

Four scripts that fail the build

Guidance skills have an honesty problem: an agent can always claim it followed the rules. So this one ships four checks that produce numbers instead of opinions, and they run before the handoff.

Claim vocabulary. For regulated products this is the one that matters most. On a deliberately bad test episode about a biocide, the linter caught 9 banned absolute claims. A phrase like "guarantees compliance", or any blanket safety absolute, is a legal exposure in any medium, and in audio you cannot cleanly take them back. This gate is mandatory and final for anything touching REACH, CLP, biocides or pharma. It is also, as far as I can tell, the part no consumer podcast tool offers at all, which is exactly why a compliance agency is the one building it.

Speaker balance. No single voice may exceed 70% of the episode's words, solo formats excepted. If one speaker is at 80%, you did not write a panel. You wrote a monologue with interruptions, and listeners hear the difference even when they cannot name it. My real test episode came in at 68.8% and passed with very little room to spare, which is about right for an interview.

Episode structure. Hook present, body present, close present, speakers between 1 and 4, intro under 90 seconds. Listeners decide inside the first 30 seconds; long intros roughly double the drop-off.

Speaker fidelity. Every line's speaker must be one of the declared names. Transcripts drift toward generic "Host" and "Guest" or invent a third person, and when that happens the voice mapping breaks and your guest suddenly sounds like your host.

Four chalk gate posts in a row labelled CLAIMS 0, BALANCE 70, STRUCTURE 4 and NAMES 1, with a single arrow passing through all four and exiting in gold

The two numbers the agent has to say out loud

Voicing a 30-minute episode costs about $0.45 through one provider and about $3.00 through a premium one. Seven times the price, for real quality and multilingual reasons that are sometimes worth it.

What I refuse to allow is an agent quietly choosing the expensive one on a batch of forty episodes and telling me afterwards. So the skill has to state the provider and the reason as part of its handoff. Same principle as the claim gate: the decision surfaces before the money is spent, not after.

Show-notes are not an afterthought

Audio is invisible to every search engine and every AI answer engine. They cannot listen. If the only artifact is an MP3, the episode is undiscoverable outside the podcast apps themselves.

So every episode emits show-notes with a full transcript, at least three chapters timestamped from 00:00, and a keyworded title and description. That text is the entire discoverability layer, and it gets persisted alongside the script so it can be reused for clips, posts and follow-up outreach. One episode is the seed; the clips are the distribution.

What this changes for you

If you want a novelty two-host summary of a PDF, you have plenty of options and you do not need me.

If you want to run a real show, where you choose the format, control what gets said, prove that no banned claim made it into a rendered file, and know what the audio cost before it was spent, that is what this is for. It is guidance-only, which means it has no backend to fail: your agent reads the method and does the work, then composes the peers that already voice and publish.

Live now as @di-atomic/podcast. Give it a corpus and tell it what shape the episode should be.