How tanzeeldevai/ai-meeting-assistant-copilot works
Meeting Copilot is a desktop meeting assistant: users prepare a brief and script, start listening to call audio, review suggested answers on a private overlay, and can use a phone companion or export post-call notes. Electron’s main process coordinates the audio sidecar, answer generation, persistence, and UI surfaces. The graph preserves documented preparation, live-call, privacy, and follow-up capabilities; some domain links rely on README descriptions because their implementation was not sampled.
Main entry points: main.js Electron coordinator · engine.py Audio engine · brain.js Answer orchestration · store.js Brief and script
Components 26
Meeting preparation
- Brief and script
src/main/store.js - Brief context
src/main/brain.js - Speech vocabulary
audio/engine.py
Audio and transcription
- Audio engine
audio/engine.py - Audio capture
audio/capture.py - Platform audio
audio/mac_pa.py - Audio resampling
audio/resampler.py - Speech recognition
audio/stt.py - Streaming recognition
audio/stt_stream.py - Cloud recognition
audio/stt_cloud.py
Live assistance
- Turn buffering
src/main/turnbuffer.js - Answer orchestration
src/main/brain.js - Claude provider
src/main/ai.js - ChatGPT provider
src/main/codex.js - OpenAI provider
src/main/openai.js
Desktop application
- Dashboard
src/dashboard/dashboard.js - Electron coordinator
src/main/main.js - Audio bridge
src/main/bridge.js - Private overlay
src/overlay/overlay.js - Local meeting store
src/main/store.js
Privacy and follow-up
- Phone companion
src/main/companion.js - Capture privacy
src/main/win-capture.js - Summary and actions
src/main/main.js - Word export
src/main/docx.js
Other components
- Meeting user
- Call participants
Connections 28
- Meeting user → Dashboard: prepares in
- Dashboard → Brief and script: saves brief
- Brief and script → Brief context: grounds answers
- Brief and script → Speech vocabulary: teaches terms
- Meeting user → Electron coordinator: starts listening
- Electron coordinator → Audio bridge: starts sidecar
src/main/main.js - Audio bridge → Audio engine: launches over WebSocket
src/main/bridge.js - Audio engine → Audio capture: captures sources
audio/engine.py - Audio capture → Platform audio: opens streams
audio/capture.py - Audio capture → Audio resampling: resamples audio
audio/capture.py - Audio engine → Speech recognition: transcribes locally
audio/engine.py - Audio engine → Streaming recognition: streams recognition
audio/engine.py - Audio engine → Cloud recognition: offers cloud option
- Audio bridge → Electron coordinator: emits transcript events
src/main/bridge.js - Electron coordinator → Turn buffering: buffers turns
src/main/main.js - Electron coordinator → Answer orchestration: requests answers
src/main/main.js - Answer orchestration → Claude provider: uses provider
src/main/ai.js - Answer orchestration → ChatGPT provider: uses provider
src/main/brain.js - Answer orchestration → OpenAI provider: uses fallback
src/main/brain.js - Electron coordinator → Private overlay: routes live answers
- Meeting user → Private overlay: reads suggestions
- Electron coordinator → Local meeting store: saves meeting data
src/main/main.js - Electron coordinator → Phone companion: serves phone view
src/main/main.js - Electron coordinator → Capture privacy: hides overlay
src/main/main.js - Meeting user → Summary and actions: requests follow-up
- Summary and actions → Local meeting store: loads meeting
src/main/main.js - Summary and actions → Word export: exports document
src/main/main.js - Call participants → Audio engine: speaks on call