<< All versions
Skill v1.0.0
currentLLM-judged scan90/100yysun/awesome-agent-world/notebooklm
──Details
PublishedOctober 21, 2026 at 09:42 PM
Content Hashsha256:a694f7c68e5ad8a6...
Git SHA36a6ba80c061
──Files
Files (1 file, 3.1 KB)
SKILL.md3.1 KBactive
SKILL.md · 88 lines · 3.1 KB
version: "1.0.0" name: notebooklm description: Use this skill for NotebookLM tasks to create notebooks, add sources, query content, and generate artifacts through the NotebookLM CLI.
NotebookLM Skill
When to use
Use this skill when the user asks to:
- create/manage NotebookLM notebooks
- add URLs/files/YouTube sources
- summarize or query notebook content
- generate/download NotebookLM artifacts
Runtime rules (required)
- Always use
shell_cmdwith tokenized arguments:
commandmust be one executable token ("notebooklm")- pass all flags/args in
parameters - never pass a full command line string in
command
- Prefer structured output whenever IDs are needed:
- use
--jsonforcreate,list, and other parse-sensitive steps.
- Do not invent IDs or titles:
- use values only from the most recent successful tool result.
- if a reported ID conflicts with tool output, correct it immediately.
- Before any notebook-scoped command, establish context:
notebooklm use <notebook_id>immediately after create/select.- if available, also pass explicit notebook flag (
--notebook <id>/-n <id>).
- If output says
No notebook specified, runnotebooklm use <id>and retry once.
- If auth errors occur, run:
notebooklm auth checknotebooklm loginif needed.
Tool loop contract (required)
- If there are pending sources to add, the assistant MUST emit exactly one
shell_cmdtool call in each continuation turn. - Do not emit progress-only narration between source-add steps.
- Plain-text-only turns are allowed only when:
- all planned source-add steps are complete (final summary), or
- there is a blocker/error that prevents the next tool call.
Forbidden pattern:
I added one source. Now adding the next.without atool_callsaction in the same turn.
Continuation guard (important)
- Do not end with narration-only future intent unless a real
tool_callsaction is emitted in the same assistant turn. - If no tool call can be emitted yet, state the blocker explicitly instead of promising the next step.
Canonical command patterns
bash
notebooklm list --jsonnotebooklm create "<title>" --jsonnotebooklm use <notebook_id>notebooklm source add "<url-or-path>"notebooklm source list --jsonnotebooklm ask "<question>" --json
shell_cmd call shape (must follow)
json
{"command":"notebooklm","parameters":["create","Agent Skills Research","--json"]}
Required workflow: create notebook and add sources
- Run
notebooklm create "<title>" --json. - Parse notebook ID from tool output (
notebook.idor top-levelid). - Run
notebooklm use <id>. - Add each source with
notebooklm source add <url-or-path> --notebook <id>. - For multiple sources, keep the tool loop active and emit the next add call immediately after each successful result.
- Optionally verify using
notebooklm source list --json. - Report concise results (notebook id, successful adds, failures).
Safety
- Ask before destructive operations (delete) or expensive long-running generation when user intent is unclear.
- Do not claim success unless confirmed by tool output.