Overview
Anar Minutes transforms meeting recordings into structured, actionable intelligence. Upload audio from cabinet sessions, committee reviews, or departmental standups, and Minutes produces speaker-attributed transcripts, AI-generated summaries with agenda points, key decisions, and automatically extracted action items.
Government organizations generate thousands of hours of meeting audio. Critical decisions, commitments, and follow-ups are buried in recordings that nobody has time to re-listen to. Minutes solves this by converting audio into searchable, structured meeting records with assigned action items and decision tracking.
Key Capabilities
Audio Transcription
Powered by Whisper Large V3 via Groq, Minutes transcribes Arabic and English meeting audio with speaker diarization. Each transcript segment includes the speaker label, start/end timestamps, and text content, enabling precise attribution of who said what.
AI Summarization
After transcription, Minutes uses LLM analysis to produce structured summaries containing:
- Agenda items -- Topics discussed during the meeting
- Key points -- Important information shared or presented
- Decisions -- Formal decisions made during the meeting
- Action items -- Tasks assigned to specific people with deadlines
- Next steps -- Follow-up activities and future meeting topics
Action Item Extraction
Minutes automatically identifies commitments, assignments, and deadlines from meeting transcripts. Each action item includes a description, assignee, deadline, and priority level. Action items can be tracked, reassigned, and marked complete through the dashboard or API.
Meeting Templates
Seven meeting type templates provide domain-specific summarization prompts and section structures optimized for different government meeting formats: cabinet sessions, committee meetings, performance reviews, standups, board meetings, workshops, and general meetings. Templates support full CRUD operations for custom template creation and management.
Meeting Detail View
A comprehensive meeting detail page shows the full transcript with speaker attribution, AI-generated summary sections, action items with status tracking, and meeting metadata. Transcription status updates via polling for real-time progress tracking.
Chat Export
Export meeting transcripts and summaries directly to Anar Chat, enabling follow-up Q&A conversations based on meeting content.
Architecture
Minutes runs a FastAPI backend on port 8013 and a Vite+React dashboard on port 3013.
The backend integrates with Groq for Whisper transcription and LLM summarization. Audio files up to 50 MB are accepted. Meeting data -- transcripts, summaries, action items, and metadata -- is persisted in the database.
Audio Limits
Audio uploads are limited to 50 MB. Supported formats include mp3, wav, m4a, ogg, and webm.
Quick Start
cd minutes/backend
uv sync
uv run uvicorn anar_minutes.main:app --reload --port 8013
Create a meeting and upload audio:
# Create the meeting
curl -X POST http://localhost:8013/api/v1/meetings \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-d '{
"title": "Q4 Budget Review",
"meeting_type": "review",
"language": "ar",
"participants": ["Ahmed Al Mansoori", "Fatima Al Hashimi"]
}'
# Upload audio
curl -X POST http://localhost:8013/api/v1/meetings/{meeting_id}/upload \
-H "Authorization: Bearer $TOKEN" \
-F "file=@budget_review.mp3"
Dashboard
The Minutes dashboard provides:
- Meeting List -- Browse, search, and filter meetings by type, status, and date
- Meeting Detail -- View transcripts, summaries, and action items for each meeting
- Action Items -- Track, assign, and update action items across all meetings
- Templates -- Manage meeting templates with custom section structures
Observability
Minutes is instrumented with OpenTelemetry via anar_shared.setup_otel(). When OTEL_EXPORTER_OTLP_ENDPOINT is set, traces, logs, and metrics are exported to the OTel Collector.
MCP Server
Minutes exposes a Model Context Protocol server at /mcp via FastApiMCP, enabling AI assistants to create meetings, trigger transcription, and query action items programmatically.
Gateway Integration
When GATEWAY_URL is set, Minutes routes LLM calls through Anar Gateway for unified cost tracking and safety scanning.
Test Suite
279 tests cover transcription, transcription polling, summarization, action item extraction, meeting templates (CRUD), meeting detail, Chat export, and API endpoints.
cd minutes/backend && uv run pytest
Next Steps
- Transcription -- Audio upload, Whisper STT, and speaker diarization
- Templates -- Meeting categories, Arabic support, and custom sections
- Action Items -- Extraction, tracking, assignment, and priority management
- API Reference -- Full endpoint documentation