Agent skill

NotebookLM CLI Guide

by jacob-bd in jacob-bd/notebooklm-cli

Guides use of the nlm command-line tool to automate Google NotebookLM: notebooks, sources, research, one-shot questions and generated podcasts, reports, quizzes and slides.

MITAuto-check: warningsKnowledge Management

Install NotebookLM CLI Guide

The automated check flagged lines worth reading first. See the safety section below.

skills CLI
$ npx skills add jacob-bd/notebooklm-cli --skill nlm-cli-skill -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jacob-bd/notebooklm-cli nlm-cli-skill --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jacob-bd/notebooklm-cli.git skills-src && mkdir -p .claude/skills && cp -r skills-src/nlm-cli-skill .claude/skills/nlm-cli-skill && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
nlm-cli-skill
GitHub stars
255
Token cost
~3.4k tokens
SKILL.md length
557 words
Files
4 (incl. references)
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Guides use of the nlm command-line tool to automate Google NotebookLM: notebooks, sources, research, one-shot questions and generated podcasts, reports, quizzes and slides.

  • Works in 9 steps: Authentication → Notebook Management → Source Management → …
  • Creating a notebook and loading sources from the terminal
  • SKILL.md covers Quick Reference, Critical Rules (Read First!), Workflow Decision Tree and Command Categories, plus 5 more sections
  • Reaches youtube.com and example1.com

What it does

The skill opens with ten rules. Log in with `nlm login` first, which launches Chrome and extracts cookies, supports named profiles for several accounts, and lasts about 20 minutes before a new login is needed. Generation and delete commands require `--confirm` or `-y`, research requires the `--notebook-id` flag, and IDs printed by create and start commands should be captured and can be shortened with aliases. The agent must ask you before any delete because deletions cannot be undone, must not start the interactive chat REPL and uses `nlm notebook query` for one-shot questions, and picks default, `--quiet` or `--json` output depending on need.

Command groups cover authentication, notebook management, source management with URLs, YouTube, text and Google Drive, content generation such as podcasts, reports, quizzes, flashcards, mind maps, slides, infographics, videos and data tables, and research. A decision tree picks the command sequence, and three reference files hold the command reference, troubleshooting and workflows.

When your agent uses it

  • Creating a notebook and loading sources from the terminal
  • Generating an audio overview, quiz or slide deck from a notebook's sources
  • Asking a notebook a one-off question and scripting the answer
  • Fixing authentication errors after a session expires

Example prompts

  • “Create a NotebookLM notebook called Q3 Research and add these three URLs as sources.”
  • “Generate an audio overview from the Q3 Research notebook.”
  • “Ask my thesis notebook what the main limitations of the study are, using one-shot query.”

Requirements

  • The `nlm` command-line tool
  • A Google account signed in through Chrome for `nlm login`

Workflow steps

9 steps, taken from the step headings in SKILL.md.

  1. Authentication
  2. Notebook Management
  3. Source Management
  4. Research (Source Discovery)
  5. Content Generation (Studio)
  6. Studio (Artifact Management)
  7. Interactive Chat (Human Users Only)
  8. Aliases (UUID Shortcuts)
  9. Configuration

What it can do on your machine

Read from SKILL.md and the folder at commit 8852560. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • youtube.com
    • example1.com
    • example2.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

NotebookLM CLI Guide loads about 3.4k tokens when it runs, and up to ~11k if it reads all its reference files. Until then it costs about 154 tokens; SKILL.md has 557 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~154
When it runs · the whole SKILL.md, loaded when a task matches
~3.4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~11k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: warnings

The automated check found patterns that need a careful read before installing.

  • WarningMentions a credentials file (SSH keys, cloud or package-manager tokens)SKILL.md:77
    nlm login                    # Launch Chrome, extract cookies (primary method)

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jacob-bd/notebooklm-cli at commit 8852560, republished under its MIT licence (© jacob-bd). 557 words, ~3,359 tokens.

Download SKILL.mdSave it as .claude/skills/nlm-cli-skill/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
nlm-cli-skill
description
Expert guide for the NotebookLM CLI (`nlm`) - a command-line interface for Google NotebookLM. Use this skill when users want to interact with NotebookLM programmatically, including: creating/managing notebooks, adding sources (URLs, YouTube, text, Google Drive), generating content (podcasts, reports, quizzes, flashcards, mind maps, slides, infographics, videos, data tables), conducting research, chatting with sources, or automating NotebookLM workflows. Triggers on mentions of "nlm", "notebooklm", "notebook lm", "podcast generation", "audio overview", or any NotebookLM-related automation task.

