teng-lin/notebooklm-py

Unofficial Python API and agentic skill for Google Gemini Notebook. Full programmatic access to Gemini Notebook's features—including capabilities the web UI doesn't expose—via Python, CLI, and AI agents like Claude Code, Codex, and OpenClaw.

notebooklm-py

它是什么 – 一个非官方的 Python 客户端、CLI 和服务器,用于 Google 的 Gemini Notebook(前身为 Notebook LM)。它让你可以以编程方式驱动笔记本服务 – 添加来源、询问问题,并生成各种 AI 创建的作品(音频、视频、幻灯片、测验、闪卡、思维导图等)– 全部从 Python 代码、命令行工具,或通过 LLM 代理(如 Claude Code 或 Codex)可以调用的 MCP/REST 服务器。


为什么重要

  • 零令牌研究 – 让 Gemini 大量阅读数十份文档,然后只在最终润色步骤花费模型令牌。
  • 代理的接地记忆 – 笔记本作为持久、有引用支持的知识库,代理可以查询,而不是建立自己的向量存储。
  • 批量、可脚本化导出 – 下载音频、视频、PDF、JSON 测验、思维导图树、CSV 表格等,一条命令即可 – 这是网页 UI 无法做到的。
  • 代理就绪技能 – 附带一个可立即安装的 Claude Code 技能(SKILL.md),让代理可以直接调用 Notebook LM 动作。

核心能力(依 README 所述)

区域 你可以做什么
笔记本管理 创建、复制、列出、重命名、删除笔记本;切换使用中的笔记本。
来源导入 添加 URL、PDF、Word、EPUB、音频/视频、图片、YouTube 链接、Google Drive 文件或原始文本。支持批量导入和自动刷新。
聊天 / 问答 针对笔记本的来源询问 Gemini 驱动的问题,保留对话历史,使用自定义角色,并将答案保存为笔记。
内容生成 生成音频概览、视频概览、幻灯片(PDF/PPTX)、信息图、测验、闪卡、报告、数据表(CSV)和思维导图(JSON)。
导出 / 下载 批量下载任何作品类型,选择格式(MP3、MP4、PNG、JSON、Markdown、HTML、CSV、PPTX)。
分享与权限 创建公开/私人链接,设置查看者/编辑者权限。
自动化钩子 CLI、Python API、MCP 服务器(用于 Claude Code/Codex),以及轻量 REST 服务器用于无头脚本。
后端 默认网页 RPC(batchexecute)和可选的 Android gRPC 后端,用于通过主令牌进行无令牌认证。

典型工作流程(README 中的 CLI 示例)

# 1. 认证(浏览器或主令牌)
notebooklm login

# 2. 创建笔记本并添加材料
notebooklm create "My Research"
notebooklm use <notebook_id>
notebooklm source add "https://en.wikipedia.org/wiki/Artificial_intelligence"
notebooklm source add "paper.pdf"

# 3. 询问接地问题
notebooklm ask "What are the key themes?"

# 4. 生成作品(例如,播客)
notebooklm generate audio "make it engaging" --wait

# 5. 下载结果
notebooklm download audio ./podcast.m4a

同样的步骤可以从 Python 通过 NotebookLMClient 执行,或由 LLM 代理通过 MCP/REST 服务器调用。


谁会使用它?

  • 研究人员与作家,想要导入大量文档,让 Gemini 总结,然后导出可发布的媒体。
  • LLM 代理开发者(Claude Code、Codex、OpenClaw 等),需要接地知识库和一组代理可以调用的工具动作。
  • 自动化工程师,建立 CI/CD 管道、定时简报或事件运行手册生成器,需要批量内容创建。
  • 高级用户,想要批量下载、自定义格式,或与个人知识图谱工具(如 Obsidian)集成。

限制与注意事项(如 README 警告)

  • 非官方且未记录 – 它与 Google 的内部 API 通信;它们可能随时更改而不另行通知。
  • 速率限制与配额 – 大量或自动化使用可能被 Google 限制。
  • 认证复杂性 – 需要 Playwright 驱动的浏览器登录或主令牌;Android 后端需要持久的主令牌。
  • 不是向量数据库的替代品 – 虽然它提供接地回忆,但依赖 Google 的服务可用性。

快速开始检查清单

  1. 安装 CLI(建议使用 uv tool install "notebooklm-py[browser]" 或 pipx)。
  2. 运行 notebooklm login(或主令牌登录用于无头使用)。
  3. 遵循上述 CLI 工作流程,或在 Python 中导入 NotebookLMClient。
  4. 可选:使用 notebooklm skill install 或 npx skills add teng-lin/notebooklm-py 安装 Claude Code 技能。

所有信息直接取自存储库的 README;没有推断额外功能。

相关

  • 项目
  • 项目
  • Dispatch
  • 项目
  • 项目