This project aims to provide an intelligent agent capable of actively participating in meetings, understanding the discussed topics, and generating actionable items. This project structure suggests a focus on real-time voice processing from 2 separate audio streams of a microphone and system audio from browser and then taking action on platforms lik Google Calendar, Slack, Brave Browser and Github.
- Real-time Voice Processing: The
appdirectory suggests real-time audio capture and processing capabilities. - Action Item Extraction: The agent is intended to identify and extract action items from meeting discussions.
- Web-based Interface: The
appdirectory includes a web interface for interacting with the agent.
Before you begin, ensure you have the following installed:
- Python 3.10+
- Node.js and npm (Node Package Manager) (for the web app)
- uv (Ultraviolet package manager) - used for managing python packages
-
Clone the repository:
git clone https://github.com/Aseer-Ahmad/Meeting-ActionAgent.git cd Meeting-ActionAgent -
Set up the Python environment:
Install python dependencies. It is highly suggested to use a virtual environment.
# Create and activate a virtual environment (optional but recommended) python3 -m venv .venv source .venv/bin/activate # On Linux/macOS # .venv\Scripts\activate # On Windows uv pip install -r requirements.txt
-
API keys:
Set the following API keys in your .env file. ACI_API_KEY refers to Aci.dev (https://www.aci.dev/) for MCP and tool integration.
OPENAI_API_KEY, ACI_API_KEY -
Run the application server:
cd app uv run python server.pyThis will start the FastAPI server, likely on
http://localhost:8000. -
Access the web interface:
Open your web browser and navigate to the address provided by the server (usually
http://localhost:8000).
- Connect: Click the "Connect" button on the web interface to establish a audio streaming from a browser window and establish a session.
- Speak: The application should automatically start capturing audio. Speak naturally into your microphone.
- Observe: Monitor the agent's as events, tools called and agent hand-offs.
The app/server.py file likely contains configuration options for the FastAPI server. Inspect this file for customizable settings such as:
- Port number: The port on which the server listens for connections.
- Agent parameters: Parameters that control the behavior of the action extraction agent.
- Audio processing settings: Settings related to audio capture and processing.
Contributions are welcome! To contribute to this project, follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Implement your changes and write appropriate tests.
- Submit a pull request with a clear description of your changes.