NotebookLM CLI Expert

This skill provides comprehensive guidance for using the nlm CLI to automate Google NotebookLM workflows.

Quick Reference

bash
nlm --help              # List all commands
nlm <command> --help    # Help for specific command
nlm --ai                # Full AI-optimized documentation
nlm --version           # Check installed version

Critical Rules (Read First!)

  1. Always authenticate first: Run nlm login before any operations
  2. Sessions expire in ~20 minutes: Re-run nlm login if commands start failing
  3. --confirm is REQUIRED: All generation and delete commands need --confirm or -y
  4. Research requires --notebook-id: The flag is mandatory, not positional
  5. Capture IDs from output: Create/start commands return IDs needed for subsequent operations
  6. Use aliases: Simplify long UUIDs with nlm alias set <name> <uuid>
  7. ⚠️ ALWAYS ASK USER BEFORE DELETE: Before executing ANY delete command, ask the user for explicit confirmation. Deletions are irreversible. Show what will be deleted and warn about permanent data loss.
  8. Check aliases before creating: Run nlm alias list before creating a new alias to avoid conflicts with existing names.
  9. DO NOT launch REPL: Never use nlm chat start - it opens an interactive REPL that AI tools cannot control. Use nlm notebook query for one-shot Q&A instead.
  10. Choose output format wisely: Default output (no flags) is compact and token-efficient—use it for status checks. Use --quiet to capture IDs for piping. Only use --json when you need to parse specific fields programmatically.

Workflow Decision Tree

Use this to determine the right sequence of commands:

User wants to...
│
├─► Work with NotebookLM for the first time
│   └─► nlm login → nlm notebook create "Title"
│
├─► Add content to a notebook
│   ├─► From a URL/webpage → nlm source add <nb-id> --url "https://..."
│   ├─► From YouTube → nlm source add <nb-id> --url "https://youtube.com/..."
│   ├─► From pasted text → nlm source add <nb-id> --text "content" --title "Title"
│   ├─► From Google Drive → nlm source add <nb-id> --drive <doc-id> --type doc
│   └─► Discover new sources → nlm research start "query" --notebook-id <nb-id>
│
├─► Generate content from sources
│   ├─► Podcast/Audio → nlm audio create <nb-id> --confirm
│   ├─► Written summary → nlm report create <nb-id> --confirm
│   ├─► Study materials → nlm quiz/flashcards create <nb-id> --confirm
│   ├─► Visual content → nlm mindmap/slides/infographic create <nb-id> --confirm
│   ├─► Video → nlm video create <nb-id> --confirm
│   └─► Extract data → nlm data-table create <nb-id> "description" --confirm
│
├─► Ask questions about sources
│   └─► nlm notebook query <nb-id> "question"
│       (Use --conversation-id for follow-ups)
│       ⚠️ Do NOT use `nlm chat start` - it's a REPL for humans only
│
├─► Check generation status
│   └─► nlm studio status <nb-id>
│
└─► Manage/cleanup
    ├─► List notebooks → nlm notebook list
    ├─► List sources → nlm source list <nb-id>
    ├─► Delete source → nlm source delete <source-id> --confirm
    └─► Delete notebook → nlm notebook delete <nb-id> --confirm

Command Categories

1. Authentication
bash
nlm login                    # Launch Chrome, extract cookies (primary method)
nlm login --check            # Validate current session
nlm login --profile work     # Use named profile for multiple accounts
nlm auth status              # Check if authenticated
nlm auth list                # List all profiles

Session lifetime: ~20 minutes. Re-authenticate when commands fail with auth errors.

2. Notebook Management
bash
nlm notebook list                      # List all notebooks
nlm notebook list --json               # JSON output for parsing
nlm notebook list --quiet              # IDs only (for scripting)
nlm notebook create "Title"            # Create notebook, returns ID
nlm notebook get <id>                  # Get notebook details
nlm notebook describe <id>             # AI-generated summary + suggested topics
nlm notebook query <id> "question"     # One-shot Q&A with sources
nlm notebook rename <id> "New Title"   # Rename notebook
nlm notebook delete <id> --confirm     # PERMANENT deletion
3. Source Management
bash
# Adding sources
nlm source add <nb-id> --url "https://..."           # Web page
nlm source add <nb-id> --url "https://youtube.com/..." # YouTube video
nlm source add <nb-id> --text "content" --title "X"  # Pasted text
nlm source add <nb-id> --drive <doc-id>              # Drive doc (auto-detect type)
nlm source add <nb-id> --drive <doc-id> --type slides # Explicit type

