SuperAPI AI 工具集

notebooklm

办公与效率

查看项目

更新于 10-16 04:47

技能介绍

用途

NotebookLM CLI 封装工具是一个 Python 脚本封装层,用于在命令行中操作 NotebookLM。它通过 python3 {baseDir}/scripts/notebooklm.py <command> [args...] 的形式调用,底层由 notebooklm-py 提供支持,适用于认证、笔记本管理、对话、来源、笔记、分享等场景。

主要能力

  • 认证与状态:login、status 等命令。
  • 笔记本管理:list、use <notebook_id>、clear 等。
  • 对话问答:ask "..." --notebook <notebook_id>。
  • 来源管理:source list、source get、source add(URL/文本)、source add-research、source wait。
  • 笔记:note list 等。
  • 生成与下载:generate slide-deck、artifact wait、download slide-deck。
  • 研究:research wait。

使用方式

前置条件:

  • python3 可用。
  • 已安装 notebooklm-py(CLI 二进制:notebooklm)。
  • 已完成 NotebookLM 登录认证。

快速开始示例:

python3 {baseDir}/scripts/notebooklm.py login
python3 {baseDir}/scripts/notebooklm.py list
python3 {baseDir}/scripts/notebooklm.py use <notebook_id>
python3 {baseDir}/scripts/notebooklm.py status
python3 {baseDir}/scripts/notebooklm.py ask "Summarize the key takeaways" --notebook <notebook_id>

输出建议:在支持的命令中优先使用 --json 以获得机器可读输出。长时等待由原生命令处理,例如 source wait、artifact wait、research wait。

子代理委派(防阻塞)

问题:source wait、artifact wait、research wait、generate slide-deck、source add-research 等操作可能耗时数分钟,在主会话中运行会阻塞对话。

策略:对于预计超过 30 秒的操作,通过 sessions_spawn 委派给子代理。主会话先确认用户请求,再派生子代理执行长任务;子代理执行并等待完成后回报,主会话保持响应,子代理完成后自动通知。

建议委派的操作:

  • login、status、list、use、clear:不委派(快,<5s)。
  • ask(对话):不委派(通常约 10s)。
  • source list、source get、note list:不委派(快速读取)。
  • source add(URL/文本):可选(提交快,但后续 source wait 慢)。
  • source add-research:委派(深度研究可能 2-5 分钟)。
  • source wait:委派(轮询等待,时长不可预测)。
  • generate slide-deck + artifact wait:委派(生成 1-5 分钟)。
  • research wait:委派(可能数分钟)。
  • download slide-deck:可选(通常快,大文件可能慢)。
  • 多步工作流(加来源 → 等待 → 生成 → 等待 → 下载):委派(复合长任务)。

派生示例:

sessions_spawn:
  task: |
    You are a NotebookLM task runner. Execute the following NotebookLM operations
    and report results when done.

    Notebook ID: <notebook_id>
    Commands to run (in order):
    1. <command 1>
    2. <command 2>
    ...

    Use the CLI wrapper: python3 ~/.openclaw/skills/notebooklm-Invoke/scripts/notebooklm.py
    Prefer --json output where supported.
    If any step fails, report the error and stop.
    When complete, summarize what was accomplished and any output files created.
  mode: run
  label: notebooklm-<short-description>

生成幻灯片示例:

sessions_spawn:
  task: |
    NotebookLM task: Generate a slide deck from notebook.

    Steps:
    1. python3 ~/.openclaw/skills/notebooklm-Invoke/scripts/notebooklm.py generate slide-deck "Create a comprehensive slide deck" --notebook <id>
    2. python3 ~/.openclaw/skills/notebooklm-Invoke/scripts/notebooklm.py artifact wait <artifact_id> --notebook <id> --timeout 600 --json
    3. python3 ~/.openclaw/skills/notebooklm-Invoke/scripts/notebooklm.py download slide-deck ./output.pptx --notebook <id> --latest --format pptx

    Report: artifact details, file path, any errors.
  mode: run
  label: notebooklm-slide-deck

添加研究来源示例:

sessions_spawn:
  task: |
    NotebookLM task: Add deep research source.

    Steps:
    1. python3 ~/.openclaw/skills/notebooklm-Invoke/scripts/notebooklm.py source add-research "碳足迹最新研究进展" --mode deep --notebook <id>
    2. python3 ~/.openclaw/skills/notebooklm-Invoke/scripts/notebooklm.py research wait --notebook <id> --timeout 600
    3. python3 ~/.openclaw/skills/notebooklm-Invoke/scripts/notebooklm.py source list --notebook <id> --json

    Report: research status, new sources added, any errors.
  mode: run
  label: notebooklm-research

使用准则

  • 派生前始终告知用户正在委派后台任务。
  • 使用 mode: run(一次性),无需持久会话。
  • 使用描述性标签,如 notebooklm-slide-deck、notebooklm-research-carbon,便于追踪。
  • 在任务中包含全部上下文——子代理没有对话历史。
  • 错误处理:指示子代理清晰报告错误,以便转达。
  • 文件路径:输出文件使用绝对路径,便于主会话找到。
  • 复合工作流:将相关步骤(加 → 等待 → 生成 → 等待 → 下载)打包到单个子代理任务,而非派生多个。

PPT 生成策略

  • 单个生成的幻灯片最多 15 页。
  • 若用户需求超过 15 页,拆分为多个幻灯片(如 Part 1/2/3)分别生成。
  • 生成后尽可能提供可下载的 .pptx 输出:download slide-deck ... --format pptx。

参考

  • README.md(安装、要求、故障排查)
  • QUICKSTART_CN.md(中文快速上手)
  • references/cli-commands.md

限制

  • 需预先安装 notebooklm-py 并完成 NotebookLM 登录认证。
  • 部分操作耗时较长,需通过子代理委派以避免阻塞。
  • 其他未在资料中说明的功能、收费、价格、平台或效果暂未提供。