tmc/nlm

a command line interface to NotebookLM

解决的问题

nlm 提供了一种无需使用网页浏览器即可与 Google 的 NotebookLM 交互的方法。它允许用户管理笔记本、源文件和笔记,并直接在终端中执行 AI 驱动的研究和聊天,也可集成到 CI/CD 流水线中。通过逆向工程其通信协议,解决了 NotebookLM 缺乏公开 API 的问题,从而创建了一个可脚本化的单二进制客户端。

工作原理

该工具使用 Go 编写,作为客户端通过私有 RPC 实现与 NotebookLM 通信。它采用编译后的 Protobuf 通信模型,确保数据捕获无损。认证方式支持启动浏览器以获取会话凭据,也支持手动输入令牌和 Cookie。支持多种输入方式,包括本地文件同步(使用 SHA-256 保证幂等性)、URL 和标准输入,并能将引用回溯到本地文件的行号。

适用人群

  • 终端用户和开发者:偏好使用 CLI 工具而非网页界面的用户。
  • DevOps 和 CI 工程师:需要实际自动化 NotebookLM 工作流的工程师。
  • AI Agent 开发者:希望通过内置的 Model Context Protocol (MCP) 服务器将 NotebookLM 的能力集成到其他工具中的开发者。

主要亮点

  • 全面的 CLI:支持完整的笔记本管理,包括创建笔记、添加源、管理标签等。
  • 高级聊天功能:支持带持久会话的流式 REPL、斜杠命令,以及查看推理过程(--thinking)。
  • 内容生成:可触发生成音频深度解析、视频导览和幻灯片演示文稿。
  • 深度研究:包含专用研究模式,可输出带脚注的自包含 Markdown 报告。
  • MCP 服务器:内置 Model Context Protocol 支持,允许 AI 助手将 NotebookLM 作为工具使用。
  • Shell 集成:专为管道处理设计,支持 JSON 输出选项和 TTY 检测,确保格式整洁。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目