Skip to content

An Advanced AI Agent that can manage GitHub, LinkedIn, Gmail and Google Calendar. It also has long-term memory.

License

Notifications You must be signed in to change notification settings

aasherkamal216/Project_Aztrogent

Repository files navigation

🤖 Project Aztrogent

Project Aztrogent is an advanced AI Agent orchestration system that helps users manage various tasks efficiently across multiple platforms including LinkedIn, GitHub, Gmail, and Google Calendar. Built with LangGraph and powered by Google Gemini, Aztrogent provides a seamless interface for task delegation and execution. Aztrogent learns from conversations, store important information about the user to improve its responses.

🚀 Features

  • Multi-Agent Architecture: Specialized agents for different services:

    • LinkedIn Agent
    • GitHub Agent
    • Email Agent
    • Calendar Agent
  • Intelligent Task Delegation: Aztrogent agent intelligently delagates tasks to specialized agents (represented as sub-graphs)

  • Memory Management: Built-in memory system for personalized interactions

  • Human-in-the-Loop: Confirmation & Feedback system for critical actions

  • Retry Mechanism: Error handling with automatic retries for Tool Calling

  • Web Search Integration: Real-time information gathering capabilities

Architecture

Graph (Collapsed) Graph (Expanded)

Agents 🤖

1. Aztrogent

It's the main agent that can delegate tasks to other specialized agents. It can search the web and manage memories about the user.

2. LinkedIn Agent

This agent can handle tasks related to LinkedIn. It can upload, delete posts and get user profile information from LinkedIn. This agent can delegate post writing tasks to another sub-agent.

3. GitHub Agent

This Agent can perform certain actions related to GitHub. It can:

  • Search repositories
  • Star repositories
  • View and manage personal repositories
  • Access user profile information
  • View starred repositories
  • Browse user projects
  • Get Followers of the user
  • List repositories for specific users

4. Email Agent

It is specialized at completing Gmail related tasks. Thi agent can:

  • Send, read, and manage emails
  • Handle email threads and replies
  • Organize emails with labels
  • Create email drafts
  • Access user's profile information

5. Google Calendar Agent

This agent can access and manage user's google calendar. It can:

  • Create, Update, Delete Events
  • Add events using natural language
  • Find Events
  • Find free slots on calendar
  • Get Current Data/Time

🛠️ Tech Stack

  • Frameworks: LangGraph, LangMem
  • Language Models:
    • Google Gemini 2.0 Flash
    • Llama 3.3 70b
  • Embeddings: Cohere Multilingual V3
  • Tools:
    • Composio for 3rd party integrations
    • Tavily for web search

📋 Prerequisites

  • Python 3.11+
  • UV package manager
  • Required API keys:
    • Google API Key
    • Groq API Key
    • Composio API Key
    • Tavily API Key
    • Cohere API Key (or OpenAI key is using OpenAI embeddings)
    • LangSmith API Key

🚀 Installation

  1. Clone the repository:
git clone https://github.com/aasherkamal216/project-aztrogent.git
cd aztrogent
  1. Create and Activate Virtual Environment:
uv venv
.venv\Scripts\activate  # On Windows
  1. Install dependencies:
uv sync
  1. Set up environment variables:
cp .env.example .env

Add your API keys in .env file.

  1. Composio Tools Integration For using Composio tools, you need to add Integrations for the services being used. This can either be done manually on Composio Apps (Recommended way) or running the following script:
composio add github likedin gmail googlecalendar
  1. Run the Project in LangGraph studio (In-memory version)
uv run langgraph dev

Note

In LangGraph Studio, each Agent can also be run and tested separately.

🔧 Configuration

The project uses a modular configuration system. Each agent can be configured separately:

  • Aztrogent configuration: src/aztrogent_agent/configuration.py
  • LinkedIn Agent configuration: src/linkedin_agent/configuration.py
  • GitHub Agent configuration: src/github_agent/configuration.py
  • Email Agent configuration: src/email_agent/configuration.py
  • Calendar Agent configuration: src/calendar_agent/configuration.py

👥 Contributing

Feel free to contribute to this project by submitting issues and pull requests.

About

An Advanced AI Agent that can manage GitHub, LinkedIn, Gmail and Google Calendar. It also has long-term memory.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published