proyecto26/notebooklm-ai-plugin
v1.1.1MIT
Generate NotebookLM artifacts (slides, audio, video, mind maps, quizzes, flashcards, infographics, reports, data tables) from your notebooks. Use when the user wants to create any NotebookLM Studio output from their uploaded sources.
Changelog
1.1.1 — 2026-11-04
Fixed
- Login no longer reports success before you sign in.
notebook.google.com("Gemini Notebook") serves its app shell with HTTP 200 even signed out, so the old check (cookie names plus the tab URL) passed within seconds and saved a signed-out session; every command then failed with "Failed to extract CSRF token (SNlM0e)". Login now verifies each candidate session with a real, time-bounded request (scripts/session.ts) and keeps the window open until the page shows a signed-in account and its CSRF token, then confirms withRPCClient.init()before saving. - Clear session errors.
init()raises typedSessionErrors:signed_out(runlogin --force),token_source_changed(Google moved the CSRF token; the skill needs an update),network,unexpected. A cached session only reopens Chrome when it is signed out, so other failures no longer loop. Redirect messages drop query strings and fragments. - Removed the unused
validateNotebookLMSession.
1.1.0 — 2026-08-28
Fixed
- NotebookLM host migration. NotebookLM moved to
https://notebook.google.com(the oldnotebooklm.google.comhost now 301-redirects), which broke every request and the browser login. All requests, the CDP login flow, and session checks now go through a single configurable origin (scripts/constants.ts, overrideNOTEBOOKLM_BASE_URL); both hosts are accepted in notebook URLs. loginvalidates the cached session before skipping Chrome, and the cookie map prefers cookies scoped to the app host over stale legacy ones (fixed a real re-login failure).- Slide-deck PDF export no longer routes PPTX bytes to a
.pdfpath.
Changed
- Realigned the batchexecute RPC payloads and decoder against the
notebooklm-pyreference (live-verified) and cross-checked withnotebooklm-sdk: rewrote the decoder (error frames, status envelopes, method-id drift detection, null results) and the artifact/source/note/chat/ research builders and parsers. Mind map is generated as a Studio artifact; data table exports to CSV.
Added
- Multi-host packaging. Installs in Claude Code, OpenAI Codex, Cursor, and GitHub Copilot CLI
from the same repository:
plugin.json(repo root) — Agent Plugins 1.0 portable manifest, read by Cursor and Copilot CLI, validated against the 1.0.0 JSON schema..codex-plugin/plugin.json+.agents/plugins/marketplace.json— OpenAI Codex manifest and marketplace catalog.- Existing
.claude-plugin/files are unchanged apart from the version bump; the plugin keepsstrict:true+ skill auto-discovery.
scripts/check-manifests.sh— release gate. Fails ifname,version, ordescriptiondiffer across the host manifests, ifplugin.jsoncontains fields outside the Agent Plugins 1.0 closed schema, or if the install wiring drifts; also runsclaude plugin validateand the Agent Plugins 1.0.0 schema check.artifacts listandnotebooks remotecommands.- Repo-root
test/harness: offline unit tests (inline real-derived samples intest/samples.ts)live.test.tsagainst the real service;test/evals.json.
CHANGELOG.md(this file).
1.0.0
- Initial release: chat, artifact generation (slides, audio, video, mind maps, quizzes, flashcards, infographics, reports, data tables), source management, research, and notes for Google NotebookLM via the batchexecute protocol.