---
name: notebooklm-cli
description: Comprehensive CLI for Google NotebookLM including notebooks, sources, audio podcasts, reports, quizzes, flashcards, mind maps, slides, infographics, videos, and data tables. Use when working with NotebookLM programmatically: managing notebooks/sources, generating audio overviews (podcasts), creating study materials (quizzes, flashcards), producing presentations (slides, infographics), or querying sources via chat.
---

# NotebookLM CLI

## Overview

This skill provides complete access to Google NotebookLM through a command-line interface. Manage notebooks, sources, and generate various content formats including audio podcasts, reports, quizzes, flashcards, mind maps, slides, infographics, videos, and data tables.

## When to Use This Skill

Use this skill when:
- Managing NotebookLM notebooks and sources programmatically
- Generating audio overviews (podcasts) from notebook sources
- Creating study materials: quizzes, flashcards, reports
- Producing visual content: slides, infographics, mind maps, videos
- Querying sources via chat or one-shot questions
- Researching and importing new sources automatically

## Quick Start

### Authentication

```bash
nlm login
```

Launches Chrome, navigates to NotebookLM, and extracts session cookies. Requires Google Chrome installed.

### List Notebooks

```bash
nlm notebook list
```

### Create Notebook and Add Sources

```bash
nlm notebook create "My Research"
nlm source add <notebook-id> --url "https://example.com/article"
nlm source add <notebook-id> --text "Your content here" --title "My Notes"
```

### Generate Content (All Types)

All generation commands require `--confirm` or `-y`:

```bash
nlm audio create <id> --confirm          # Podcast
nlm report create <id> --confirm         # Briefing doc or study guide
nlm quiz create <id> --confirm           # Quiz questions
nlm flashcards create <id> --confirm     # Flashcards
nlm mindmap create <id> --confirm        # Mind map
nlm slides create <id> --confirm         # Slide deck
nlm infographic create <id> --confirm    # Infographic
nlm video create <id> --confirm          # Video overview
nlm data-table create <id> "description" --confirm  # Data table
```

## Authentication

| Command | Description |
|---------|-------------|
| `nlm login` | Authenticate with NotebookLM (opens Chrome) |
| `nlm login --check` | Verify current credentials |
| `nlm auth status` | Check session validity |
| `nlm auth list` | List all profiles |
| `nlm auth delete <profile> --confirm` | Delete a profile |
| `nlm login --profile <name>` | Login to specific profile |

Sessions last ~20 minutes. Re-authenticate with `nlm login` if commands fail.

## Notebook Management

| Command | Description |
|---------|-------------|
| `nlm notebook list` | List all notebooks |
| `nlm notebook create "Title"` | Create a new notebook |
| `nlm notebook get <id>` | Get notebook details |
| `nlm notebook describe <id>` | AI-generated summary |
| `nlm notebook query <id> "question"` | Chat with sources |
| `nlm notebook delete <id> --confirm` | Delete a notebook |

## Source Management

| Command | Description |
|---------|-------------|
| `nlm source list <notebook-id>` | List sources in notebook |
| `nlm source list <notebook-id> --drive` | Show Drive sources with freshness |
| `nlm source add <id> --url "..."` | Add URL or YouTube source |
| `nlm source add <id> --text "..." --title "..."` | Add pasted text |
| `nlm source add <id> --drive <doc-id>` | Add Google Drive document |
| `nlm source describe <source-id>` | AI summary of source |
| `nlm source content <source-id>` | Get raw text content |
| `nlm source stale <notebook-id>` | List outdated Drive sources |
| `nlm source sync <notebook-id> --confirm` | Sync Drive sources |

## Content Generation

All generation commands require `--confirm` or `-y`:

### Media Types

