Skip to content
cccskills
FreePublished on GitHub

notebooklm

Turn expert podcasts into personalized protocols with cited experiments. Load 300 episodes from terminal, run an expert-informed interview, build experiments in your Obsidian morning routine. Use when user says "notebooklm", "load channel", "expert interview", "notebooklm ask", "health protocol", or wants to turn expert content into actionable experiments.

The English summary is being prepared. Showing the original description.

ArtemXTech/personal-os-skills543 stars(GitHub 543 + cccskills 0)
Works withYouTubeObsidian

Run score Not tested

See how to install

Files included (10)

  • SKILL.md6.4 KB
  • scripts/backfill_fulltext.py3.1 KB
  • scripts/extract_passages.py4.8 KB
  • scripts/import_sources.py4.3 KB
  • scripts/load_channel.py8.5 KB
  • scripts/resolve_citations.py16.1 KB
  • workflows/ask.md2.9 KB
  • workflows/auth.md1.2 KB
  • workflows/import.md3.0 KB
  • workflows/youtube-channel.md4.7 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

NotebookLM - Expert Knowledge to Action

Turn any expert's content into a personalized protocol with experiments you actually run. Load 300 YouTube episodes into NotebookLM from terminal, run a cited interview about your goal, create experiments in your Obsidian daily note.

Video walkthrough: https://youtu.be/KRpZSvtMiTI

What This Does

  1. Load sources from terminal. You can't just tell NotebookLM to add a YouTube channel. This skill does it. One command. 300 episodes.
  2. Cited answers traced to exact transcript lines. Every recommendation links back to the exact episode and passage. Verifiable.
  3. Expert-informed interviews. Claude queries NotebookLM with YOUR goal. Generates questions informed by the expert's research on your specific topic.
  4. Experiments in Obsidian. Protocol becomes experiments in your daily note. Morning routine skill asks every day: how is this going?
  5. Any expert, any domain. Huberman for health. Lenny for product. Onboarding docs for a new job. Same pattern.

Prerequisites

1. Install nlm CLI

uv tool install notebooklm-mcp-cli

Gives you the nlm command. See notebooklm-mcp-cli for details.

2. Install notebooklm-py (for notebook creation and channel loading)

pip install "notebooklm-py[browser]"
playwright install chromium

3. Authenticate

# nlm CLI auth (for queries and source listing)
nlm auth login

# notebooklm-py auth (for notebook creation and loading)
notebooklm login

Both open a browser window for Google login. nlm saves to its own config, notebooklm-py saves cookies to ~/.notebooklm/storage_state.json.

4. Obsidian Plugins

  • Dataview (required) - for dashboard queries and citation tables

Quick Start

# List your notebooks
nlm notebook list

# Ask a question with citations
nlm notebook query <notebook-id> "What does Huberman say about deep focus?" --json

# List sources
nlm source list <notebook-id> --json

Workflow Routing

User saysWorkflow
"load channel", "youtube channel", "bulk load videos"workflows/youtube-channel.md
"notebooklm ask", "ask notebook", "Q&A"workflows/ask.md
"import notebook", "import sources"workflows/import.md
"notebooklm auth", "notebooklm login"workflows/auth.md

The Full Pipeline

This is the workflow shown in the video:

1. Pick your expert and goal

Goal: "I want to improve my health and focus"
Expert: Andrew Huberman (@hubaborhab on YouTube)

2. Load their content

# Scrape channel videos
python3 scripts/load_channel.py scrape \
  --channel "https://www.youtube.com/@hubaborhab" \
  --output /tmp/huberman-videos.json

# Create notebook
notebooklm create "Andrew Huberman - Health"

# Load 200 most recent health-related episodes
notebooklm use <notebook-id>
python3 scripts/load_channel.py load \
  --videos /tmp/huberman-videos.json \
  --notebook <notebook-id> \
  --count 200 \
  --concurrency 20

3. Ask expert-informed questions

nlm notebook query <notebook-id> \
  "What does Huberman recommend for sustaining deep focus for 4+ hours daily?" --json

Each answer comes with [N] citations back to the exact source and passage.

4. Run a cited interview

Claude uses the notebook to generate interview questions specific to YOUR goal. You answer honestly. Claude builds a personalized protocol where each recommendation is tied to an exact episode.

5. Create experiments

