Voiceprint Is Self-Evolving and Getting Insanely Good
From a rough Obsidian note at 8:06 AM to a live post at 8:47: Voiceprint at work, receipts included.

Two days ago I published Teaching a Language Model to Write Like Jack, the story of Voiceprint, my rig for AI-drafted writing in my own voice. This morning handed me a clean case study of that system at work — timestamps and all. Here it is, receipts included.
The Note (8:06 AM)
At 8:06 this morning I dropped a rough idea into Obsidian. This is the entire note, verbatim, typos and unbalanced parentheses intact:
# A play on the song I Shot the Sheriff
Brief.
**I shot the email, but I didn't shoot no web POSSE, oh, no, oh**
I killed the Beehiiv newsletter yesterday. But I'm still firmly committed to POSSE. Explain.
**I shot the email, the email, but I swear it was in self-defense, oh, no**
Everything about email proved to be a shitshow. So much time wasted. DMARC. Trying to block subscriber bots (who have even solved Cloudflare Turnstile now. (First, trying to understand, why are there subscribe bots, what possible payoff is there??)
Sadly, I remember thinking the newsletter was succeeding! Show growth chart. Wow, it's taking off!
Nope, it wasn't.
So, newsletter not even close to worth it. No need to let it linger and suffer. It's dead, along with some really annoying defacements of cto4.ai -- it's much faster and cleaner now -- seven Cloudflare DNS entries, and the need to fight subscriber bots. Rest in peace.
That’s the input: about 150 words, half of them fragments, one stage direction (“Show growth chart”), and a song parody as the frame. Obsidian stamped it created at 8:06:57.
The Post (8:47 AM)
The output is I Shot the Email, which I pushed to production at 8:43:44; Cloudflare’s build had it live on the site within a few minutes. 41 minutes — note to live.
In between, the agent drafted the post in my voice from the note plus the session records of yesterday’s newsletter kill, which is where the real numbers came from: the 2,089 bot signups, the 214 humans, the six issues ever sent. It rebuilt the subscriber growth chart from the kill-day CSV export, in matching light-mode and dark-mode variants. It generated the bullet-holed-envelope cover on my Mac Mini image rig. It ran a mechanical linter that flags AI-tell phrases, and a second pass that restores em dashes to my measured natural rate (models default to almost none; I run about five per thousand words). Then I edited.
The Diff
My entire hand edit to the drafted prose was one word: “copies still flow out to LinkedIn” became “teasers still flow out to LinkedIn,” because LinkedIn gets a teaser with a link, never a full copy.
Beyond that, I directed three additions, each a fact I supplied in a sentence and the agent rendered and placed: the 2025 first bot wave that got Turnstile installed to begin with, the 971 junk contacts purged from my CRM, and a closing note that the newsletter experiment was worth having run.
And one real catch. When I fed it the first-wave fact, the draft welded it to the growth chart: “the small step at the left edge of the chart.” Plausible, confident, wrong — that wave swelled the list to nearly 2,000 and predates the chart entirely. This is the editor-in-chief job I described in the Voiceprint post, Ben Bradlee style: interrogate the work, demand the sourcing, kill what isn’t nailed down. The agent supplied the prose; I supplied the veto.
The Self-Improvement Loop
Why did so little need fixing? Because every edit I’ve ever made to a drafted post gets harvested. After each post ships, the agent diffs my edits against its draft, captures each rewrite as a before/after pair, and names the lesson: a stance principle, a texture principle, a banned phrase. The pairs live in a contrast ledger the drafting system rereads before every new piece. The ledger hit 22 entries this morning, and two of them came from the post above: the “teasers” word choice, and the welded-evidence catch, now generalized as “don’t bind a supplied fact to convenient evidence without verifying the binding.”
This Is Insane
The first post drafted using Voiceprint needed heavy, heavy editing. This morning’s needed one changed word and three added facts.
41 minutes from first idea to a good, authentic, polished post.
Holy hell.





