meeting-notes-assistant

会议纪要智能助手。使用本地 Whisper 音频转写(离线、隐私安全),生成结构化会议纪要(时间、议题、结论、待办、关键词),提取 Action Items。支持 Word / PDF / 邮件输出,适合录音转写、会议归档与待办分发。触发关键词:「整理会议纪要」、「生成会议纪要」、「录音转纪要」。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "meeting-notes-assistant" with this command: npx skills add liugouxiong/meeting-notes-assistant

Meeting Notes Assistant v1.0.0

功能概述

智能会议纪要助手,基于本地 Whisper 离线转写,提供:

核心功能

  1. 离线语音转写 - 本地 Whisper(base / small / large-v3),数据不上云,隐私安全
  2. 多语言支持 - 中文、英语、日语、韩语自动识别
  3. 结构化纪要 - 时间、议题、结论、待办、关键词、Action Items
  4. 智能解析 - AI 自动提取会议要点,规则解析兜底
  5. 文档导出 - Word / PDF 专业排版
  6. 历史存储 - 本地 SQLite 存储,支持关键词搜索
  7. 模板管理 - 简洁版、专业版、立项会、周会、月度复盘等模板
  8. 批量处理 - 目录级批量转写、批量纪要生成,支持递归扫描

核心优势

  • 完全离线:音频文件仅在您的电脑上处理,无需网络连接
  • 隐私安全:数据不上云,适用于敏感会议场景
  • 零配置使用:无需申请 API 密钥,安装即用
  • 高准确率:Whisper large-v3 模型准确率达 95%+
  • 多领域适配:内置金融词典,支持自定义领域术语

触发词

  • "整理会议纪要"
  • "生成会议纪要"
  • "录音转会议纪要"
  • "帮我做个会议记录"
  • "用立项会模板" / "用周会模板" / "用月度复盘模板"
  • 直接上传音频文件、文档、飞书链接、网页链接

推荐使用流程

场景 A:录音转纪要

  1. 提供音频文件(.mp3 / .m4a / .wav / .ogg)
  2. 先转写,再生成结构化纪要
  3. 预览后导出 Word / PDF / 飞书 / 邮件

飞书用户快速开始:详见 FEISHU_QUICK_START.md

场景 B:文档或链接转纪要

  1. 提供文字稿、飞书文档链接或网页链接
  2. 直接生成结构化纪要
  3. 选择分发方式

快速上手(命令行)

1) 安装依赖

pip install -r requirements.txt

关于 Whisper 模型:

  • 安装时只包含 basesmall 模型
  • large-v3 模型(最高准确率,约 3GB)在首次使用时自动下载
  • large-v3 下载说明:首次选择 large-v3 模型时,系统会提示下载确认
  • 如果您有 GPU(如 RTX 3060+),推荐使用 large-v3 模型
  • 模型下载位置:~/.cache/whisper/(Linux/Mac)或 C:\Users\<用户名>\.cache\whisper\(Windows)

2) 常用脚本

# 语音转文字(推荐直接输出转写文本文件)
# 小模型(推荐日常使用,速度和准确率平衡)
python scripts/transcribe_audio.py demo.m4a --model small

# 大模型(最高准确率,需要 GPU)
python scripts/transcribe_audio.py demo.m4a --model large-v3

# 基础模型(快速测试)
python scripts/transcribe_audio.py demo.m4a --model base

# 生成结构化纪要
python scripts/generate_notes.py transcript.txt --output notes.json

# Windows PowerShell 下如需附带会议信息,建议改用 JSON 文件
python scripts/generate_notes.py transcript.txt --meeting-info-file meeting-info.json --output notes.json

# 导出 Word(内置模板)
python scripts/export_word.py notes.json --template simple --output notes.docx

# 导出 Word(templates.py 管理的模板,如"周会")
python scripts/export_word.py notes.json --template 周会 --output weekly-notes.docx

# 导出 PDF
python scripts/export_pdf.py notes.json --output notes.pdf

# 查看历史会议
python scripts/storage.py list --limit 10

