SkillHub

notebooklm-cli-cookies

v0.1.4

Search and answer questions over documents already uploaded to NotebookLM using the nlm CLI. Use when users ask to find information, summarize sources, or query a specific NotebookLM notebook.

Sourced from ClawHub, Authored by lhquangit

Installation

Please help me install the skill `notebooklm-cli-cookies` from SkillHub official store. npx skills add lhquangit/notebooklm-cli-cookies

NotebookLM CLI

Purpose

Use this skill when the user wants to search or ask questions over content that already exists in NotebookLM notebooks.

This skill assumes: - nlm is installed (notebooklm-mcp-cli package). - Auth was pre-injected for headless runtime. - NOTEBOOKLM_MCP_CLI_PATH points to the auth storage directory.

Hard Rules (avoid wrong tool choices)

When the user mentions any of the following, treat it as a strict request to query NotebookLM: - "NotebookLM", "notebooklm" - "notebook alias", "alias" - a known alias name (for example: tai_lieu_dien, nlm_tai_lieu_dien)

In these cases: - Always run nlm via Exec to answer. Do not answer from memory. - Do not switch to web search unless the user explicitly asks for web sources. - If the answer is not in the notebook, say so (based on the nlm output).

Slash command: - If the user invokes this skill via /nlm ... in Telegram, treat the raw text after /nlm as the nlm arguments. - Always execute exactly: nlm <args> via Exec, and return the relevant stdout.

Runtime Checks

Before running queries:

  1. Verify auth path is configured:
echo "$NOTEBOOKLM_MCP_CLI_PATH"
  1. Verify login status:
nlm login --check

If auth check fails, stop and ask for auth refresh workflow (do not run browser login in AWS runtime).

Query Workflow

  1. List notebooks:
nlm notebook list --json
  1. Select notebook:
  2. If user provided notebook id, use it directly.
  3. If user provided title, resolve it to notebook_id from the list output (do not pass raw title into nlm notebook get/source list/query).
  4. If user provided alias, use the alias.
  5. If ambiguous, ask user to choose one notebook.
  6. Query notebook:
nlm notebook query "<notebook_id_or_alias>" "<user_question>"
  1. Return answer and include which notebook was queried.

Notes: - nlm notebook list returns titles for display, but many other commands expect a notebook id (UUID) or an alias. Passing a title like "tài liệu điện" may return null/empty results. - If the user will query the same notebook often, create an alias and use it consistently (for example: tai_lieu_dien).

Telegram Prompt Templates (copy/paste)

Prefer one of these formats to reliably trigger this skill:

1) Force CLI query:

Chạy lệnh: nlm notebook query tai_lieu_dien "giá của A9N61500 là bao nhiêu? Nếu notebook không có thông tin giá thì trả lời: không thấy trong NotebookLM."

2) Natural language but explicit:

Trong NotebookLM notebook alias tai_lieu_dien: trả lời câu hỏi "giá của A9N61500 là bao nhiêu?". Bắt buộc dùng nlm để truy vấn, không tìm web, không đọc file local.

Output Guidelines

  • Be explicit about notebook identity (title + id when available).
  • If query result is empty or vague, suggest a refined follow-up query.
  • Prefer concise, factual answers grounded in NotebookLM response.

Common Errors

  • Authentication expired / 401 / 403:
  • Check NOTEBOOKLM_MCP_CLI_PATH.
  • Ensure profiles/default/cookies.json and profiles/default/metadata.json exist.
  • Refresh cookies outside AWS (machine with browser), then redeploy secret.
  • nlm: command not found:
  • Install package: pipx install notebooklm-mcp-cli (recommended), or uv tool install notebooklm-mcp-cli.

Command Reference

# List notebooks
nlm notebook list --json

# Query notebook by id or alias
nlm notebook query "<notebook_id_or_alias>" "<question>"

# Check auth status
nlm login --check