Aiva
Aiva is an AI system designed to automate and improve the job search process for developers and professionals. It acts as a team of specialized agents, searching for relevant job openings, analyzing them, and creating detailed reports. These reports include job descriptions, salary information, and tailored advice on how to apply and prepare for interviews. Aiva delivers these reports directly to your inbox, providing a comprehensive and professional overview of potential opportunities. The system uses advanced techniques to find contact information for recruiters and personalize recommendations based on your profile. It streamlines a traditionally time-consuming and often frustrating task, freeing up valuable time for job seekers. Aiva's intelligent orchestration and data-driven approach significantly enhance the efficiency and effectiveness of the job search.
Aiva solves the problem of a disorganized and overwhelming job search, which often involves manually sifting through numerous listings and crafting individual applications. Instead of spending hours on repetitive tasks, users can leverage Aiva to automate the process and receive curated, insightful reports, allowing them to focus on the most promising opportunities.
CAPABILITIES & CONSTRAINTS
README
# Aiva: Intelligent Job Search Orchestrator
Aiva is a sophisticated, multi-agent AI system designed to autonomously manage and streamline the job search lifecycle. By orchestrating a team of specialized agents, Aiva transforms the chaotic process of job hunting into a structured, data driven, and highly professional workflow.
Designed for developers and professionals who value efficiency, Aiva doesn't just find links, it researches, analyzes, formats, and delivers a comprehensive intelligence report directly to your inbox.
## 🚀 Capabilities
Aiva operates as a cohesive unit of four specialized agents, each handling a critical phase of the operation:
1. **Job Search & Analysis:**
- Scans the web for real-time job openings based on your specific role and location (e.g., Remote, Lahore).
- Calculates a **"Fit Score" (0-100)** by comparing your profile against job descriptions.
- **Deep Research:** If contact info is missing, it actively searches the internet to find HR or Recruiter details.
2. **Professional Reporting:**
- Generates a modern, corporate-grade **A4 PDF Report**.
- Includes essential details: Source URLs, Full Descriptions, Stipends/Salaries.
- Adds value with **"How to Apply"** guides (including custom DM templates) and **"Interview Prep"** Q&A tailored to each specific role.
3. **Cloud Integration:**
- Seamlessly handles file operations by uploading generated reports to **ImageKit** for secure, persistent hosting.
4. **Executive Delivery:**
- Compiles the final intelligence package into a high-end email.
- Delivers a direct download link via **Resend**, ensuring you have immediate access to your opportunities.
## 🧠 The Agentic Team
- **JobSearchAgent (Research Lead):** Responsible for finding high quality leads and ensuring data completeness.
- **ReportCreationAgent (Report Generator):** Transforms raw data into a visually appealing and readable PDF asset.
- **FileUploadAgent (Cloud Manager):** Manages the migration of local assets to the cloud.
- **EmailSendingAgent (Email Reporter):** Ensures the final product reaches you with a professional presentation.
## 🛠️ Technology Stack
- **Framework:** [AutoGen](https://microsoft.github.io/autogen/) (Agent Orchestration)
- **Intelligence:** Azure OpenAI (GPT-4o-mini)
- **Search Engine:** Tavily API
- **Document Engine:** WeasyPrint
- **Cloud Storage:** ImageKit
- **Email Service:** Resend
- **Language:** Python
## ⚡ Quick Start
### Prerequisites
Ensure you have Python installed. This project manages dependencies using `uv` (recommended) or `pip`.
### 1. Configuration
1. Clone the repository.
2. Copy `.env.example` to `.env`.
3. Fill in your API keys:
- `AZURE_OPENAI_KEY` & `AZURE_OPENAI_ENDPOINT`
- `TAVILY_API_KEY` (Search)
- `RESEND_API_KEY` (Email)
- `IMAGEKIT_PRIVATE_KEY` (Storage)
- `EMAIL` (Your receiving email address)
### 2. Personalization
Open `app/config.py` to customize:
- **`user_profile`**: Define your skills, experience, and career goals. This drives the "Fit Score" and application advice.
- **`job_roles`**: List the exact job titles you want Aiva to hunt for.
- **`country` / `city`**: Set your target location.
### 3. Execution
Run the main orchestration script:
```bash
# Using uv (Recommended)
uv run main.py
# Or standard Python
python main.py
```
Aiva will process each job role sequentially to ensure high-quality output, printing its progress to the console.
## 📜 License
[MIT](LICENSE)
PUBLIC HISTORY
IDENTITY
Identity inferred from code signals. No PROVENANCE.yml found.
Is this yours? Claim it →METADATA
README BADGE
Add to your README:
