AI-powered meeting assistant with real-time transcription and roast mode
Project description
SCRUM-CLI
AI meeting assistant that transcribes audio and roasts your corporate buzzwords.
What it does
- Transcribes meeting audio with speaker names
- Interactive AI chat about your meetings
/ridiculousmode roasts meeting culture with buzzword counts- Vector search across all meetings
- Real-time transcription
Install & Run
Quick Install with uv (Recommended)
# Install uv package manager
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone and install
git clone https://github.com/Rachit-Gandhi/scrum-cli.git
cd scrum-cli
uv sync
cp .env.example .env
# Add your API keys to .env
uv run scrum-cli transcribe meeting.mp3 --chat
Traditional pip install
pip install scrum-cli
cp .env.example .env
# Add your API keys to .env
scrum-cli transcribe meeting.mp3 --chat
API Keys Needed
Get these and put in .env:
GEMINI_API_KEYfrom Google AI StudioHUGGING_FACE_TOKENfrom HuggingFace
โ ๏ธ HACKATHON JUDGES: Please use your own API keys. The ngrok tunnel below will be updated during judging.
Live Demo Access
Ngrok URL: [WILL BE UPDATED FOR JUDGING]
# This will be replaced with live tunnel URL
Chat Commands
/ridiculous # Roast mode with buzzword analysis
/summary # Meeting summary
/actionitems # Extract action items
/stats # Speaker stats
/whosaid # Search who said what
Example Output
๐ญ ROAST ANALYSIS
โโโ ๐ฏ Buzzwords: "synergy" (7x), "leverage" (12x)
โโโ ๐ฃ๏ธ Mike dominated 67% of airtime
โโโ ๐ Grade: D+ ("More buzzwords than decisions")
โโโ ๐ "Let's leverage synergistic solutions"
โ๏ธ Requirements
- Python 3.9+
- Required API Keys:
- Google Gemini API key (required)
- HuggingFace token (for speaker diarization)
๐ Usage Examples
Basic Transcription
# Transcribe an audio file
scrum-cli transcribe meeting.mp3
# With speaker diarization
scrum-cli transcribe meeting.mp3 --speakers
Interactive Chat Interface
# Start transcription with chat interface
scrum-cli transcribe meeting.mp3 --chat
Available Chat Commands
/help # Show all commands
/summary # Professional meeting summary
/ridiculous # Hilarious roast analysis ๐ญ
/actionitems # Extract action items
/decisions # Show decisions made
/stats # Speaker statistics
/whosaid # Find who said what
/live # Recent transcription (during streaming)
/export # Save chat history
/quit # Exit
Chat Examples
> Who talked the most in the meeting?
๐ค Mike dominated with 67% of speaking time (12.4 minutes)
> /ridiculous
๐ญ ROAST MODE ACTIVATED!
*Generates hilarious analysis with buzzword counts and witty observations*
> What were the main action items?
๐ Found 3 action items:
1. Sarah will update the budget by Friday
2. Mike to schedule follow-up with clients
3. Team to review proposal draft
๐๏ธ Architecture
scrum-cli/
โโโ scrum_cli/ # Main package
โ โโโ main.py # CLI entry point
โ โโโ chatbot_ui.py # Rich TUI chat interface
โ โโโ live_transcription.py # Real-time audio processing
โ โโโ memory_store.py # Vector database integration
โ โโโ proxy_server.py # FastAPI backend for AI
โ โโโ roast_engine.py # Meeting culture analysis
โ โโโ ngrok_manager.py # Tunnel management
โโโ transcription-tool/ # Audio processing utilities
๐ฏ Features in Detail
Real-Time Transcription
- Supports multiple audio formats (MP3, WAV, M4A, etc.)
- Advanced speaker diarization using PyAnnote
- Streaming transcription with live updates
- Meeting data persistence with vector search
AI-Powered Analysis
- Professional Mode: Extract action items, decisions, and summaries
- Roast Mode: Hilarious analysis of meeting culture and patterns
- Natural Language Queries: Ask questions about meeting content
- Contextual Memory: Remembers past meetings and speaker preferences
Meeting Analytics
- Speaker time distribution and statistics
- Buzzword detection and counting
- Meeting efficiency scoring
- Personality profile generation
- Export capabilities for further analysis
๐ง Development
Setting up Development Environment
With uv (Recommended)
# Clone repository
git clone https://github.com/Rachit-Gandhi/scrum-cli.git
cd scrum-cli
# Install dependencies and set up virtual environment
uv sync
# Run in development mode
uv run scrum-cli --help
# Run tests
uv run pytest
Traditional setup
# Clone repository
git clone https://github.com/Rachit-Gandhi/scrum-cli.git
cd scrum-cli
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install in development mode
pip install -e ".[dev]"
# Run tests
pytest
Project Structure
The project follows a modular architecture:
scrum_cli/- Main package with core functionalitytranscription-tool/- Audio processing and transcription utilities- Tests and development files are hidden via
.gitignore
๐ฆ PyPI Deployment
Note: PyPI upload is currently in progress. For now, please use the local installation method with uv or pip from the source code.
The project is configured for PyPI publication with:
- Proper
setup.pyandpyproject.tomlconfiguration - Version management and dependency specifications
- Comprehensive metadata and classifiers
- Development dependencies separation
- GitHub Actions workflow for automated publishing
Sorry for the inconvenience - we're working on getting this published to PyPI soon!
๐ค Contributing
We welcome contributions! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Support & Community
- ๐ Bug Reports: GitHub Issues
- ๐ฌ Feature Requests: GitHub Discussions
- ๐ง Contact: Create an issue for support
๐ Acknowledgments
- Built with Rich for beautiful terminal UI
- Powered by Google Gemini for AI capabilities
- Uses PyAnnote for speaker diarization
- Audio processing with Whisper and Pydub
Built with โค๏ธ for developers who believe meetings should be both productive and entertaining.
Try /ridiculous mode - you won't regret it! ๐ญ
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file scrum_cli-1.0.0.tar.gz.
File metadata
- Download URL: scrum_cli-1.0.0.tar.gz
- Upload date:
- Size: 49.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d2d22b7d4f7402e6e4ee60c5478428307d201a163ac5550556aa6bf55d64d4eb
|
|
| MD5 |
288ff13bfa35de42a7daeaca45dac0d7
|
|
| BLAKE2b-256 |
e6c4bcb51f63b8b82cc90e8a454ca6bc4114a7ee721f356e9d322005a88d0659
|
File details
Details for the file scrum_cli-1.0.0-py3-none-any.whl.
File metadata
- Download URL: scrum_cli-1.0.0-py3-none-any.whl
- Upload date:
- Size: 44.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c7c0bd67d6e738728ca27bfb9c2d9c43ec9aa889172f08a9f462ecdf2683cff9
|
|
| MD5 |
11dc83aef17a22f437e836da8a301844
|
|
| BLAKE2b-256 |
27a44deb424e14dcf38de2d1f79b309a93ab431b38e36ea1de24a008bb05966e
|