| Command | Output |
|---------|--------|
| `nlm audio create <id> --confirm` | Audio podcast overview |
| `nlm report create <id> --confirm` | Briefing doc or study guide |
| `nlm quiz create <id> --confirm` | Quiz questions |
| `nlm flashcards create <id> --confirm` | Flashcards |
| `nlm mindmap create <id> --confirm` | Mind map |
| `nlm slides create <id> --confirm` | Slide deck |
| `nlm infographic create <id> --confirm` | Infographic |
| `nlm video create <id> --confirm` | Video overview |
| `nlm data-table create <id> "description" --confirm` | Data table extraction |

## Studio (Artifact Management)

| Command | Description |
|---------|-------------|
| `nlm studio status <notebook-id>` | List all generated artifacts |
| `nlm studio delete <notebook-id> <artifact-id> --confirm` | Delete an artifact |

## Chat

| Command | Description |
|---------|-------------|
| `nlm chat start <notebook-id>` | Start interactive REPL session |
| `nlm chat configure <notebook-id>` | Configure chat goal and response style |
| `nlm notebook query <id> "question"` | One-shot question (no session) |

Chat REPL commands: `/sources`, `/clear`, `/help`, `/exit`

## Research

| Command | Description |
|---------|-------------|
| `nlm research start "query" --notebook-id <id>` | Web search (~30s) |
| `nlm research start "query" --notebook-id <id> --mode deep` | Deep research (~5min) |
| `nlm research start "query" --notebook-id <id> --source drive` | Search Google Drive |
| `nlm research status <notebook-id>` | Check research progress |
| `nlm research import <notebook-id> <task-id>` | Import discovered sources |

## Aliases (UUID Shortcuts)

```bash
nlm alias set myproject <uuid>           # Create alias
nlm notebook get myproject               # Use alias
nlm alias list                           # List all aliases
nlm alias get myproject                  # Resolve to UUID
nlm alias delete myproject               # Remove alias
```

## Output Formats

Most list commands support multiple formats:

```bash
nlm notebook list                # Rich table (default)
nlm notebook list --json         # JSON output
nlm notebook list --quiet        # IDs only (for scripting)
nlm notebook list --title        # "ID: Title" format
nlm notebook list --full         # All columns
```

## Profiles (Multiple Accounts)

```bash
nlm login --profile work         # Login to profile
nlm notebook list --profile work # Use profile
nlm auth list                    # List all profiles
nlm auth delete work --confirm   # Delete profile
```

## Configuration

```bash
nlm config show                  # Show current configuration
nlm config get <key>             # Get specific setting
nlm config set <key> <value>     # Update setting
```

## AI Documentation

For AI assistants, generate comprehensive documentation:

```bash
nlm --ai
```

Outputs 400+ lines covering all commands, authentication flow, error handling, task sequences, and automation tips.

## References

- [Command Reference](references/commands.md) - Complete command signatures
- [Troubleshooting](references/troubleshooting.md) - Error diagnosis and solutions
- [Workflows](references/workflows.md) - End-to-end task sequences

---
Source attribution: kbarbel640-del
Original project: https://github.com/kbarbel640-del/skills/blob/e7e336ac628c3e3bd771aff1aaa469c93778f94a/skills/oconnell-carl/notebooklm-cli/SKILL.md
License: MIT
License information: https://opensource.org/license/mit
Original upstream instructions; downloaded from Mega AI Hub.

## Upstream license notice

MIT License

Copyright (c) 2026 clawdbot

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



# Mega AI Hub resource metadata

Creator / publisher: kbarbel640-del
Original project: https://github.com/kbarbel640-del/skills/blob/e7e336ac628c3e3bd771aff1aaa469c93778f94a/skills/oconnell-carl/notebooklm-cli/SKILL.md
Attribution basis: Source repository record

Fields of work: Design, Education & Research, Marketing, Product Management
Roles: Content Marketer, Marketing Analyst, Product Manager, Researcher, UX Writer
Specialties: API
Tools: Google Notebooklm
Country applicability: Country not specified
Classification basis: Source catalog labels
Instruction SHA-256: 7eb5a3c86043a4393e80cc892b939a867232d855acec06959954f6e491f41a5b
