I Automated My First Content Episode (Sort Of)

A rough first attempt at building a docs-to-audio content pipeline using Google Drive, NotebookLM, Gemini CLI, and Claude Code — honest notes on what it actually is.

Chris Watkins 5 min read

Listen in my voice · AI narration (ElevenLabs clone)

Loading audio player…
On this page

I shipped a sneak-peek podcast episode last week. The thing is, I didn’t record it. I didn’t even script it in the traditional sense. What I did was wire together a handful of tools into a rough automated pipeline and let that pipeline generate the audio from my own writing.

Here’s what actually happened, no polish.

The Starting Point: I Have a Lot of Docs

One thing I’ve been doing as I build Bingo Codes and these AI products is writing things down. Notes, project documentation, drafts, explorations. Most of that lives in Google Drive as a collection of Markdown files and docs.

The problem is that writing lives in Drive and doesn’t go anywhere. I’ve been thinking about how to get it into a format that people can actually consume without me having to manually produce every piece of content from scratch.

That’s the experiment this was.

The Pipeline

Here’s how it worked, step by step:

Step 1: Google Drive as the source

All of my writing (notes, drafts, project docs) already lives in Google Drive. That’s the raw material. I didn’t have to reorganize anything to start this experiment. The docs were just there.

Step 2: Loading the docs into NotebookLM

I set up a NotebookLM notebook for the Bingo Codes project and loaded those Google Drive docs in as sources. NotebookLM ingested them and treated them as its knowledge base.

Step 3: Driving NotebookLM via Gemini CLI + MCP

This is the interesting part. The Gemini CLI has access to a NotebookLM MCP server, which means it can interact with NotebookLM programmatically. I used Gemini CLI to trigger NotebookLM to generate an Audio Overview from the sources I’d loaded in.

NotebookLM’s Audio Overview feature takes your source documents and generates a podcast-style episode with two synthetic AI hosts discussing the content. It’s their built-in feature. I’m just triggering it via the MCP integration rather than clicking a button in the UI.

Step 4: The file lands in Downloads

NotebookLM generated the audio and the file ended up in my ~/Downloads folder. At this point it’s just an audio file sitting on my machine.

Step 5: Claude Code publishes it

Claude Code picked up the file from Downloads and published it to the website, the podcast page. That’s the episode that’s now live at /podcast: “Engineering Big Mama for Black Communities.”

What This Actually Is

Let me be honest about what I built here, because I don’t want to oversell it.

This is a rough first version of an automated content pipeline. Maybe not the best approach. It’s more of a proof of concept that the general idea works (docs in, audio out, publish) than a polished production system.

The audio itself uses NotebookLM’s synthetic AI hosts. It’s not my voice. I’m separately working toward getting my own voice into this kind of output, but that’s a different project. The sneak-peek episode you can listen to right now is two AI hosts discussing content drawn from my actual writing, not me speaking.

That’s an important distinction. I want people to know what they’re hearing.

The pipeline also isn’t fully automated end-to-end in a clean way. There are manual handoff points. The fact that the audio file lands in ~/Downloads before Claude Code picks it up is a bit awkward, not exactly the elegant CI/CD pipeline I’d eventually want. But it worked, and that’s the point of the experiment: does the general path hold together?

The answer is: kind of, yeah.

Why This Is Worth Documenting

The pipeline idea is the thing I’m interested in. I have a lot of writing. That writing is knowledge and perspective that should be more accessible. If I can build a system where docs I’m already writing become audio content without a ton of manual production work, that has real value, especially as someone building in public while also doing the actual engineering work.

The specific tools I used here (NotebookLM, Gemini CLI, MCP, Claude Code) are all early-stage integrations. Some of this will change. But the shape of the pipeline (write in your natural workflow → structured source → AI-generated output → automated publish) is worth refining.

What’s Next

A few things I want to figure out:

  • Can I get my own voice into this pipeline instead of synthetic hosts?
  • Can I make the handoff between the generated audio and the site publish less manual?
  • Does the content quality hold up when I stress test it with more varied source material?

None of those are solved yet. This is where I am with it.

The episode is live if you want to hear what comes out of this kind of pipeline. I’d rather show you a rough working version than wait until I have something perfect to talk about.