{
  "schemaVersion": "1.0",
  "item": {
    "slug": "notebooklm-cli-cookies",
    "name": "NotebookLM CLI Cookies",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/lhquangit/notebooklm-cli-cookies",
    "canonicalUrl": "https://clawhub.ai/lhquangit/notebooklm-cli-cookies",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/notebooklm-cli-cookies",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=notebooklm-cli-cookies",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "docs/GUIDELINE.md",
      "scripts/aws-inject-notebooklm-auth.sh",
      "scripts/bootstrap_vps_systemd_one_liner.sh"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/notebooklm-cli-cookies"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/notebooklm-cli-cookies",
    "agentPageUrl": "https://openagent3.xyz/skills/notebooklm-cli-cookies/agent",
    "manifestUrl": "https://openagent3.xyz/skills/notebooklm-cli-cookies/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/notebooklm-cli-cookies/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Purpose",
        "body": "Use this skill when the user wants to search or ask questions over content that already exists in NotebookLM notebooks.\n\nThis skill assumes:\n\nnlm is installed (notebooklm-mcp-cli package).\nAuth was pre-injected for headless runtime.\nNOTEBOOKLM_MCP_CLI_PATH points to the auth storage directory."
      },
      {
        "title": "Hard Rules (avoid wrong tool choices)",
        "body": "When the user mentions any of the following, treat it as a strict request to query NotebookLM:\n\n\"NotebookLM\", \"notebooklm\"\n\"notebook alias\", \"alias\"\na known alias name (for example: tai_lieu_dien, nlm_tai_lieu_dien)\n\nIn these cases:\n\nAlways run nlm via Exec to answer. Do not answer from memory.\nDo not switch to web search unless the user explicitly asks for web sources.\nIf the answer is not in the notebook, say so (based on the nlm output).\n\nSlash command:\n\nIf the user invokes this skill via /nlm ... in Telegram, treat the raw text after /nlm as the nlm arguments.\nAlways execute exactly: nlm <args> via Exec, and return the relevant stdout."
      },
      {
        "title": "Runtime Checks",
        "body": "Before running queries:\n\nVerify auth path is configured:\n\necho \"$NOTEBOOKLM_MCP_CLI_PATH\"\n\nVerify login status:\n\nnlm login --check\n\nIf auth check fails, stop and ask for auth refresh workflow (do not run browser login in AWS runtime)."
      },
      {
        "title": "Query Workflow",
        "body": "List notebooks:\n\nnlm notebook list --json\n\nSelect notebook:\n\nIf user provided notebook id, use it directly.\nIf user provided title, resolve it to notebook_id from the list output (do not pass raw title into nlm notebook get/source list/query).\nIf user provided alias, use the alias.\nIf ambiguous, ask user to choose one notebook.\n\nQuery notebook:\n\nnlm notebook query \"<notebook_id_or_alias>\" \"<user_question>\"\n\nReturn answer and include which notebook was queried.\n\nNotes:\n\nnlm 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.\nIf the user will query the same notebook often, create an alias and use it consistently (for example: tai_lieu_dien)."
      },
      {
        "title": "Telegram Prompt Templates (copy/paste)",
        "body": "Prefer one of these formats to reliably trigger this skill:\n\nForce CLI query:\n\nChạ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.\"\n\nNatural language but explicit:\n\nTrong 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."
      },
      {
        "title": "Output Guidelines",
        "body": "Be explicit about notebook identity (title + id when available).\nIf query result is empty or vague, suggest a refined follow-up query.\nPrefer concise, factual answers grounded in NotebookLM response."
      },
      {
        "title": "Common Errors",
        "body": "Authentication expired / 401 / 403:\n\nCheck NOTEBOOKLM_MCP_CLI_PATH.\nEnsure profiles/default/cookies.json and profiles/default/metadata.json exist.\nRefresh cookies outside AWS (machine with browser), then redeploy secret.\n\n\nnlm: command not found:\n\nInstall package: pipx install notebooklm-mcp-cli (recommended), or uv tool install notebooklm-mcp-cli."
      },
      {
        "title": "Command Reference",
        "body": "# List notebooks\nnlm notebook list --json\n\n# Query notebook by id or alias\nnlm notebook query \"<notebook_id_or_alias>\" \"<question>\"\n\n# Check auth status\nnlm login --check"
      }
    ],
    "body": "NotebookLM CLI\nPurpose\n\nUse this skill when the user wants to search or ask questions over content that already exists in NotebookLM notebooks.\n\nThis skill assumes:\n\nnlm is installed (notebooklm-mcp-cli package).\nAuth was pre-injected for headless runtime.\nNOTEBOOKLM_MCP_CLI_PATH points to the auth storage directory.\nHard Rules (avoid wrong tool choices)\n\nWhen the user mentions any of the following, treat it as a strict request to query NotebookLM:\n\n\"NotebookLM\", \"notebooklm\"\n\"notebook alias\", \"alias\"\na known alias name (for example: tai_lieu_dien, nlm_tai_lieu_dien)\n\nIn these cases:\n\nAlways run nlm via Exec to answer. Do not answer from memory.\nDo not switch to web search unless the user explicitly asks for web sources.\nIf the answer is not in the notebook, say so (based on the nlm output).\n\nSlash command:\n\nIf the user invokes this skill via /nlm ... in Telegram, treat the raw text after /nlm as the nlm arguments.\nAlways execute exactly: nlm <args> via Exec, and return the relevant stdout.\nRuntime Checks\n\nBefore running queries:\n\nVerify auth path is configured:\necho \"$NOTEBOOKLM_MCP_CLI_PATH\"\n\nVerify login status:\nnlm login --check\n\n\nIf auth check fails, stop and ask for auth refresh workflow (do not run browser login in AWS runtime).\n\nQuery Workflow\nList notebooks:\nnlm notebook list --json\n\nSelect notebook:\nIf user provided notebook id, use it directly.\nIf user provided title, resolve it to notebook_id from the list output (do not pass raw title into nlm notebook get/source list/query).\nIf user provided alias, use the alias.\nIf ambiguous, ask user to choose one notebook.\nQuery notebook:\nnlm notebook query \"<notebook_id_or_alias>\" \"<user_question>\"\n\nReturn answer and include which notebook was queried.\n\nNotes:\n\nnlm 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.\nIf the user will query the same notebook often, create an alias and use it consistently (for example: tai_lieu_dien).\nTelegram Prompt Templates (copy/paste)\n\nPrefer one of these formats to reliably trigger this skill:\n\nForce CLI query:\nChạ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.\"\n\nNatural language but explicit:\nTrong 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.\n\nOutput Guidelines\nBe explicit about notebook identity (title + id when available).\nIf query result is empty or vague, suggest a refined follow-up query.\nPrefer concise, factual answers grounded in NotebookLM response.\nCommon Errors\nAuthentication expired / 401 / 403:\nCheck NOTEBOOKLM_MCP_CLI_PATH.\nEnsure profiles/default/cookies.json and profiles/default/metadata.json exist.\nRefresh cookies outside AWS (machine with browser), then redeploy secret.\nnlm: command not found:\nInstall package: pipx install notebooklm-mcp-cli (recommended), or uv tool install notebooklm-mcp-cli.\nCommand Reference\n# List notebooks\nnlm notebook list --json\n\n# Query notebook by id or alias\nnlm notebook query \"<notebook_id_or_alias>\" \"<question>\"\n\n# Check auth status\nnlm login --check"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/lhquangit/notebooklm-cli-cookies",
    "publisherUrl": "https://clawhub.ai/lhquangit/notebooklm-cli-cookies",
    "owner": "lhquangit",
    "version": "0.1.4",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/notebooklm-cli-cookies",
    "downloadUrl": "https://openagent3.xyz/downloads/notebooklm-cli-cookies",
    "agentUrl": "https://openagent3.xyz/skills/notebooklm-cli-cookies/agent",
    "manifestUrl": "https://openagent3.xyz/skills/notebooklm-cli-cookies/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/notebooklm-cli-cookies/agent.md"
  }
}