본문으로 건너뛰기
LVIS AI

Plugin · Meeting

Meeting — 회의 녹음 · STT · 요약 · 브리핑

v0.4.18. PCM16LE 16kHz / 3초 청크를 OpenAI Whisper API 로 stream (gpt-4o-transcribe 기본). 종료 시 meeting.ended 이벤트 + 요약 생성. 세션 / 브리핑 / floating window 까지 18개 도구.

v0.4.18
id: meeting
OpenAI Whisper
16 kHz · 3s chunks
회의 녹음 시작 — 미니 위젯
STT 청크가 실시간으로 흘러오는 화면

녹음 → STT → 종료 → 요약

  1. 01

    녹음 시작 — meeting_start

    위젯/명령 팔레트에서 meeting_start → 마이크 권한 → meeting.started emit. floating window 가능.

  2. 02

    오디오 청크 — PCM16LE 16kHz / 3sec

    PCM16LE

    LOOPBACK_SAMPLE_RATE = 16000, LOOPBACK_CHUNK_SEC = 3 (src/hostPlugin.ts:231-232). meeting_push_chunk 가 PCM 청크 수신.

  3. 03

    STT — OpenAI Whisper

    OpenAIWhisperSttProvider (src/adapters/openaiWhisperSttProvider.ts). 기본 모델 gpt-4o-transcribe. 키: 사이드카 <pluginDataDir>/stt-settings.json 또는 hostApi.resolveApiKey({purpose:"stt"}).

  4. 04

    Transcript 갱신

    청크 단위로 meeting.transcript.updated emit. UI 가 실시간 표시.

  5. 05

    종료 — meeting_stop

    meeting.ended

    meeting.ended emit. 모든 transcript 가 <pluginDataDir>/sessions/ 에 저장 (SessionStore).

  6. 06

    요약 — meeting.summary.created

    호스트 LLM 으로 transcript 요약. work-assistant 가 이 이벤트 구독해 action item 추출.

제공 도구 — 18개

meeting_start · meeting_push_chunk · meeting_stop · meeting_cancel
meeting_transcript · meeting_sessions · meeting_session_detail
meeting_upload_file · meeting_open_url · meeting_open_floating_window
meeting_open_briefing · meeting_get_briefing · meeting_list_briefings
meeting_bulk_upsert_briefings · meeting_delete_briefing
meeting_update_summary · meeting_regenerate_summary · meeting_update_stt_config

이벤트

  • Emitted: meeting.started, meeting.ended, meeting.error, meeting.transcript.updated, meeting.summary.created, meeting.summary.degraded, meeting.briefing.opened.
  • Subscribed: host.theme.changed — floating window 테마 동기화.

스토리지

~/.lvis/plugins/meeting/
├── sessions/           # SessionStore (hostPlugin.ts:901,920)
├── briefings.json      # BriefingStore (persistence/briefingStore.ts:23)
└── stt-settings.json   # STT 키/모델 사이드카 (hostPlugin.ts:749)
STT 모델 옵션
plugin.json:606-611 — gpt-4o-transcribe-diarize, gpt-4o-transcribe (기본), gpt-4o-mini-transcribe, whisper-1. 설정 변경: meeting_update_stt_config 도구.
테스트 — vitest 21 files / 193 cases
프레임워크는 vitest (mocha 아님). package.json devDeps vitest@^4.1.5. 명령: bun run build && vitest run. 과거 CLAUDE.md 의 “STT 7/7” 표기는 stale — 현재 21 files / 193 cases.