从零搭建 SonicNote + Claude Code + NotebookLM 自动化流水线,让录音一键变成可检索的 AI 知识库


在这里插入图片描述

📌 项目简介

你是否遇到过这些场景?

  • 开了两小时会,记了一页纸笔记,回头想查个细节却翻半天找不到
  • 录了一堆培训音频,想复习时只能从头到尾重听一遍
  • 录音文件躺在文件夹里吃灰,知识从未真正变成可检索的资产

本项目的目标: 打通 SonicNote(聆犀 AI 录音卡)→ Claude Code → NotebookLM 的自动化流水线,让你只需按一下录音键,剩下的全部自动完成。

环节 工具 作用
🎙️ 录音 SonicNote 录音卡 一键录制,自动上传到云端
📝 转写 妙记 App ASR 自动转写 + AI 智能总结
🔗 桥接 Claude Code + SonicNote MCP 通过 MCP 协议读取录音数据
🧠 知识库 NotebookLM 文档理解 + 来源引用问答 + 内容生成

🏗️ 系统架构

系统采用 4 层架构,每一层职责清晰:

在这里插入图片描述

核心组件

组件 角色 说明
🎙️ SonicNote 录音卡 硬件拾音器 磁吸式智能录音,一键录制自动上传
☁️ 妙记 App AI 处理引擎 ASR 转写(多语种)+ AI 智能总结
🔗 SonicNote MCP Server 数据桥接层 基于 MCP 协议的标准化中间件
🤖 Claude Code 智能编排引擎 通过 MCP 读取录音,驱动整条流水线
🧠 NotebookLM 智能知识库 文档理解 + 来源引用问答 + 内容生成
🌐 Chrome + Playwright 认证通道 自动提取 Google 登录态

🛠️ 环境准备

你需要准备的工具

工具 版本要求 用途
Node.js ≥ 18 运行 MCP Server
Claude Code CLI 最新 AI 编排引擎(可选,也可手动操作)
Python ≥ 3.10 运行 notebooklm-py
SonicNote 录音卡 硬件拾音
妙记 App 已登录 录音转写

检查现有环境

node --version    # ≥ 18
python --version  # ≥ 3.10
pip --version
git --version

⚠️ 注意:如果你的 Python 安装在含中文或空格的路径下,Git Bash 调用 python 可能会报错。推荐使用 Python 虚拟环境解决。


1️⃣ 安装 SonicNote MCP

SonicNote 提供了标准的 MCP Server,让 Claude Code 可以直接读取妙记中的录音数据。

获取 API Key

打开妙记 App → 我的MCP Key 管理 → 创建一个 Key

格式: sk-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

配置到 Claude Code

claude mcp add sonicnote -- npx @myshell-ai/sonicnote-mcp

按提示输入 API Key 完成认证。

验证是否成功

在 Claude Code 中输入:

列出我的录音

如果能返回录音列表,说明 SonicNote MCP 配置成功。

💡 提示:MCP 只需要配置一次,后续所有会话都会自动加载。


2️⃣ 安装 notebooklm-py

notebooklm-py 是社区开发的 NotebookLM 命令行工具,支持上传文档、提问、生成内容、下载结果,是连接 Claude Code 和 NotebookLM 的桥梁。

创建虚拟环境(推荐)

# 创建虚拟环境
python -m venv notebooklm-env

# macOS / Linux 激活
source notebooklm-env/bin/activate

# Windows (Git Bash) 激活
source notebooklm-env/Scripts/activate

安装

# 安装 notebooklm-py(包含浏览器认证支持)
pip install "notebooklm-py[cookies,browser]"

# 验证安装
notebooklm --help

如果显示命令列表,说明安装成功。

使用包装脚本(可选)

项目提供了 nb 包装脚本,无需手动激活虚拟环境:

cd sonicnote-notebooklm
./nb list

以及 use-venv.sh 一键激活脚本:

source use-venv.sh

💡 推荐:Windows 用户遇到 Python 编码问题时,优先使用 nb 包装器。

初始配置

# 设置默认语言为简体中文
notebooklm language set zh_Hans

# 验证语言设置
notebooklm language get

⚠️ 注意:NotebookLM 的简体中文代码是 zh_Hans不是 zh-CN


3️⃣ NotebookLM 登录认证

NotebookLM 需要 Google 账号登录,notebooklm-py 通过 Playwright 自动打开浏览器完成认证。

一键登录

# 直接登录(第一次需要交互)
notebooklm login