3) 配置 LLM(必做,否则纪要内容为空)

generate_notes.py 默认调用 OpenAI 兼容接口。在 ~/.workbuddy/meeting-notes-config.json 中配置:

{
  "llm_base_url": "https://api.openai.com/v1",
  "llm_api_key": "sk-your-key-here",
  "llm_model": "gpt-4o-mini"
}

国内兼容接口示例(通义千问、DeepSeek、智谱等):

{
  "llm_base_url": "https://api.deepseek.com/v1",
  "llm_api_key": "sk-your-deepseek-key",
  "llm_model": "deepseek-chat"
}

也可以用环境变量覆盖:OPENAI_API_BASE / OPENAI_API_KEY / LLM_MODEL

若无 API Key,使用 --no-llm 参数回退到规则解析(内容较少):

python scripts/generate_notes.py transcript.txt --no-llm --output notes.json

4) 配置邮件发送(可选)

首次发送邮件前,可先运行 SMTP 配置向导:

python scripts/send_email.py --config

也可指定自定义配置文件路径(联调推荐):

python scripts/send_email.py --config --config-path smoke-test/email-config.json

配置会写入 ~/.workbuddy/meeting-notes-config.jsonemail 字段,并保留已有的 LLM 配置。

5) 配置文件位置

  • 配置文件:~/.workbuddy/meeting-notes-config.json
  • 会议主库:~/.workbuddy/meeting_notes.db
  • 频道库:~/.workbuddy/meeting_channels.db
  • 模板目录:~/.workbuddy/meeting_notes_templates/

6) 指定隔离数据库目录(联调 / smoke test 推荐)

storage.py / channels.py / meeting_analytics.py 已支持 --db-dir 参数,也兼容环境变量 WORKBUDDY_HOME

python scripts/storage.py --db-dir smoke-test/real-audio/home/.workbuddy list --limit 10
python scripts/channels.py --db-dir smoke-test/real-audio/home/.workbuddy meetings 1
python scripts/meeting_analytics.py --db-dir smoke-test/real-audio/home/.workbuddy --period week

目录结构

