notebooklm logo

notebooklm

notebooklm

SKILL.md

Full skill instructions

NotebookLM AI Plugin

Supports:

  • Chat with Notebook AI (source-grounded Q&A with citations)
  • Slide Deck generation (PDF/PPTX)
  • Audio Overview (M4A -- deep dive, brief, critique, debate formats)
  • Video Overview (MP4 -- classic, whiteboard, kawaii, anime, watercolor styles)
  • Mind Map (HTML)
  • Flashcards (HTML/JSON)
  • Quiz (HTML/JSON)
  • Infographic (PNG -- landscape, portrait, square)
  • Report (Markdown -- briefing doc, study guide, blog post)
  • Data Table (CSV / Google Sheets export)
  • Source management (add URLs, YouTube, files, pasted text; list, delete)
  • Fast/Deep web research with auto-import
  • Notes management (create, update, delete, list)
  • Notebook library management (add, list, search, activate)

Quick start

# Authenticate first (opens Chrome for Google login)
npx -y bun scripts/main.ts login

# Add a notebook to library
npx -y bun scripts/main.ts notebooks add https://notebooklm.google.com/notebook/abc123 --name "My Research"

# Generate artifacts
npx -y bun scripts/main.ts generate slide_deck --notebook abc123 --output slides.pdf
npx -y bun scripts/main.ts generate audio --format deep_dive --length long
npx -y bun scripts/main.ts generate video --style whiteboard --output explainer.mp4
npx -y bun scripts/main.ts generate quiz --difficulty medium --quantity more --json
npx -y bun scripts/main.ts generate mind_map --output mindmap.png
npx -y bun scripts/main.ts generate infographic --orientation portrait --output info.png
npx -y bun scripts/main.ts generate report --format study_guide --output report.md
npx -y bun scripts/main.ts generate flashcards --difficulty easy --json
npx -y bun scripts/main.ts generate data_table --output data.csv

Commands

Authentication

npx -y bun scripts/main.ts login

First run opens Chrome for Google login. Cookies are cached for subsequent runs.

# Force cookie refresh
npx -y bun scripts/main.ts login --force

Notebook Management

# List all notebooks in library
npx -y bun scripts/main.ts notebooks list

# Add a notebook by URL
npx -y bun scripts/main.ts notebooks add <url> [--name <name>] [--description <desc>] [--topics <t1,t2>]

# Remove a notebook from library
npx -y bun scripts/main.ts notebooks remove <id>

# Set active notebook (used as default for generation)
npx -y bun scripts/main.ts notebooks activate <id>

# Search notebooks
npx -y bun scripts/main.ts notebooks search <query>

Chat with Notebook AI

# Ask a question about your notebook sources
npx -y bun scripts/main.ts chat --question "What are the key findings?" --notebook abc123

# Continue a conversation
npx -y bun scripts/main.ts chat --question "Tell me more about that" --conversation-id <id>

# Get JSON output with citations
npx -y bun scripts/main.ts chat --question "Summarize the methodology" --json

Source Management

# List all sources in a notebook
npx -y bun scripts/main.ts sources list --notebook abc123

# Add sources
npx -y bun scripts/main.ts sources add-url https://example.com/article --notebook abc123
npx -y bun scripts/main.ts sources add-youtube https://youtube.com/watch?v=xxx --notebook abc123
npx -y bun scripts/main.ts sources add-text --title "My Notes" --content "Important findings..." --notebook abc123
npx -y bun scripts/main.ts sources add-file ./paper.pdf --notebook abc123

# Delete a source
npx -y bun scripts/main.ts sources delete <sourceId> --notebook abc123

Supported file types: PDF, TXT, MD, DOCX, CSV, EPUB, images (PNG, JPG, WEBP, etc.), audio/video files.

Research

# Fast web research (finds relevant sources quickly)
npx -y bun scripts/main.ts research fast --query "latest AI agent frameworks" --notebook abc123

# Deep research (comprehensive report with analysis)
npx -y bun scripts/main.ts research deep --query "state of LLM reasoning" --notebook abc123

# Auto-import found sources into the notebook
npx -y bun scripts/main.ts research fast --query "topic" --notebook abc123 --import

# Check research status
npx -y bun scripts/main.ts research status --notebook abc123

Notes

# List notes in a notebook
npx -y bun scripts/main.ts notes list --notebook abc123