# Listing and viewing
nlm source list <nb-id>                # Table of sources
nlm source list <nb-id> --drive        # Show Drive sources with freshness
nlm source list <nb-id> --drive -S     # Skip freshness checks (faster)
nlm source get <source-id>             # Source metadata
nlm source describe <source-id>        # AI summary + keywords
nlm source content <source-id>         # Raw text content
nlm source content <source-id> -o file.txt  # Export to file

# Drive sync (for stale sources)
nlm source stale <nb-id>               # List outdated Drive sources
nlm source sync <nb-id> --confirm      # Sync all stale sources
nlm source sync <nb-id> --source-ids <ids> --confirm  # Sync specific

# Deletion
nlm source delete <source-id> --confirm

Drive types: doc, slides, sheets, pdf

4. Research (Source Discovery)

Research finds NEW sources from the web or Google Drive:

bash
# Start research (--notebook-id is REQUIRED)
nlm research start "query" --notebook-id <id>              # Fast web (~30s)
nlm research start "query" --notebook-id <id> --mode deep  # Deep web (~5min)
nlm research start "query" --notebook-id <id> --source drive  # Drive search

# Check progress
nlm research status <nb-id>                   # Poll until done (5min max)
nlm research status <nb-id> --max-wait 0      # Single check, no waiting
nlm research status <nb-id> --task-id <tid>   # Check specific task
nlm research status <nb-id> --full            # Full details

# Import discovered sources
nlm research import <nb-id> <task-id>            # Import all
nlm research import <nb-id> <task-id> --indices 0,2,5  # Import specific

Modes: fast (~30s, ~10 sources) | deep (~5min, ~40+ sources, web only)

5. Content Generation (Studio)

All generation commands share these flags:

  • --confirm or -y: REQUIRED to execute
  • --source-ids <id1,id2>: Limit to specific sources
  • --language <code>: BCP-47 code (en, es, fr, de, ja)
bash
# Audio (Podcast)
nlm audio create <id> --confirm
nlm audio create <id> --format deep_dive --length default --confirm
nlm audio create <id> --format brief --focus "key topic" --confirm
# Formats: deep_dive, brief, critique, debate
# Lengths: short, default, long

# Report
nlm report create <id> --confirm
nlm report create <id> --format "Study Guide" --confirm
nlm report create <id> --format "Create Your Own" --prompt "Custom..." --confirm
# Formats: "Briefing Doc", "Study Guide", "Blog Post", "Create Your Own"

# Quiz
nlm quiz create <id> --confirm
nlm quiz create <id> --count 5 --difficulty 3 --confirm
# Count: number of questions (default: 2)
# Difficulty: 1-5 (1=easy, 5=hard)

# Flashcards
nlm flashcards create <id> --confirm
nlm flashcards create <id> --difficulty hard --confirm
# Difficulty: easy, medium, hard

# Mind Map
nlm mindmap create <id> --confirm
nlm mindmap create <id> --title "Topic Overview" --confirm
nlm mindmap list <id>  # List existing mind maps

# Slides
nlm slides create <id> --confirm
nlm slides create <id> --format presenter --length short --confirm
# Formats: detailed, presenter | Lengths: short, default

# Infographic
nlm infographic create <id> --confirm
nlm infographic create <id> --orientation portrait --detail detailed --confirm
# Orientations: landscape, portrait, square
# Detail: concise, standard, detailed

# Video
nlm video create <id> --confirm
nlm video create <id> --format brief --style whiteboard --confirm
# Formats: explainer, brief
# Styles: auto_select, classic, whiteboard, kawaii, anime, watercolor, retro_print, heritage, paper_craft

# Data Table
nlm data-table create <id> "Extract all dates and events" --confirm
# DESCRIPTION is required as second argument
6. Studio (Artifact Management)

Check and manage generated content:

bash
nlm studio status <nb-id>                          # List all artifacts
nlm studio status <nb-id> --json                   # JSON output
nlm studio delete <nb-id> <artifact-id> --confirm  # Delete artifact

Status values: completed (✓), in_progress (●), failed (✗)

Show full SKILL.md (239 more words)Show less
7. Interactive Chat (Human Users Only)

⚠️ AI TOOLS: DO NOT USE nlm chat start - It launches an interactive REPL that cannot be controlled programmatically. Use nlm notebook query for one-shot Q&A instead.

For human users at a terminal:

bash
nlm chat start <nb-id>  # Launch interactive REPL

REPL Commands:

  • /sources - List available sources
  • /clear - Reset conversation context
  • /help - Show commands
  • /exit - Exit REPL

