What My Automated Archive Exposed About My Writing

Reading a batch of AI-written posts in my Ghost archive made the patterns obvious: recycled transitions, invented habits, generic intros, fake closure, and why even a few real notes change the result.
What My Automated Archive Exposed About My Writing

Reading the archive like a stranger

I let an automated setup draft a bunch of posts in Ghost from thin topic prompts. Then I did the boring part: I read them back-to-back in the archive, like a stranger would.

Individually, most posts looked fine. Together, they were a pattern-recognition exercise in what goes wrong when you outsource structure, facts, and voice to a model and only feed it a topic cell.

The archive made certain problems obvious: recycled transitions, invented habits, generic intros, fake closure, and a clear performance gap between generated posts and the ones anchored in real notes.

The same three transitions, over and over

Across twelve different posts, the model used the same three transitions:

  • In retrospect, ...
  • The deeper lesson is ...
  • What surprised me most was ...

I did not write those tics; the model did. Because I was triggering it from thin prompts, it fell back to its safest structural patterns.

On a single page, each of those transitions feels harmless. Read them across a dozen posts in an archive and you do not sound reflective. You sound like a chatbot with hobbies.

In isolation, repetition is invisible. In bulk, it is deafening. The pattern was not just linguistic; it was structural. The model clearly has a template for “time to sound wise now,” and if you let it, it will use that template every time.

The fix is not to ban certain phrases. It is to stop letting the model decide when a story should become a lesson. If I do not mark an actual turning point in the notes, I should not get a pre-packaged “in retrospect” paragraph for free.

Fluent writing on hallucinated foundations

The second thing that surfaced was factual invention. One automated post about my Withings scale confidently claimed that I “export data to compare training periods.” I have never done that.

The model did not pull this from my notes, because there were none. It inferred a plausible behavior for “person who owns a smart scale” and wrote it as if it were my habit. In the archive I found at least four posts where the AI had invented a habit, a preference, or a conclusion that I had never actually reached.

The tone was confident. The verbs were in the right tense. The story hung together. The foundation was fake.

You do not get obvious red flags. You get smooth, coherent paragraphs that happen to be lying about your life, because the model is optimized for plausibility, not accuracy.

I wrote about this earlier in GEO vs SEO in 2026: What Actually Moved For My Clients.

The archive view turned this from a one-off annoyance into a pattern: if I do not supply the specific behavior, the model will invent one to fill the gap. If the prompt is “daily weigh-ins” and I do not say what I actually do, it will happily fabricate an “I export my data” version of me.

The process needs an evidence rule: if there is no note, there is no fact. Description is allowed. Inference about my own behavior is not.

Generic intros from generic prompts

Most of the automation triggered from a topic cell: something like “daily weigh-ins.” That is not a story. It is a tag.

Given only that, the model had to invent context. The result was always some variation of:

“I have always been interested in tracking my health.”

That is not my voice. My voice is closer to:

“I bought this scale because Janneke told me to stop guessing.”

The difference is not literary. It is evidentiary. One sentence is a vague character sketch. The other is a concrete event with a name and a reason.

Reading the archive made this structural problem obvious. Topic-only generation produces writing with no owner. The “I” in the intro is a generic protagonist with my name attached.

The model is doing exactly what it is designed to do: expand a topic into a plausible opening paragraph. The failure is upstream. If I only give it a noun phrase, it has no choice but to make up why that topic matters to me.

For my future self, this sets a minimum input bar. A topic cell is not enough. I need to at least answer:

  • What actually happened?
  • Who else was involved?
  • What decision or change followed from it?

Without those, the intro will always sound like a stranger pretending to be reflective.

The urge to land the plane

The endings had their own pattern. Every automated post wrapped up with a tidy lesson. There was always closure: a summarizing paragraph, a bolded “takeaway,” or a final rhetorical question nudging you toward a neat conclusion.

More on this in my article Notion vs Obsidian for a Solo Developer: What I Actually Use.

Real life does not resolve in 800 words. My actual writing, when I do it manually, tends to trail off into the next unresolved question. I usually stop when I hit the edge of what I actually know.

Reading the automated archive, I could see the algorithmic urge to land the plane. The model is trained on articles that resolve, so of course it tries to resolve everything. If the notes do not contain a real outcome, it will synthesize one.

The problem was not that the lessons were always wrong. It was that they were too clean to be honest. The arc always bent toward “here is the wisdom,” even when my own thinking on that topic is still half-baked.

The archive made me miss my own uncertainty. It also gave me a simple rule: if the notes do not contain a real decision, change, or failure, the post should not pretend that one exists. Ending on an open question is not a bug. It is a boundary.

Engagement as a rough experiment

Ghost’s dashboard added one more layer: performance. When I compared time-on-page, a pattern emerged. The posts with the least automation did best.

The posts where I had supplied even minimal notes, like a handful of bullets, a single anecdote, or one real number, had much higher time-on-page than the fully automated ones.

This was not a rigorous A/B test, but the contrast was strong enough to feel like a controlled experiment. The major difference between those groups of posts was the presence or absence of real observation in the input.

The takeaway is simple: observation beats generation. The model can write. It cannot see. If I do not give it something true to work with, it will produce a structurally sound, tonally pleasant, forgettable article that people bounce from quickly.

The fix is not to stop using the model. It is to shift where the effort goes. My job is to notice and to log:

Read also Lazy Loading Images Almost Tanked My Core Web Vitals.

  • the actual conversations (“Janneke told me to stop guessing”),
  • the real numbers,
  • the specific frictions and failures.

Once those are in the notes, the model can help with structure. Without them, it is just very fluent filler.

What the archive is for now

Reading the automated archive was less about cleaning up old posts and more about resetting the workflow.

Some concrete changes it suggests:

  • Ban topic-only prompts. Every draft starts from notes, not tags.
  • Treat first-person claims as evidence, not decoration. If it did not happen, it does not go in.
  • Allow unresolved endings. No forced “deeper lesson” unless there actually is one.
  • Periodically reread in bulk. Patterns only show up at archive scale.

The automation turned my own site into a mirror for my defaults and the model’s defaults. The archive is where those meet. Reading it straight through made the seams visible.

That is the useful job of automation here: not to replace the writing, but to create enough volume that you can see which parts still sound like you and which parts clearly do not.

Subscribe to my newsletter

Subscribe to my newsletter to get the latest updates and news

Member discussion