auto-report-skill/SKILL.md

7.4 KiB
Raw Permalink Blame History

name description version metadata
meeting-report Generates meeting reports from audio recordings using local Whisper ASR 1.0.0
openclaw
requires primaryEnv emoji os
env bins
WHISPER_URL
WHISPER_API_KEY
HOTWORDS_PATH
ffmpeg
ffprobe
pandoc
python3
xelatex
WHISPER_API_KEY 📝
linux
darwin

Meeting Report Skill

Описание / Description

Этот навык транскрибирует аудиозаписи совещаний с помощью локально развёрнутого Whisper ASR, объединяет транскрипции из нескольких источников и создаёт структурированный отчёт о встрече в форматах Markdown и PDF.

Триггеры / Triggers

  • "meeting report", "generate report", "transcribe meeting", "audio report", "отчёт о встрече", "сформируй отчёт", "расшифруй запись"

Инструкции / Instructions

1. Подготовка окружения / Environment setup

Убедитесь, что установлены требуемые переменные окружения:

  • WHISPER_URL URL локального Whisper сервера (например, http://localhost:8000)
  • WHISPER_API_KEY API ключ для доступа к Whisper серверу (Bearer токен)

2. Запуск генерации отчёта / Generate a report

bash scripts/generate_report.sh <meeting-date-dir>

Пример:

bash scripts/generate_report.sh 2026-04-29

Ожидаемая структура:

text 2026-04-29/ ├── .WAV # исходные аудиофайлы (Saramonic, Zoom H2n) ├── transcription/ # создаётся автоматически ├── merged.json # объединённые сегменты ├── merged_plain.txt # сплошной текст для LLM └── report.pdf # финальный отчёт 3. Что делает generate_report.sh Обнаруживает источники Saramonic (.WAV), Zoom H2n (SRXY.WAV, SRMS.WAV)

Конвертирует в MP3 и транскрибирует через Whisper (с поддержкой hotwords)

Объединяет транскрипции из нескольких источников (основной + аудитория)

Конвертирует готовый report.md в PDF с помощью pandoc и xelatex

  1. Ручное использование скриптов / Manual script usage Транскрипция одного файла:

bash bash scripts/transcribe.sh <meeting_dir> <audio.WAV> <output_name> Объединение двух JSON транскрипций:

bash python3 scripts/merge_transcriptions.py <primary.json> <secondary.json> <output_dir> Конкатенация WAV в MP3:

bash bash scripts/concat_wav.sh <output.mp3> <input1.WAV> <input2.WAV> ... Чанковое транскрибирование (очень длинные записи):

bash bash scripts/transcribe_chunked.sh <input.mp3> <output_name> <output_dir> 5. Горячие слова / Hotwords Файл hotwords.txt содержит термины, организацию, имена и аббревиатуры, повышающие точность распознавания. Переопределяется через переменную HOTWORKS_PATH.

6. Инструкции для агента по формированию отчёта / Agent instructions for report generation

После того как скрипт generate_report.sh завершил транскрипцию и объединение источников, агент обязан самостоятельно создать файл report.md в директории встречи.

Требования к отчёту report.md

  • Содержание: детальное, информативное описание хода встречи, включая:
    • обсуждавшиеся темы и вопросы,
    • принятые решения и договорённости,
    • ход встречи
    • назначенные задачи и ответственных,
    • ключевые выводы и следующие шаги.
  • Стиль: корпоративный, деловой, соответствующий ITкомпании (чётко, по делу, без разговорной речи).
  • Формат: Markdown с заголовками, списками, выделением важного.
  • Запрещено: прямые цитаты из транскрипции. Пересказывайте содержание своими словами, сохраняя все смысловые детали.
  • Язык: русский (основной), технические термины допустимы на английском.

Как агент должен действовать

  1. Дождаться завершения работы generate_report.sh (или выполнить его самостоятельно).
  2. Прочитать содержимое файла merged_plain.txt (или merged.txt), который лежит в папке встречи.
    Этот файл содержит полный текст транскрипции без таймкодов (или с ними, но для пересказа удобнее plain).
  3. Создать (перезаписать) файл report.md в директории report, лежащей в папке встречи, следуя указанным выше требованиям.
  4. Сгенерировать PDF одним из способов:
    • Способ А (рекомендуемый): повторно выполнить bash scripts/generate_report.sh <meeting-date-dir>.
      Скрипт обнаружит уже существующий report.md и сконвертирует его в report.pdf.
    • Способ Б: вручную выполнить команду pandoc report.md -o report.pdf --pdf-engine=xelatex ... (параметры см. в скрипте).

Пример запроса агента пользователю

После того как транскрипция готова, агент может написать:

Транскрипция встречи завершена. Я подготовлю на её основе детальный отчёт в корпоративном стиле (без прямых цитат) и сохраню его в report.md, а затем сконвертирую в PDF. Подождите немного.

После выполнения агент сообщает: «Отчёт сгенерирован: /path/to/meeting/report.pdf».

Примечания / Notes Скрипты ожидают локальный Whisper сервер, совместимый с API OpenAI (endpoint /v1/audio/transcriptions), с аутентификацией Bearer.

Для длинных сегментов рекомендуется использовать transcribe_chunked.sh. Он автоматически разбивает аудио по паузам тишины.

Для PDF требуется установленный pandoc, xelatex и шрифты DejaVu.