Configure chat behavior (works for both REPL and query):

bash
nlm chat configure <id> --goal default
nlm chat configure <id> --goal learning_guide
nlm chat configure <id> --goal custom --prompt "Act as a tutor..."
nlm chat configure <id> --response-length longer  # longer, default, shorter
8. Aliases (UUID Shortcuts)

Simplify long UUIDs:

bash
nlm alias set myproject abc123-def456...  # Create alias (auto-detects type)
nlm alias get myproject                    # Resolve to UUID
nlm alias list                             # List all aliases
nlm alias delete myproject                 # Remove alias

# Use aliases anywhere
nlm notebook get myproject
nlm source list myproject
nlm audio create myproject --confirm
9. Configuration
bash
nlm config show              # Show current config
nlm config get <key>         # Get specific setting
nlm config set <key> <value> # Update setting

Output Formats

Most list commands support multiple formats:

FlagDescription
(none)Rich table (human-readable)
--jsonJSON output (for parsing)
--quietIDs only (for piping)
--title"ID: Title" format
--url"ID: URL" format (sources only)
--fullAll columns/details

Common Patterns

Pattern 1: Research → Podcast Pipeline
bash
nlm notebook create "AI Research 2026"   # Capture ID
nlm alias set ai <notebook-id>
nlm research start "agentic AI trends" --notebook-id ai --mode deep
nlm research status ai --max-wait 300    # Wait up to 5 min
nlm research import ai <task-id>         # Import all sources
nlm audio create ai --format deep_dive --confirm
nlm studio status ai                     # Check generation progress
Pattern 2: Quick Content Ingestion
bash
nlm source add <id> --url "https://example1.com"
nlm source add <id> --url "https://example2.com"
nlm source add <id> --text "My notes..." --title "Notes"
nlm source list <id>
Pattern 3: Study Materials Generation
bash
nlm report create <id> --format "Study Guide" --confirm
nlm quiz create <id> --count 10 --difficulty 3 --confirm
nlm flashcards create <id> --difficulty medium --confirm
Pattern 4: Drive Document Workflow
bash
nlm source add <id> --drive 1KQH3eW0hMBp7WK... --type slides
# ... time passes, document is edited ...
nlm source stale <id>                    # Check freshness
nlm source sync <id> --confirm           # Sync if stale

Error Recovery

ErrorCauseSolution
"Cookies have expired"Session timeoutnlm login
"authentication may have expired"Session timeoutnlm login
"Notebook not found"Invalid IDnlm notebook list
"Source not found"Invalid IDnlm source list <nb-id>
"Rate limit exceeded"Too many callsWait 30s, retry
"Research already in progress"Pending researchUse --force or import first
Chrome doesn't launchPort conflictClose Chrome, retry

Rate Limiting

Wait between operations to avoid rate limits:

  • Source operations: 2 seconds
  • Content generation: 5 seconds
  • Research operations: 2 seconds
  • Query operations: 2 seconds

Advanced Reference

For detailed information, see:

© jacob-bd, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in nlm-cli-skill of jacob-bd/notebooklm-cli.

  • SKILL.md
  • references/command_reference.md
  • references/troubleshooting.md
  • references/workflows.md

Open the folder on GitHubat commit 8852560

Compare with similar skills

NotebookLM CLI Guide next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

NotebookLM CLI Guide compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
NotebookLM CLI Guide this skilljacob-bd/notebooklm-cli255—~3.4kAutomated safety check: WarnMIT
Nlm Skilliusztinpaul/ai-research-os-workshop1791 repos~6.9kAutomated safety check: PassMIT
Multi-Source to NotebookLM Processorjoeseesun/qiaomu-anything-to-notebooklm6.2k—~3.6kAutomated safety check: PassMIT
NotebooklmMathews-Tom/armory327—~4kAutomated safety check: PassMIT
Notebooklmalirezarezvani/claude-skills28k—~4kAutomated safety check: PassMIT
NotebookLM Research Workflowclaude-world/notebooklm-skill463—~1.8kAutomated safety check: PassMIT

