claude-skills/research/notebooklm
Alireza Rezvani 4570768781
Merge pull request #936 from benrfairless/fix/frontmatter-yaml-validation
fix(frontmatter): repair 14 unloadable YAML blocks + add gate G10
2026-08-21 10:43:35 +02:00
..
.claude-plugin fix: resolve the actionable reported issues (#954, #949, #933, #931, #969, #968, #924, #885) 2026-08-21 05:47:37 +00:00
agents fix(frontmatter): repair 14 unloadable YAML blocks 2026-08-03 08:55:36 +08:00
commands fix: resolve the actionable reported issues (#954, #949, #933, #931, #969, #968, #924, #885) 2026-08-21 05:47:37 +00:00
skills/notebooklm fix: resolve the actionable reported issues (#954, #949, #933, #931, #969, #968, #924, #885) 2026-08-21 05:47:37 +00:00
README.md fix: resolve the actionable reported issues (#954, #949, #933, #931, #969, #968, #924, #885) 2026-08-21 05:47:37 +00:00

notebooklm

Browser-automation skill for controlling Google's NotebookLM (https://notebooklm.google.com). The only browser-automation shape in the v2 collection — distinct from the research-pack convention.

Critical Portability Notice

Requires: A browser automation environment (Claude Code CLI with computer-use, Claude Chrome Extension, or equivalent). Skill will gracefully fail in non-automation contexts with a clear "not supported" message.

This skill cannot run in Claude.ai web (no browser automation). It detects environment at Step 0 and exits cleanly if unsupported.

What this skill does

Four core actions controlled via the grill-me action-routing intake:

Action Q1 picks UI flow
Read/Extract 1 Ask the notebook's chat a question, return clean response
Add Sources 2 Push URL / text / file / Google Doc / synthesized content into a notebook
Generate Studio Outputs 3 Audio Overview, Study Guide, Briefing Doc, Timeline, FAQ, Table of Contents, Infographic, Slides, Mind Map
Create New Notebook 4 Initialize with title + initial sources

Domain folder — research (semantic) vs shape difference

This skill lives in research/ (with pulse/litreview/grants/dossier/patent/syllabus) because its user-facing semantic domain is research — users automate NotebookLM as part of their research workflow.

But the technical shape is completely different from the research-pack:

  • No Consensus / Agent Integrity Rules
  • No 1 q/sec rate limits (browser automation has different constraints)
  • No DOCX generation (NotebookLM outputs come from NotebookLM itself)
  • No three-count tracking
  • Async discipline is fundamentally different (UI generation can take 5-10 min)

Users find it where they expect (research/), but it's the only research-domain skill with this shape.

Source spec

megaprompts/03-notebooklm-megaprompt.md (maintainer-local draft spec — gitignored, not in the public repo) (PR #657).

Plugin layout

research/notebooklm/
├── .claude-plugin/plugin.json
├── README.md
├── agents/cs-notebooklm.md          ← browser-automation persona, async-discipline enforcer
├── commands/cs-notebooklm.md        ← /cs:notebooklm (or auto-triggers on phrases)
└── skills/notebooklm/
    ├── SKILL.md
    ├── references/
    │   ├── browser_automation_canon.md         ← screenshot-first / find-before-click (7+ sources)
    │   ├── studio_output_custom_prompts.md     ← why default prompts mediocre + per-type templates (7+ sources)
    │   └── async_action_discipline.md          ← fire-and-notify pattern for slow UI ops (7+ sources)
    └── scripts/
        ├── action_router.py                    ← stdlib: Q1-Q4 answers → action plan + UI flow
        ├── custom_prompt_template_generator.py ← stdlib: studio output type + audience → custom prompt starter
        └── async_action_classifier.py          ← stdlib: action → wait-or-notify-and-move-on

Dependencies

  • Browser automation tool — Required. Examples:
    • Claude Code CLI with computer-use
    • Claude Chrome Extension
    • Playwright / Puppeteer with screenshot + click tools
  • NotebookLM account (Google) — User-provided, never auto-login

License

MIT.