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
それは何か – Google の Gemini Notebook(旧 Notebook LM)用の非公式 Python クライアント、CLI、サーバー。ノートブックサービスをプログラムで操作できます – ソースの追加、質問、幅広い AI 生成アーティファクト(オーディオ、ビデオ、スライド、クイズ、フラッシュカード、マインドマップなど)の生成 – すべて Python コード、コマンドラインツール、または Claude Code や Codex などの LLM エージェントが呼び出せる MCP/REST サーバーを介して行えます。
なぜ重要か
- ゼロトークン研究 – Gemini に数十のドキュメントの重い読み取りを任せ、最終的な仕上げステップでのみモデルトークンを費やします。
- エージェントのための接地されたメモリ – ノートブックは永続的で引用に裏付けられた知識ベースとして機能し、エージェントは独自のベクターストアを構築する代わりにクエリできます。
- 一括、スクリプト可能なエクスポート – オーディオ、ビデオ、PDF、JSON クイズ、マインドマップツリー、CSV テーブルなどを 1 つのコマンドでダウンロード – これは Web UI ではできません。
- エージェント対応スキル – すぐにインストールできる Claude Code スキル(
SKILL.md)が付属しており、エージェントが Notebook LM アクションを直接呼び出せます。
コア機能(README に記載)
| 領域 | できること |
|---|---|
| ノートブック管理 | ノートブックの作成、コピー、一覧表示、名前変更、削除、アクティブなノートブックの切り替え。 |
| ソース取り込み | URL、PDF、Word、EPUB、オーディオ/ビデオ、画像、YouTube リンク、Google Drive ファイル、または生テキストを追加。一括インポートと自動更新をサポート。 |
| チャット / Q&A | ノートブックのソースに対して Gemini を利用した質問をし、会話履歴を保持し、カスタムペルソナを使用し、回答をノートとして保存。 |
| コンテンツ生成 | オーディオ概要、ビデオ概要、スライドデッキ(PDF/PPTX)、インフォグラフィック、クイズ、フラッシュカード、レポート、データテーブル(CSV)、マインドマップ(JSON)を生成。 |
| エクスポート / ダウンロード | 任意のアーティファクトタイプを一括ダウンロードし、形式(MP3、MP4、PNG、JSON、Markdown、HTML、CSV、PPTX)を選択。 |
| 共有と権限 | 公開/プライベートリンクを作成し、閲覧者/編集者権限を設定。 |
| 自動化フック | CLI、Python API、MCP サーバー(Claude Code/Codex 用)、ヘッドレススクリプト用の軽量 REST サーバー。 |
| バックエンド | デフォルトの Web 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 から実行するか、MCP/REST サーバーを介して LLM エージェントが呼び出すことができます。
誰が使うか?
- 研究者とライター – 多数のドキュメントを取り込み、Gemini に要約させ、公開可能なメディアをエクスポートしたい人。
- LLM エージェント開発者(Claude Code、Codex、OpenClaw など)– 接地された知識ベースと、エージェントが呼び出せる一連のツールアクションが必要な人。
- 自動化エンジニア – CI/CD パイプライン、定期的なブリーフィング、または一括コンテンツ作成を必要とするインシデントランブックジェネレーターを構築する人。
- パワーユーザー – 一括ダウンロード、カスタム形式、または Obsidian などの個人知識グラフツールとの統合を望む人。
制限と注意事項(README の警告)
- 非公式で未文書 – Google の内部 API と通信します。予告なく変更される可能性があります。
- レート制限とクォータ – 大量または自動化された使用は Google によって制限される可能性があります。
- 認証の複雑さ – Playwright 駆動のブラウザログインまたはマスタートークンが必要です。Android バックエンドには永続的なマスタートークンが必要です。
- ベクター DB の代替ではない – 接地されたリコールを提供しますが、Google のサービス可用性に依存します。
クイックスタートチェックリスト
- CLI をインストール(推奨:
uv tool install "notebooklm-py[browser]"またはpipx)。 notebooklm loginを実行(ヘッドレス使用の場合はマスタートークンログイン)。- 上記の CLI ワークフローに従うか、Python で
NotebookLMClientをインポート。 - オプション:
notebooklm skill installまたはnpx skills add teng-lin/notebooklm-pyで Claude Code スキルをインストール。
すべての情報はリポジトリの README から直接取得しています。追加機能は推測していません。
関連
- プロジェクト
- プロジェクト
- Dispatch
- プロジェクト
- プロジェクト