执行后会自动打开 Chromium 浏览器窗口,你只需要在浏览器中登录你的 Google 账号(如果尚未登录),然后授权即可。

验证认证状态

notebooklm auth check --test

认证成功后,输出应包含:

检查项 状态
Token fetch ✅ ✓ pass
Notebooks ✅ ✓ pass(显示笔记本数量)
SID cookie ✅ ✓ pass
Authentication is valid

创建笔记本

# 创建你的录音知识库
notebooklm create "妙记录音库"

# 设置当前笔记本(后续操作默认使用此笔记本)
notebooklm use <笔记本ID>

# 查看当前状态
notebooklm status

持久化认证

认证信息保存在 ~/.notebooklm/profiles/default/storage_state.json,无需每次重新登录。只有当 Cookie 过期(通常数周后)才需要重新运行 notebooklm login


4️⃣ 配置网络代理

方式一:环境变量

# 设置代理(Clash 默认端口)
export HTTPS_PROXY=http://127.0.0.1:7890
export HTTP_PROXY=http://127.0.0.1:7890

方式二:使用项目脚本

项目提供的 nbuse-venv.sh 脚本已内置代理设置:

# use-venv.sh 会自动设置代理
source use-venv.sh

💡 如果使用其他代理工具,请将脚本中的 7890 端口改为你的代理端口。


5️⃣ 验证全链路

完成上述配置后,快速验证整个流程是否打通:

# 1. 确保已设置当前笔记本
notebooklm status

# 2. 创建测试文件
echo "这是一段测试录音转写内容。" > test-transcript.md

# 3. 上传测试文档(注意保存输出中的源ID)
notebooklm source add test-transcript.md \
  --type file \
  --title "测试录音"

# 4. 等待处理完成(将 <源ID> 替换为上一步输出的 ID)
notebooklm source wait <源ID>

# 5. 提问测试
notebooklm ask "这段录音讲了什么?"

如果 NotebookLM 能正确回答并标注来源引用 [1],说明全链路打通成功。

快速环境检查清单

步骤 命令 预期结果
python --version ≥ 3.10
notebooklm --help 显示命令列表
notebooklm auth check --test All ✓ pass
notebooklm status 显示笔记本信息
上传 + 提问 AI 回答 + 来源引用

📁 项目文件结构

sonicnote-notebooklm/
├── bridge.mjs                    # Gemini API 桥接脚本(备用方案)
├── auto-pipeline.sh              # 全自动流水线脚本
├── nb                            # NotebookLM CLI 包装器
├── use-venv.sh                   # 一键激活虚拟环境
├── assets/                       # 教程配图
│   ├── pipeline-overview.svg     #   整体流程图
│   ├── architecture.svg          #   系统架构图
│   ├── notebooklm-qa.svg         #   NotebookLM 问答界面
│   ├── auto-pipeline.svg         #   自动化流水线
│   ├── use-cases.svg             #   适用场景矩阵
│   └── Crime_Rates_Infographic.png  #   真实生成案例图
├── SonicNote_NotebookLM_Setup_Guide.md   # 安装部署指南(本文)
├── SonicNote_NotebookLM_Usage_Guide.md   # 使用教程与优势分析
├── .env                          # API Key 配置(请勿提交到 Git)
├── package.json                  # Node.js 项目配置
└── node_modules/                 # Node.js 依赖

❓ 常见安装问题

Q1:NotebookLM 提示认证过期

现象:执行操作时返回 Authentication expired or invalid

解决

# 重新登录
notebooklm login

# 验证
notebooklm auth check --test

Q2:Playwright 找不到浏览器

现象Executable doesn't exist at ... ms-playwright

解决

# 安装 Chromium 浏览器
playwright install chromium

Q3:NotebookLM 有容量限制吗?

免费版每个笔记本最多 50 个源文件,每个源文件最多 50 万字。对于日常录音来说绰绰有余。

Q4:笔记本电脑上 Playwright 浏览器窗口看不到?

可能被最小化到任务栏或后台。确保没有安全软件拦截浏览器弹出。


✅ 安装完成

恭喜!你已经完成了全套环境的安装和配置。现在你可以:

  1. ✅ SonicNote MCP — 已配置,可以读取录音
  2. ✅ notebooklm-py — 已安装,可以操作 NotebookLM
  3. ✅ 账号认证 — 已完成,API 可用
  4. ✅ 网络畅通 — 已配置,网络畅通
  5. ✅ 全链路 — 已验证,可正常上传和问答

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