返回 Skill 列表
extension
分类: 开发与工程无需 API Key

会议任务提取器

从会议逐字稿或会议纪要或会议录音中自动提取待办任务并生成Excel表格。支持对话式逐字稿(含说话人+时间戳)和结构化会议纪要。触发词:会议纪要、会议记录、会议任务、提取任务、任务生成、Excel生成、任务表格。

person作者: catbohehubModelScope

Meeting Task Extractor

从会议纪要/录音中自动提取任务并生成Excel表格的AI Agent Skill。

Agent 行为指令(必读)

当用户要求处理会议录音/纪要时,Agent 必须自动执行完整流程,不要只打印使用说明。

完整工作流(Agent 必须自动串联)

  1. 判断输入类型

    • 音频文件(.m4a/.wav/.mp3/.flac/.ogg)→ 先执行 ASR 转文字
    • 文本文件(.txt/.md/.docx/.pdf)→ 直接读取文本
    • 用户直接粘贴的文本 → 直接使用
  2. ASR 转文字(仅音频输入时)

    python scripts/main.py --audio <音频文件路径> --output <输出文本路径>
    

    如果 ASR 失败,告知用户并提供替代方案(手动提供文本)。

  3. 读取逐字稿/文本: 使用 Read 工具读取 ASR 输出的文本文件或用户提供的文本文件。

  4. Agent 大脑提取任务: 读取文本后,Agent 自己分析内容,提取所有待办任务。提取规则:

    • 识别承诺:"我来搞""我去做""我负责" → 说话人是负责人
    • 识别分配:"你来做""李四你搞一下" → 被指名人是负责人
    • 识别计划:"我们打算""准备做""计划" → 潜在任务
    • 识别决定:"那就这样""定了""确认" → 已确认任务
    • 识别截止:"中午之前""月底""下周三" → 截止日期
    • 识别优先级:"领导看的比较急""很紧急" → 高优先级
    • 任务描述用动词开头,去掉口语词
  5. 生成 tasks.json 文件: 将提取的任务写入临时 JSON 文件,格式:

    [
      {
        "id": "T001",
        "description": "动词开头的任务描述",
        "assignee": "负责人姓名",
        "deadline": "2024-01-15 或 null",
        "priority": "high/medium/low",
        "status": "pending",
        "dependencies": [],
        "notes": "补充说明"
      }
    ]
    
  6. 生成 Excel

    python scripts/main.py --tasks-file <tasks.json路径> --output <输出Excel路径>
    
  7. 清理临时文件(可选):删除 tasks.json

降级策略

  • ASR 不可用:告知用户安装依赖,或请用户手动提供文本
  • openpyxl 不可用:将任务以 Markdown 表格形式直接输出给用户
  • 所有工具都不可用:Agent 直接分析文本,以 Markdown 表格输出任务列表

关键原则

  • 不要只打印帮助信息,要实际执行任务
  • 每一步都要检查结果,失败时及时告知用户
  • 优先使用 Agent 大脑提取任务,不要依赖本地 LLM
  • 输出路径默认放在用户工作目录下

工具脚本

scripts/main.py

支持两种模式:

# 模式1: ASR 音频转文字
python scripts/main.py --audio meeting.m4a --output transcript.txt

# 模式2: 任务JSON → Excel
python scripts/main.py --tasks-file tasks.json --output 会议任务.xlsx

# 可选参数
python scripts/main.py --tasks-file tasks.json --output 会议任务.xlsx \
  --title "会议标题" --date "2024-01-15 14:00" --participants "张三,李四"

依赖

  • openpyxl — Excel 生成(必需)
  • openai-whisperoptimum[openvino] — ASR 语音转文字(仅音频输入时需要)