AI Skill MartBrowse skillsPromptsProgramsLearnWhat is a Skill?
← Back to list

NotebookLM Automation (notebooklm-py)

Install, authenticate and operate Gemini Notebook (NotebookLM) end-to-end through the notebooklm-py CLI or its typed async Python API, with ID-pinned, authorization-aware workflows.

AutomationAdvanced★ 20,175⑂ 2,683AI score 9/10Last updated: Nov 8, 2026

What it does

  • Walks through installing notebooklm and authenticating: interactive login, durable master-token profiles, browser-cookie extraction, and CI secret transport.
  • Runs notebook creation, source add + readiness waits, grounded chat, and deep research with explicit UUIDs instead of "latest selected" state.
  • Enforces the canonical artifact pipeline: generate (audio, video, slide-deck, infographic, report, mind-map, data-table, quiz, flashcards) → artifact wait → download the exact artifact ID.
  • Defines authorization boundaries so deletions, share removal, account-global language changes, file writes, and source imports require explicit confirmation.
  • Provides read-only failure diagnosis plus exit-code semantics and JSON envelope shapes.

Who it's for

  • Researchers and content creators who want NotebookLM driven by agents or scripts instead of clicks.
  • Developers building headless/CI pipelines from sources to summaries, podcasts, or reports.
  • Automation engineers running concurrent agents that need isolated profiles and credentials.

Examples

  1. "Build a notebook from these 3 URLs and give me a podcast" → create → source add → source wait → generate audio → artifact wait → download audio, every step ID-pinned.
  2. "Run deep research on topic X" → source add-research --mode deep --no-wait, keep the run-id, then research wait --import-all once authorized.
  3. "Yesterday's generation failed, diagnose it" → read-only auth check --test --passive --json and artifact list, retry only with user approval.

· · · Install guide · · ·

Try it now, no install

Paste this into Claude to use the skill without installing anything.

Read the instructions in this file and follow them to help me:
https://raw.githubusercontent.com/teng-lin/notebooklm-py/HEAD/SKILL.md

What I want: (describe your task here)

If Claude can't open the link, open it yourself and paste the contents instead.

↓ If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
↓ Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on AI Skill Mart.
Copy the SKILL.m folder from the GitHub repo teng-lin/notebooklm-py into my ~/.claude/skills/notebooklm/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

pip install "notebooklm-py[browser]" && notebooklm skill install

⚠ This is a third-party skill. Check the source repository before installing.

  1. Confirm Python 3.10+ with python3 --version.
  2. Install the package: pip install "notebooklm-py[browser]" (add [headless] for servers, [cookies] for browser-cookie auth). CLI-only users can run uv tool install "notebooklm-py[browser]" or the pipx equivalent.
  3. Install the skill: notebooklm skill install, or clone the repo and copy SKILL.md to ~/.claude/skills/notebooklm/SKILL.md.
  4. Authenticate: run notebooklm login on a machine with a display, or notebooklm login --master-token --account <email> for unattended use.
  5. Verify with notebooklm auth check --test --json and require status == "ok" and checks.token_fetch == true.
  6. Restart Claude Code and ask something like "use NotebookLM to create a notebook from these links".
  7. Security note: treat master_token.json and storage_state.json as bearer credentials — chmod 0600, use a dedicated account, never print or commit them.