Tools
Notebooklm Ai
AI Agent plugin for Google NotebookLM (Claude, OpenClaw, etc) โ generate slide decks, audio overviews, videos, mind maps, flashcards, quizzes, infographics, reports, and data tables from your notebooks
README
# NotebookLM AI Plugin
[](LICENSE)
[](https://code.claude.com/docs/en/plugins)
[](#supported-artifacts)
[](https://bun.sh)
<img src="https://github.com/proyecto26/sherlock-ai-plugin/blob/main/images/claude-mascot-jumping-animated.svg" width="150">
**Bring the full Google NotebookLM experience to Claude Code.** Chat with your notebook AI, generate 9 types of artifacts, manage sources (URLs, YouTube, files), run fast/deep web research, and manage notes โ just ask Claude.
---
## Quick Start
### Installation
#### Option 1: CLI Install (Recommended)
Use [npx skills](https://github.com/vercel-labs/skills) to install skills directly:
```bash
# Install the skill
npx skills add proyecto26/notebooklm-ai-plugin
# List available skills
npx skills add proyecto26/notebooklm-ai-plugin --list
```
This automatically installs to your `.claude/skills/` directory.
#### Option 2: Claude Code Plugin
Install via Claude Code's built-in plugin system:
```bash
# Add the marketplace
/plugin marketplace add proyecto26/notebooklm-ai-plugin
# Install the plugin
/plugin install notebooklm-ai-plugin
```
#### Option 3: Clone and Copy
Clone the repo and copy the skills folder:
```bash
git clone https://github.com/proyecto26/notebooklm-ai-plugin.git
cp -r notebooklm-ai-plugin/skills/* .claude/skills/
```
#### Option 4: Git Submodule
Add as a submodule for easy updates:
```bash
git submodule add https://github.com/proyecto26/notebooklm-ai-plugin.git .claude/notebooklm-ai-plugin
```
Then reference skills from `.claude/notebooklm-ai-plugin/skills/`.
#### Option 5: Fork and Customize
1. Fork this repository
2. Customize the skill for your specific needs
3. Clone your fork into your projects
### Authentication
The first time you use the skill, it opens Chrome for Google login. Cookies are cached for subsequent runs. Just tell Claude:
> *"Log me into NotebookLM"*
### Generate Your First Artifact
Once authenticated, just describe what you want:
> *"Add this notebook https://notebooklm.google.com/notebook/YOUR_ID and generate a study guide from it"*
That's it โ the skill handles everything: authentication, notebook management, artifact creation, polling, and download.
---
## Features
### Chat with Notebook AI
Ask questions and get source-grounded answers with citations โ the same AI chat experience from NotebookLM's web UI, now in your terminal.
### 9 Artifact Types
| Type | Output | Description |
|:-----|:-------|:------------|
| **Slide Deck** | PDF / PPTX | Presentation slides summarizing your notebook sources |
| **Audio Overview** | M4A | Podcast-style conversation (deep dive, brief, critique, debate) |
| **Video Overview** | MP4 | Animated explainer (classic, whiteboard, kawaii, anime, watercolor) |
| **Mind Map** | HTML | Interactive concept map of key topics and relationships |
| **Flashcards** | HTML / JSON | Study cards generated from source material |
| **Quiz** | HTML / JSON | Multiple-choice quiz with answer key and explanations |
| **Infographic** | PNG | Visual summary in landscape, portrait, or square orientation |
| **Report** | Markdown | Written report (briefing doc, study guide, blog post) |
| **Data Table** | CSV / Sheets | Structured data extracted from your sources |
### Source Management
Add and manage notebook sources directly from Claude Code โ no need to switch to the browser.
- **URLs / Websites** โ Add any web page as a source
- **YouTube** โ Add video transcripts as sources
- **File Upload** โ PDF, TXT, MD, DOCX, CSV, EPUB, images, audio, video
- **Pasted Text** โ Add text content with a custom title
- **List / Delete** โ View and manage existing sources
### Fast & Deep Research
Run web research that feeds directly into your notebook:
- **Fast Research** โ Quick web search, finds relevant sources in seconds
- **Deep Research** โ Comprehensive analysis with a full markdown report
- **Auto-Import** โ Automatically add discovered sources to your notebook
### Notes Management
Create, update, and delete notes within your notebooks programmatically.
---
## Usage Examples
Just describe what you need to Claude โ the skill triggers automatically:
**"What are the main findings in my NotebookLM notebook?"**
> Chats with the notebook AI and returns source-grounded answers with citations.
**"Add this YouTube video to my notebook: https://youtube.com/watch?v=..."**
> Adds the video transcript as a source to your active notebook.
**"Upload my research paper paper.pdf to the notebook and generate a study guide"**
> Uploads the file, then generates a markdown report in study guide format.
**"Run a deep research on 'AI agent frameworks 2026' and import the results"**
> Starts deep web research, waits for completion, and imports sources into the notebook.
**"Generate a slide deck from my NotebookLM notebook about machine learning"**
> Creates a PDF/PPTX presentation from your notebook sources.
**"Create a deep dive audio overview of my research papers"**
> Generates a long-form podcast-style M4A audio discussion.
**"Make a portrait infographic highlighting the key findings"**
> Produces a PNG infographic in portrait orientation.
**"Create a note called 'Key Takeaways' with a summary of the main points"**
> Creates a new note in the notebook with the specified content.
---
## Configuration
### Environment Variables
| Variable | Description |
|:---------|:------------|
| `NOTEBOOKLM_DATA_DIR` | Override data directory |
| `NOTEBOOKLM_COOKIE_PATH` | Custom cookie file path |
| `NOTEBOOKLM_CHROME_PROFILE_DIR` | Chrome profile directory |
| `NOTEBOOKLM_CHROME_PATH` | Chrome executable path |
| `NOTEBOOKLM_OUTPUT_DIR` | Default output directory |
### Rate Limits
NotebookLM free tier limits:
| Resource | Limit |
|:---------|:------|
| Audio / Video overviews | 3 per day |
| Reports / Flashcards / Quizzes | 10 per day |
| Daily chats | 50 |
| Total notebooks | 100 |
| Sources per notebook | 50 |
---
## Project Structure
```
notebooklm-ai-plugin/
โโโ .claude-plugin/
โ โโโ plugin.json # Plugin manifest
โ โโโ marketplace.json # Marketplace metadata
โโโ skills/
โ โโโ notebooklm/
โ โโโ SKILL.md # Skill definition (triggers + docs)
โ โโโ scripts/
โ โโโ main.ts # CLI entry point (all commands)
โ โโโ auth.ts # Chrome CDP authentication
โ โโโ chat.ts # Streaming chat with notebook AI
โ โโโ rpc-client.ts # batchexecute protocol client
โ โโโ rpc-types.ts # RPC method IDs + enum codes
โ โโโ artifact-generator.ts # Create / poll / download artifacts
โ โโโ source-manager.ts # Add / list / delete sources
โ โโโ research-manager.ts # Fast / deep web research
โ โโโ notes-manager.ts # Notes CRUD
โ โโโ notebook-manager.ts # Notebook library CRUD
โ โโโ cookie-store.ts # Cookie persistence
โ โโโ paths.ts # Platform-aware storage
โ โโโ types.ts # Shared TypeScript types
โ โโโ get-cookie.ts # Quick login helper
โโโ LICENSE
โโโ README.md
```
> For full CLI commands and script usage details, see [`skills/notebooklm/SKILL.md`](skills/notebooklm/SKILL.md).
---
## Architecture
```mermaid
graph TB
subgraph "Claude Code"
A["User Prompt"] --> B["NotebookLM Skill"]
end
subgraph "Authentication"
B --> C["Chrome CDP"]
C --> D["Cookie Extraction"]
D --> E["Cookie Store"]
end
subgraph "NotebookLM API"
E --> F["batchexecute RPC"]
E --> F2["Streaming Chat"]
F --> G["Artifacts"]
F --> H["Sources"]
F --> I["Research"]
F --> I2["Notes"]
F --> I3["Notebooks"]
end
subgraph "Capabilities"
F2 --> S["AI Chat with Citations"]
G --> J["Slides / Audio / Video"]
G --> K["Quiz / Flashcards"]
G --> L["Infographic / Report"]
H --> M["URL / YouTube / File / Text"]
I --> N["Fast & Deep Web Research"]
end
style A fill:#7c3aed,color:#fff
style F fill:#1a73e8,color:#fff
style F2 fill:#1a73e8,color:#fff
style S fill:#34a853,color:#fff
style J fill:#34a853,color:#fff
style K fill:#34a853,color:#fff
style L fill:#34a853,color:#fff
style M fill:#ea4335,color:#fff
style N fill:#fbbc04,color:#000
```
**Hybrid approach:** Chrome DevTools Protocol (CDP) handles Google authentication once, then all operations use direct batchexecute RPC calls โ no browser overhead for artifact generation.
### How It Works
```mermaid
sequenceDiagram
participant U as User
participant C as Claude Code
participant P as Plugin (Bun/TS)
participant Ch as Chrome (CDP)
participant N as NotebookLM API
U->>C: "Generate a slide deck from my notebook"
C->>P: Invoke notebooklm skill
Note over P,Ch: First-time auth only
P->>Ch: Launch Chrome via CDP
Ch-->>P: Google session cookies
P->>P: Cache cookies to disk
P->>N: LIST_NOTEBOOKS (batchexecute RPC)
N-->>P: Notebook sources
P->>N: CREATE_ARTIFACT (type=slide_deck)
N-->>P: Artifact ID
loop Poll every 5s
P->>N: LIST_ARTIFACTS
N-->>P: Status: processing / completed
end
P->>N: Download artifact
N-->>P: PDF/PNG/M4A/MP4 file
P-->>C: File saved to disk
C-->>U: "Slide deck saved to slides.pdf"
```
### batchexecute RPC Protocol
The plugin communicates with NotebookLM via Google's internal batchexecute protocol โ the same system used across Google web apps. Each operation maps to an obfuscated RPC method ID:
| Operation | RPC ID |
|:----------|:-------|
|
... (truncated)
tools
Comments
Sign in to leave a comment