Retro comic illustration: a woman in purple athleisure and gold headphones walks a terrier down a futuristic suburban sidewalk while two milk bottles in red plaid trapper hats whisper to her from thought bubbles. A roadside sign reads Good Advice Comes in Many Forms, Listen Wisely, and a mailbox reads The Future is Bright.MilkHat Media round badge: a glass milk bottle wearing a red plaid trapper hat on a purple disc ringed in gold, with the words MilkHat Media, AI Automation

How to build a research notebook that fills itself

When I open my laptop in the morning, Claude checks the YouTube shows, newsletters and sites I follow, pulls anything new as plain text, files it in Google Drive, and adds it to a Gemini Notebook. By the time the coffee's done I can ask questions across months of interviews and posts and get answers with citations, or have the notebook turn the week into an audio briefing. You don't need to code to build one. This post walks through the whole path: what to set up, which tool handles which kind of source, and the five prompts that do the work.

Why I built it

In a fast industry, the useful stuff is buried in long interviews, newsletters and trade coverage. I wasn't going to watch three hours of video a week, but a transcript I can search and question is something I'll actually use. Instead of skimming, I ask things like who said what about pricing, or which guests disagreed with each other.

Gemini Notebook is Google's research notebook. It answers only from the sources you give it, and each answer links back to the passage it came from. It was called NotebookLM until July 2026, when Google announced the new name. The hard part is keeping it fed. Adding sources by hand got old for me in about three days, so that's the piece I automated.

Mine tracks a YouTube interview show, its Substack newsletter, a weekly industry podcast that posts to YouTube, guest appearances by a few people I follow, and various news sources I trust. The archive is a little over 350 pieces right now.

The path, start to finish

There are four steps. You set up your computer once, write down your sources, paste five prompts into Claude, and then use the notebook. Claude handles the installing, the code and the scheduling. Your part is choosing the sources and signing in to Google when it asks.

Step 1: Set up your computer (one time)

I built this on a Mac, and the steps below assume one. Claude can build the same thing on Windows, but the scheduling piece works differently there.

Start by installing the Claude desktop app, signing in, and connecting it to your computer so Claude can run commands and save files on it. This matters more than it sounds. The scrapers have to run on your own machine, not in the cloud, for a reason I'll get to in the section on what broke.

Next, open Gemini Notebook with your Google account so the account is set up, and sign in to that same Google account in Chrome. Claude borrows that Chrome sign-in later to connect to your notebook.

If you want a browsable archive of everything it collects, install Google Drive for Desktop. It's optional. Without it, the files sit in a folder on your computer.

Step 2: Write your source list

Open a note and list what you want to follow. Be specific: paste the actual links, and write names exactly as they're spelled. A list might look like this:

Topic: [your industry or subject]
YouTube: youtube.com/@[channel] and youtube.com/@[another channel]
Newsletters: [name].substack.com
News sites: [trade publication URL], [company blog or press page URL]
People or companies to search for: [name], [name]
Start date: [how far back to go]

Each kind of source comes in a different way, and each needs a different tool. You don't install any of these yourself. Claude does, after asking you first. The table is so you know what you're agreeing to.

SourceTool Claude usesWhat comes inWhat to know
YouTube channels and interviewsyt-dlp, a free downloaderA transcript made from the video's captionsVideos with no captions get skipped
Substack newslettersNothing extra. Substack publishes a public list of every postThe full text of each postPaid posts come in as the free preview
News sites, blogs, press pages, non-Substack newslettersfeedparser to read the site's RSS feed (the list of new articles many sites publish), and trafilatura to pull the article text off the pageThe article textPaywalled articles give you the headline, summary and link
A person, company or topicyt-dlp's YouTube search, or a Google News search feedAnything new that mentions the nameSearches pick up some noise, so tell Claude what to leave out
Podcasts with no videoWhisper, a free transcription tool, run on the episode audioA transcriptMuch slower than captions
Gemini Notebook itselfnotebooklm-pyUploads into your notebookUnofficial, so it can break (more below)

Behind the scenes, Claude also installs Homebrew and uv, two standard installers for Mac software, and uses launchd, the scheduler built into macOS.

One note on notebooklm-py. Google doesn't offer a public way to add sources to the regular version of Gemini Notebook, so this open-source tool works the way the website does. It's worked well for me, but it can break whenever Google changes something on their end, so expect to fix it now and then.

Step 3: Paste the five prompts

Open the Claude desktop app and send these one at a time. Let Claude finish each one, and answer its questions, before you paste the next. Swap your own details in where the brackets are.

1. Scope it

I want a daily research pipeline on [topic]. Here is my source list: [paste your list from step 2]. Save everything as plain text to [folder]. Run it on my computer, not in the cloud. I'm not technical, so explain each step in plain English. Ask me what you need, then tell me what you'll install before you install it.

2. Scrape to clean text

Build a scraper for each source, using the cleanest route for each one: captions through yt-dlp for YouTube, the publication's own archive or RSS feed for newsletters and news sites, trafilatura for article text, and a search for names and topics. Every file gets a four-line header: title, link, date, source. Then the clean text, with no timestamps, ads or menus. Where something is paywalled, keep the headline, summary and link and mark it as a preview. Pull everything since [start date]. If the same item shows up twice, keep one copy, matched by its link, not its filename.

3. Connect Gemini Notebook

Install notebooklm-py, walk me through logging in, and create a notebook called [name]. Make an inbox folder: anything dropped in it uploads to the notebook automatically. Send text files as pasted text. Log anything that fails and retry it on the next run.

4. Send only new items

Mark everything you've already scraped as seen, so only new items go to the notebook from now on. Then add anything published in the last 14 days so the notebook isn't empty.

5. Put it on autopilot

Run all the scrapers once a day, the first time my computer wakes up. If it's offline, try again every hour. If the Google login expires, send me a Mac notification.

To add a source later, give Claude the new link and ask it to add a scraper the same way.

Step 4: Use the notebook

Open Gemini Notebook in your browser and pick the notebook you named in prompt 3. New sources show up there on their own. Ask it questions the way you'd ask a colleague who read everything, and click the citation numbers to see the passage each answer came from.

When you want something to listen to, ask Claude to create an audio interview. It will ask which sources to pull from, how long you want it, and what point of view to take (for example, "I'm considering taking this company on as a marketing client"). This is the secret sauce. Gemini turns your sources into a podcast that explains things in a way that's easy to digest, and you can rewind it or play it at different speeds. You can also have it make a video, a slide deck, or quizzes to test yourself. It's a remarkable platform.

What broke

My first attempt ran on a cloud machine, and YouTube cut it off after about 15 videos. The same pull from my home internet went through fine. That's why the first prompt says to run it on your computer.

Gemini Notebook also rejected the text files when I sent them as uploads. Both test uploads came back as errors, and the same text sent as pasted text worked on the first try. Prompt 3 asks for pasted text for that reason.

On my Mac, the tool's own sign-in window saved an empty login twice. Reading the sign-in from Chrome fixed it. If Claude runs into the same thing, tell it to use your Chrome sign-in. Your Mac may ask for your password to allow that, which is normal.

The last problem was duplicates. Two jobs were saving into the same folder and spelling the titles differently, so a few episodes showed up twice under different names. Matching on the link instead of the filename took care of it, and prompt 2 asks for that from the start. If you follow a show and its newsletter, the episode transcript and the written post about it will both land in the notebook, often with nearly the same title. They aren't duplicates. One is what was said and the other is what was written up afterward.

Play fair with it

Keep it to public content, for your own research. Pulling captions with a tool like yt-dlp is in a gray area of YouTube's terms, and news sites have terms of their own, so read them for any site you add. Don't republish what you collect, and credit people when you quote them. Newsletter posts and articles belong to the people who wrote them. I use all of it to keep up, and I'd keep it at that.

This is a small version of the automation work we do with clients. The repetitive work runs on rules you set once, and your attention goes to the work only you can do. Here the repetitive work is reading. In most businesses it's the spreadsheet nobody wants to update.

Common questions

Do I need to know how to code?

No. Claude writes and runs everything. You paste the prompts, answer its questions, and sign in to Google once.

Can I point it at news sites, not just podcasts and newsletters?

Yes. List the sites in your source list. Claude will use a site's RSS feed when it has one, or read the article pages when it doesn't. For paywalled publications you get the headline, summary and link rather than the full article.

Does it work with any Substack?

Any public one. Free posts come in whole. Paid posts come in as the free preview, the same thing a non-subscriber sees.

Does my computer have to stay on?

No. It runs the first time your computer wakes up each day. If you're away for a week, it catches up the next time you open it.

What happens when the unofficial tool breaks?

You don't lose anything. New items wait, and once the tool is updated or you sign in again, the next run sends everything that piled up.

Closing

None of this reads the material for you or decides what matters. What you get is every new interview, post and article in one place you can question, with a citation for each answer, and your mornings back from copying and pasting. If you have a stack of sources you keep meaning to get to, or a weekly chore that looks a lot like this one, tell us what's eating your week and we'll sketch out the setup with you (over a cold glass of milk...obviously).