# Create a note
npx -y bun scripts/main.ts notes create --title "Key Takeaways" --content "1. Finding one..." --notebook abc123

# Update a note
npx -y bun scripts/main.ts notes update <noteId> --title "Updated Title" --content "New content" --notebook abc123

# Delete a note
npx -y bun scripts/main.ts notes delete <noteId> --notebook abc123

Artifact Generation

npx -y bun scripts/main.ts generate <type> [options]

Types: slide_deck, audio, video, mind_map, flashcards, quiz, infographic, report, data_table

Options

Global Options

OptionDescription
--notebook <url|id>Notebook URL or library ID (defaults to active notebook)
--output <path>Output file path (auto-named if omitted)
--instructions <text>Custom instructions for generation
--jsonOutput as JSON
--loginRefresh cookies only, then exit
--help, -hShow help

Slide Deck Options

OptionDescription
--format <type>Output format: pdf (default), pptx

Audio Overview Options

OptionDescription
--format <type>Audio format: deep_dive (default), brief, critique, debate
--length <length>Duration: short, default, long
--language <lang>Language code (default: en)

Video Overview Options

OptionDescription
--style <style>Visual style: auto (default), classic, whiteboard, kawaii, anime, watercolor
--format <type>Video format: explainer (default), brief

Quiz Options

OptionDescription
--difficulty <level>Difficulty: easy, medium (default), hard
--quantity <amount>Number of questions: fewer, standard, more

Flashcards Options

OptionDescription
--difficulty <level>Difficulty: easy, medium (default), hard
--quantity <amount>Number of cards: fewer, standard, more

Infographic Options

OptionDescription
--orientation <type>Layout: landscape (default), portrait, square

Report Options

OptionDescription
--format <type>Report format: briefing_doc (default), study_guide, blog_post

Data Table Options

OptionDescription
--format <type>Output format: csv (default), sheets (Google Sheets export)

Artifact Types

TypeOutput FormatDescription
slide_deckPDF/PPTXPresentation slides summarizing notebook sources
audioM4AAudio overview in conversation format (deep dive, brief, critique, debate)
videoMP4Animated video overview with visual styles
mind_mapPNGVisual mind map of key concepts and relationships
flashcardsHTML/JSONStudy flashcards generated from source material
quizHTML/JSONMultiple-choice quiz with answer key
infographicPNGVisual summary infographic in various orientations
reportMarkdownWritten report (briefing doc, study guide, blog post)
data_tableCSV/SheetsStructured data extracted from sources

Authentication

First run opens Chrome to authenticate with Google. Cookies are cached for subsequent runs. Uses CDP browser automation for the login flow, then direct batchexecute RPC calls for all operations.

# Force cookie refresh
npx -y bun scripts/main.ts login --force

Environment variables

VariableDescription
NOTEBOOKLM_DATA_DIRData directory override
NOTEBOOKLM_COOKIE_PATHCookie file path
NOTEBOOKLM_CHROME_PROFILE_DIRChrome profile directory
NOTEBOOKLM_OUTPUT_DIRDefault output directory

Rate Limits

NotebookLM free tier limits:

ResourceLimit
Audio/video overviews3 per day
Reports/flashcards/quizzes10 per day
Daily chats50
Total notebooks100
Sources per notebook50

Examples

Generate a slide deck from a specific notebook

npx -y bun scripts/main.ts generate slide_deck \
  --notebook https://notebooklm.google.com/notebook/abc123 \
  --output presentation.pdf

Create an audio deep dive with custom instructions

npx -y bun scripts/main.ts generate audio \
  --format deep_dive \
  --length long \
  --instructions "Focus on the methodology section and compare approaches"

Generate a whiteboard-style video overview

npx -y bun scripts/main.ts generate video \
  --style whiteboard \
  --length medium \
  --output explainer.mp4

Create a quiz and get JSON output for integration

npx -y bun scripts/main.ts generate quiz \
  --difficulty hard \
  --quantity more \
  --json > quiz_data.json

Generate a portrait infographic

npx -y bun scripts/main.ts generate infographic \
  --orientation portrait \
  --instructions "Highlight the three main findings" \
  --output summary.png

Export structured data as CSV

npx -y bun scripts/main.ts generate data_table \
  --format csv \
  --output extracted_data.csv