Similar skills

  • Nlm Skill

    iusztinpaul/ai-research-os-workshop

    Expert guide for the NotebookLM CLI (nlm) and MCP server - interfaces for Google NotebookLM.

    179 GitHub starsUsed in 1 repo~6.9k tokens
    Knowledge ManagementAuto-check passed
  • Multi-Source to NotebookLM Processor

    joeseesun/qiaomu-anything-to-notebooklm

    Collects content from WeChat articles, web pages, YouTube, podcasts, documents and more, uploads it to NotebookLM and generates podcasts, slides or mind maps.

    6.2k GitHub stars~3.6k tokensUpdated 2 days ago
    Knowledge ManagementAuto-check passed
  • Notebooklm

    Mathews-Tom/armory

    Full NotebookLM API via notebooklm-py CLI: create notebooks, add sources, generate podcasts, videos, infographics, slides, quizzes, flashcards, mind maps.

    327 GitHub stars~4k tokensUpdated yesterday
    Knowledge ManagementAuto-check passed
  • Notebooklm

    alirezarezvani/claude-skills

    Browser automation skill for controlling Google's NotebookLM.

    28k GitHub stars~4k tokensUpdated 1 mo ago
    Knowledge ManagementAuto-check passed
  • NotebookLM Research Workflow

    claude-world/notebooklm-skill

    Creates NotebookLM notebooks from URLs, text and files, asks cited questions, runs web research and generates audio, slides, quizzes and other artifacts.

    463 GitHub stars~1.8k tokensUpdated 2 mo ago
    Knowledge ManagementAuto-check passed
  • Survey

    SNL-UCSB/literature-survey-skill

    Literature survey assistant with four modes: /survey intent (capture student goals, expertise, and success criteria), /survey triage (landscape mapping via NotebookLM), /survey deepen (structured…

    105 GitHub stars~5k tokensUpdated 6 mo ago
    Knowledge ManagementAuto-check passed

Questions about NotebookLM CLI Guide

What does NotebookLM CLI Guide do?

Guides use of the nlm command-line tool to automate Google NotebookLM: notebooks, sources, research, one-shot questions and generated podcasts, reports, quizzes and slides. The skill opens with ten rules. Log in with `nlm login` first, which launches Chrome and extracts cookies, supports named profiles for several accounts, and lasts about 20 minutes before a new login is needed.

When should I use NotebookLM CLI Guide?

NotebookLM CLI Guide fits situations like: creating a notebook and loading sources from the terminal; generating an audio overview, quiz or slide deck from a notebook's sources; asking a notebook a one-off question and scripting the answer; fixing authentication errors after a session expires.

How do I install NotebookLM CLI Guide in Claude Code?

Run `npx skills add jacob-bd/notebooklm-cli --skill nlm-cli-skill -a claude-code`. Or copy the skill folder (nlm-cli-skill in jacob-bd/notebooklm-cli) into .claude/skills/nlm-cli-skill in your project. Claude Code loads it when a task matches its description.

How do I install NotebookLM CLI Guide in Codex?

Run `npx skills add jacob-bd/notebooklm-cli --skill nlm-cli-skill -a codex`. Or copy the skill folder (nlm-cli-skill in jacob-bd/notebooklm-cli) into .agents/skills/nlm-cli-skill in your project. Codex loads it when a task matches its description.

Can I use NotebookLM CLI Guide in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jacob-bd/notebooklm-cli --skill nlm-cli-skill -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/nlm-cli-skill, .gemini/skills/nlm-cli-skill, .github/skills/nlm-cli-skill and .opencode/skills/nlm-cli-skill in your project.

What does NotebookLM CLI Guide need to run?

SKILL.md names no scripts, command-line tools or credentials: NotebookLM CLI Guide is instructions for the agent only. Our summary lists: The `nlm` command-line tool; A Google account signed in through Chrome for `nlm login`.

Does NotebookLM CLI Guide access the network?

SKILL.md names 3 domains. In commands or code: youtube.com, example1.com and example2.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is NotebookLM CLI Guide safe to install?

Our automated static check of SKILL.md flagged 1 warning(s): mentions a credentials file (ssh keys, cloud or package-manager tokens). Read the flagged lines before installing; the check is not a guarantee either way.

What licence does NotebookLM CLI Guide use?

NotebookLM CLI Guide is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does NotebookLM CLI Guide use?

About 3.4k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 7.7k tokens, read only when the agent opens those files.

What are the alternatives to NotebookLM CLI Guide?

Skills that share tags, products or a category with NotebookLM CLI Guide: Nlm Skill (iusztinpaul/ai-research-os-workshop, 179 stars), Multi-Source to NotebookLM Processor (joeseesun/qiaomu-anything-to-notebooklm, 6.2k stars), Notebooklm (Mathews-Tom/armory, 327 stars) and Notebooklm (alirezarezvani/claude-skills, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains NotebookLM CLI Guide?

jacob-bd (a GitHub user) maintains it in jacob-bd/notebooklm-cli, which has 255 GitHub stars. The repository was last updated on June 8, 2026.

Source: jacob-bd/notebooklm-cli on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.