AutoOutreach-AI is an automated outreach pipeline that generates and sends context-aware, personalized emails to professors and hiring managers.
The system uses a Google Sheet as the control plane. Contacts, metadata, and outreach status are managed in the sheet, while the pipeline decides:
• what email to generate
• what resume to attach
• when to send it
This converts manual cold emailing into a structured automation workflow.
- Personalized email generation using an LLM
- Targeted outreach (professors / recruiters / hiring managers)
- Automatic resume selection based on role or domain
- Google Sheets–driven workflow
- Email delivery via Gmail API
- Outreach logging and status tracking
- Duplicate-send safeguards
Google Sheets → Contact + metadata source
LLM Engine → Generates email content
Resume Selector → Chooses correct resume version
Gmail API → Sends emails
Updating the sheet automatically changes the pipeline's behavior.
Because the system interacts with Google services, users must configure their own credentials.
git clone https://github.com/Bstok/AutoOutreach-AI
cd AutoOutreach-AI
pip install -r requirements.txt
- Go to Google Cloud Console
- Create a project
- Enable:
- Google Sheets API
- Gmail API
- Create OAuth credentials
- Download the
credentials.jsonfile
Place credentials.json in the project root.
Create a sheet with columns similar to:
Name | Organization | Role | Email | Category | Resume_Tag | Status | Notes
The pipeline reads rows marked for outreach with Status = 'To Do'.
python src/main.py
The system will:
- Fetch contacts from the sheet
- Generate personalized emails
- Select the appropriate resume
- Send the email using Gmail API
- Update the outreach status
Functional system requiring local API credential configuration.