scripts/

  • transcribe_audio.py:语音转文字
  • generate_notes.py:生成结构化纪要 JSON
  • export_word.py:导出 Word 文档
  • export_pdf.py:导出 PDF 文档(Windows 自动优先 reportlab / fpdf2)
  • publish_feishu.py:生成飞书文档 / 群聊 / 任务所需载荷
  • send_email.py:发送会议纪要邮件(支持 --config SMTP 配置向导)
  • storage.py:历史会议保存、搜索、列表、删除(支持 --db-dir
  • templates.py:模板管理
  • channels.py:频道分组管理(支持 --db-dirupdate 修改描述/颜色)
  • meeting_analytics.py:会议频率与关键词分析(支持 --db-dir
  • sentiment_analysis.py:情绪分析(繁简转换 + 口语友好分句 + 逐句聚合)
  • ai_skills.py:销售 / 招聘 / 技术评审 / 金融交流等场景提取
  • export_bitable.py:导出飞书多维表格 JSON(支持 --field-lang zh/en 字段名切换)

references/

  • template_guide.md:Word 模板占位符与结构说明

assets/

  • 预留模板、Logo、附件素材目录

典型命令

导出专业版 Word

python scripts/export_word.py notes.json --template professional --output notes.docx

导出模板管理器中的 Word 模板

python scripts/export_word.py notes.json --template 技术评审 --output tech-review.docx

导出自定义 .docx 占位符模板

python scripts/export_word.py notes.json --template custom --template-path my-template.docx --output custom-notes.docx

导出飞书多维表格数据

python scripts/export_bitable.py notes.json --format json --field-lang zh
python scripts/export_bitable.py notes.json --format records --field-lang en

配置并发送邮件

python scripts/send_email.py --config
python scripts/send_email.py notes.json --to demo@example.com -a notes.docx

会议分析

python scripts/meeting_analytics.py --period week --limit 50

情绪分析

python scripts/sentiment_analysis.py transcript.txt

频道管理

python scripts/channels.py create 产品例会 --description 产品周会
python scripts/channels.py update 1 --description 重点客户复盘频道 --color "#FF6B6B"
python scripts/channels.py add 12 1
python scripts/channels.py meetings 1

使用示例

示例 1:语音转纪要

用户:帮我整理会议纪要
AI:请提供会议录音或相关文档(音频 / 链接)
用户:[上传录音]
AI:好的,已识别语音。现在生成会议纪要...

示例 2:文档链接

用户:https://xxx.feishu.cn/doc/xxx
AI:好的,已读取会议内容。正在生成结构化纪要...

示例 3:会议后分发

用户:把这份纪要导出 Word 再发飞书
AI:先生成结构化纪要,再输出 Word,并给出飞书发布内容

合规声明

数据隐私

  • 完全本地处理:音频文件仅在您的电脑上处理,完全离线,不上传任何云端
  • 隐私安全:适用于敏感会议场景,无需担心数据泄露
  • ⚠️ LLM 解析:转写文本会发送到 LLM API,请查看其隐私政策
  • ⚠️ 无 API Key:不配置 LLM 时可使用规则解析,但内容较少

详细隐私声明:PRIVACY.md

免责声明

  • ⚠️ 转写结果仅供参考,不能保证 100% 准确
  • ⚠️ 重要文档建议人工复核
  • ⚠️ 专业术语可能存在错误识别
  • ❌ 禁止用于非法用途(如未经授权的录音)

详细免责声明:DISCLAIMER.md

使用限制

  • ❌ 禁止用于窃听、监控他人
  • ❌ 禁止用于侵犯他人隐私
  • ❌ 禁止用于违反法律法规的用途
  • ✅ 请仅在合法合规的场景下使用

开源许可

本工具采用 MIT 许可证,详见:LICENSE

前置条件

运行环境

  • Python 3.8+
  • 至少 4GB 内存(建议 8GB+)
  • 首次使用 large-v3 模型需要下载约 3GB 文件

依赖项

  • openai-whisper >= 20231117
  • openai >= 1.0.0
  • python-docx >= 1.1.0
  • 其他依赖见 requirements.txt

最佳实践

Whisper 模型选择指南

模型大小准确率速度推荐场景
tiny~39MB最低(~80%)最快(<1分钟/10分钟音频)快速测试、简单对话
base~140MB较低(~85%)快(<2分钟/10分钟音频)日常使用
small~460MB高(~90%)中等(~5分钟/10分钟音频)推荐日常使用,准确率足够,速度快
large-v3~2.88GB最高(~95%)慢(~15分钟/10分钟音频,GPU 可加速)专业需求、重要会议,需要 GPU 支持

使用建议:

  • 无 GPU:使用 small 模型(已包含在安装包中)
  • 有 GPU(RTX 3060+):使用 large-v3 模型(最高准确率)
  • 首次使用 large-v3:运行时会自动下载约 3GB 模型文件
  • 金融等专业领域:强烈推荐 large-v3small,避免使用 tinybase

模型对比测试结果(解放南路 3.m4a,59分钟金融会议音频)

模型转写时间字符数金融术语识别率适用性
base~2 分钟13,9664.2%(2/48)❌ 不推荐
small~5 分钟13,96664.6%(31/48)✅ 推荐
large-v359 分钟(GPU)13,74370.8%(34/48)✅ 专业推荐

结论:

  • base 模型几乎无法识别专业术语(5G/华为/小米全错)
  • small 模型识别率较高,适合日常使用
  • large-v3 模型对"股权质押/估值/新能源/光伏/风电/产能过剩"等术语识别准确,长句理解更好

技术细节

技术细节

  • 本地 Whisper 更建议使用 Python 3.11 环境;Windows 下脚本会优先尝试自动接入 imageio-ffmpeg 提供的 ffmpeg。
  • transcribe_audio.py 已支持 --model--output,适合直接串联"音频 -> 转写文本 -> 纪要",且默认会做繁体转简体后处理。
  • Windows PowerShell 下传 --meeting-info JSON 字符串容易受引用影响,建议优先使用 --meeting-info-file
  • sentiment_analysis.py 已改为繁简转换 + 口语友好分句 + 逐句聚合,会先按换行/标点切分,再对超长口语段按长度阈值拆分,避免把整段长文本当成一句导致误判。
  • ai_skills.py 已支持金融场景自动识别,适合证券 / 理财 / 量化 / 机构交流录音;--text--json(如 notes.json)两类输入都会先做结构化文本归一,再执行场景识别与字段提取。
  • storage.py / channels.py / meeting_analytics.py 可通过 --db-dir 指向同一隔离数据目录,避免联调时读到不同数据库。
  • export_word.py / export_pdf.py / publish_feishu.py / export_bitable.py 已兼容 generate_notes.py 产出的 content / assignee / deadline 字段,也兼容字符串形式的 action_items
  • export_word.py 已同时支持两类模板:1)templates.py 管理的 JSON 模板(--template <模板名>);2)用户自带 .docx 占位符模板(--template custom --template-path <模板文件>),其中 {{action_items}} 会输出三列表格,详细占位符见 references/template_guide.md
  • export_pdf.py 在 Windows 下会默认按 reportlab -> fpdf2 -> html 的顺序自动导出,避免先尝试 weasyprint 时反复撞系统动态库缺失;非 Windows 仍会优先尝试 weasyprint
  • 若本机连本地 PDF 引擎也未安装,export_pdf.py 才会继续回退输出 HTML 预览文件。
  • export_bitable.py 已支持 --field-lang zh/en;中文模式会输出 会议标题 / 时间 / 参会人 等字段,便于直接导入飞书多维表格。
  • storage.py / channels.py / meeting_analytics.py 可通过 --db-dir 指向同一隔离数据目录,避免联调时读到不同数据库。
  • export_word.py / export_pdf.py / publish_feishu.py / export_bitable.py 已兼容 generate_notes.py 产出的 content / assignee / deadline 字段,也兼容字符串形式的 action_items
  • export_word.py 已同时支持两类模板:1)templates.py 管理的 JSON 模板(--template <模板名>);2)用户自带 .docx 占位符模板(--template custom --template-path <模板文件>),其中 {{action_items}} 会输出三列表格,详细占位符见 references/template_guide.md
  • export_pdf.py 在 Windows 下会默认按 reportlab -> fpdf2 -> html 的顺序自动导出,避免先尝试 weasyprint 时反复撞系统动态库缺失;非 Windows 仍会优先尝试 weasyprint
  • 若本机连本地 PDF 引擎也未安装,export_pdf.py 才会继续回退输出 HTML 预览文件。
  • export_bitable.py 已支持 --field-lang zh/en;中文模式会输出 会议标题 / 时间 / 参会人 等字段,便于直接导入飞书多维表格。
  • 飞书脚本当前输出的是可直接复用的载荷 / 任务清单,便于在工作流里继续调用。

配置管理

查看当前配置:cat ~/.workbuddy/meeting-notes-config.json

修改配置:说 "修改会议纪要配置"

重置配置:说 "重置会议纪要配置"

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Whisper AI Audio to Text Transcriber

Turn raw transcripts into structured summaries, meeting minutes, and action items.

Registry SourceRecently Updated
4190Profile unavailable
General

Meeting Transcript Action Extractor

Extract decisions, action items, and follow-ups from meeting transcripts.

Registry Source
2210Profile unavailable
General

Video Summary

Video summarization for Bilibili, Xiaohongshu, Douyin, and YouTube. Extract insights from video content through transcription and summarization.

Registry Source
1.7K2Profile unavailable
General

Insurance Advisor China

中国大陆AI保险顾问。为个人和家庭提供全方位的保险咨询、产品对比、方案设计、投保指导。当用户询问保险配置、保险方案、产品对比、重疾险/医疗险/寿险/意外险/储蓄险推荐、保费计算、保障缺口分析、需求分析、核保合规、理赔等问题时使用。

Registry SourceRecently Updated
2490Profile unavailable