tmc/nlm

a command line interface to NotebookLM

解决的问题

nlm 提供了一种无需使用网页浏览器即可与 Google 的 NotebookLM 交互的方法。它允许开发者和高级用户通过命令行界面(CLI)管理笔记本、源文件和聊天记录,自动化 CI/CD 流水线中的工作流,并通过 Model Context Protocol(MCP)将 NotebookLM 的功能集成到其他 AI 代理中。

工作原理

该项目是一个用 Go 编写的逆向工程客户端,实现了 NotebookLM 的私有通信协议。它使用单个静态二进制文件执行操作。认证时,它会无头启动浏览器,从已登录的 Google 账户中提取会话令牌和 Cookie。随后,通过 RPC 调用直接与 NotebookLM 的后端通信,以管理数据并触发 AI 生成。

适用人群

  • 终端用户:偏好使用 CLI 而非网页界面进行聊天和文档管理的人。
  • DevOps/CI 工程师:希望对 NotebookLM 操作进行脚本化的工程师。
  • AI 代理开发者:希望通过 MCP 服务器将 NotebookLM 作为工具使用的开发者。
  • Go 开发者:希望使用提供的 Go 包构建自定义 NotebookLM 集成的开发者。

主要亮点

  • 全面的 CLI:支持完整的笔记本管理、源文件上传(文件、URL、文本)以及交互式流式聊天。
  • MCP 服务器:内置对 Model Context Protocol 的支持,允许 AI 助手使用 NotebookLM 工具。
  • 高级源控制:支持基于 .nlmignore 的幂等目录同步,以及通过正则表达式或标签过滤源文件。
  • 丰富输出:将笔记渲染为 Markdown/HTML,并将引用回溯到特定本地文件的行号。
  • 音频生成:可触发生成音频深度解析、视频导览和幻灯片演示文稿。
  • 深度研究:支持专用研究模式,可输出包含脚注的自包含 Markdown 报告。

相关

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