The protocol becomes experiments in your Obsidian vault:

  • Each experiment has a hypothesis, protocol, success criteria, and timeframe
  • They appear in your daily note every morning
  • Your morning routine skill asks: "How is this experiment going? Any observations?"

6. Turn it into a reusable skill

Package the workflow as a /huberman or /lenny skill. Same pattern, different expert.

Vault Structure

Your Vault/
├── Notes/NotebookLM/
│   ├── Huberman Health.md              # type: notebook (index)
│   └── huberman-health/
│       ├── Sources/                     # type: notebook-source (transcripts)
│       │   └── Episode Title.md
│       └── QA/                          # type: nlm-query (cited answers)
│           └── 2026-04-05 Focus Protocol.md
├── Notes/Experiments/
│   └── Morning Sunlight Protocol.md     # type: experiment
└── Notes/Dashboards/
    └── Health.md                        # Dashboard with embedded experiments

Scripts

ScriptPurpose
scripts/load_channel.pyScrape YouTube channel + bulk-load into NotebookLM
scripts/resolve_citations.pyReplace [N] with [[Source#^anchor|[N]]] wikilinks
scripts/import_sources.pyImport sources as vault files with metadata
scripts/extract_passages.pyExtract cited passages from Q&A into source files
scripts/backfill_fulltext.pyFetch full transcripts for source files

All scripts use Path.cwd() as vault root. Run them from your vault directory.

Citation Resolution

The resolver turns [N] markers in NotebookLM answers into clickable [[Source#^c-XXXXXXXX|[N]]] wikilinks. Click to jump to the exact cited passage in the source transcript.

  • Anchor IDs are stable (MD5 of cited text)
  • Idempotent: re-running same question skips existing anchors
  • Cross-source citation remap: handles collapsed source_ids
  • ~96% resolution rate across tested queries

Examples

  • Health: 300 Huberman episodes -> personalized health protocol with sleep, supplements, exercise experiments
  • Product: 200 Lenny's Podcast episodes -> product strategy playbook with cited frameworks
  • New job: Onboarding docs + team wikis + architecture decisions -> ramp-up plan with daily experiments
  • Business: Hormozi content -> offer audit with value equation scoring

License

MIT

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Coordinate authorized work across persistent AI agents and existing tasks. Use when the user asks to route work, hand off a task, check agent status, or manage several ongoing responsibilities through one conversation.

The English summary is being prepared. Showing the original description.

ArtemXTech/personal-os-skills543Updated Oct 20, 2026

Query and sync Granola meetings to Obsidian vault. Use when user mentions Granola, meeting transcripts, or wants to sync meeting notes. Reads from local cache - no API needed.

The English summary is being prepared. Showing the original description.

ArtemXTech/personal-os-skills543Updated Oct 20, 2026

Import NotebookLM notebooks into your Obsidian vault as linked knowledge graphs. Sources become wikilink-able files, Q&A answers get citations resolved to [[wikilinks]] with passage-level deep links. Use when user says "notebooklm import", "import notebook", "notebooklm sources", or wants to import NotebookLM data into vault files.

The English summary is being prepared. Showing the original description.

ArtemXTech/personal-os-skills543Updated Oct 20, 2026

recall

Free

Load context from vault memory. Temporal queries (yesterday, last week, session history) use native JSONL timeline. Topic queries use QMD BM25 search. "recall graph" generates interactive temporal graph of sessions and files. Every recall ends with "One Thing" - the single highest-leverage next action synthesized from results. Use when user says "recall", "what did we work on", "load context about", "remember when we", "prime context", "yesterday", "what was I doing", "last week", "session history", "recall graph", "session graph".

The English summary is being prepared. Showing the original description.

ArtemXTech/personal-os-skills543Updated Oct 20, 2026

Sync Claude Code sessions to Obsidian markdown. Export, resume, add notes, close sessions. USE WHEN user says "sync sessions", "export sessions", "resume session", "add session note", "close session", "log session".

The English summary is being prepared. Showing the original description.

ArtemXTech/personal-os-skills543Updated Oct 20, 2026

Manage tasks in Obsidian via TaskNotes plugin API. Use when user wants to create tasks, list tasks, query by status or project, update task status, delete tasks, or check what they need to do.

The English summary is being prepared. Showing the original description.

ArtemXTech/personal-os-skills543Updated Oct 20, 2026

See all skills by ArtemXTech

Report a problem with this skill