Never miss an interview again.
Turn recruiting emails into native reminders with AI-powered parsing.
Features โข Quick Start โข Installation โข Usage โข Configuration
You're job hunting. Your inbox is flooded with recruiting emailsโinterview invites, online assessments, coding challenges, deadlines. The important ones get buried under "application received" receipts and spam.
You miss an interview. Or show up at the wrong time. Or forget that coding test deadline.
OfferCatcher automatically scans your emails, extracts recruiting events using AI, and creates native reminders on your iPhone/Mac.
๐ง Email arrives โ ๐ค AI parses it โ ๐ Reminder created
No regex. No brittle pattern matching. Just intelligent extraction that works across all email formats and languages.
- ๐ค AI-Powered Parsing โ LLM understands any email format, any language
- ๐ Native Apple Integration โ Works with Mail.app and Reminders.app
- ๐ฑ Cross-Device Sync โ Reminders appear on iPhone, iPad, Mac via iCloud
- โก Fully Automated โ Set up once, runs via OpenClaw heartbeat
- ๐ Universal Language Support โ Chinese, English, Japanese, you name it
- LINUX DO โ ไธญๆๅผๅ่ ็คพๅบ
# Install
curl -sSL https://raw.githubusercontent.com/NissonCX/offercatcher/main/install.sh | bash
# Configure
echo 'mail_account: "Gmail"' >> ~/.openclaw/offercatcher.yaml
# Scan
python3 ~/.openclaw/workspace/skills/offercatcher/scripts/recruiting_sync.py --scan-onlyOpenClaw will automatically parse the results and create reminders.
- macOS (Apple Mail & Reminders integration)
- Python 3.11+
- OpenClaw (optional, for automation)
curl -sSL https://raw.githubusercontent.com/NissonCX/offercatcher/main/install.sh | bashgit clone https://github.com/NissonCX/offercatcher.git
cd offercatcherpython3 scripts/list_mail_sources.pyThis shows all accounts configured in Apple Mail:
[
{"account": "Gmail", "mailbox": "INBOX"},
{"account": "iCloud", "mailbox": "INBOX"}
]Create ~/.openclaw/offercatcher.yaml:
mail_account: "Gmail" # Your Apple Mail account name
mailbox: "INBOX" # Mailbox to scan
days: 2 # Scan last N days
max_results: 60 # Max emails to processpython3 scripts/recruiting_sync.py --scan-onlyOutput (JSON for OpenClaw LLM to parse):
{
"emails": [
{
"message_id": "12345",
"subject": "Interview Invitation - Software Engineer",
"sender": "recruiting@company.com",
"received_at": "2026-04-01 10:00",
"body": "Dear Candidate, Your interview is scheduled for..."
}
]
}OpenClaw automatically:
- Parses each email with LLM
- Extracts company, event type, time, link
- Creates native Apple Reminders
Or manually apply parsed events:
python3 scripts/recruiting_sync.py --apply-events /tmp/events.jsonpython3 scripts/manual_event.py \
--title "Google Interview" \
--due "2026-04-15 14:00" \
--notes "Link: https://meet.google.com/xxx"โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ --scan-only โ โโโถ โ OpenClaw LLM โ โโโถ โ --apply-events โ
โ Scan emails โ โ Parse events โ โ Create reminder โ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
| Regex | LLM |
|---|---|
| Breaks on new formats | Adapts to any format |
| Company-specific rules | Works for any company |
| Manual maintenance | Zero maintenance |
| Language-specific | Universal language support |
| Option | Default | Description |
|---|---|---|
--mail-account |
all | Apple Mail account name |
--mailbox |
INBOX | Mailbox folder to scan |
--days |
2 | Scan last N days |
--max-results |
60 | Max emails to process |
--dry-run |
false | Test without creating reminders |
--verbose |
false | Enable debug logging |
OFFERCATCHER_MAIL_ACCOUNT="Gmail"
OFFERCATCHER_DAYS=7
OFFERCATCHER_MAX_RESULTS=100
OFFERCATCHER_LOG_LEVEL=DEBUGThe --apply-events command accepts:
{
"events": [
{
"id": "unique-id",
"company": "Google",
"event_type": "interview",
"title": "Google SWE Interview",
"timing": {"start": "2026-04-15 14:00", "end": "2026-04-15 15:00"},
"role": "Software Engineer",
"link": "https://meet.google.com/xxx"
}
]
}Event types: interview, ai_interview, written_exam, assessment, authorization, deadline
Reminder List |
Reminder Detail |
offercatcher/
โโโ scripts/
โ โโโ recruiting_sync.py # Main script (scan/apply)
โ โโโ apple_reminders_bridge.py # Apple Reminders bridge
โ โโโ manual_event.py # Manual event entry
โ โโโ list_mail_sources.py # List Mail accounts
โโโ tests/ # Unit tests
โโโ SKILL.md # OpenClaw skill definition
โโโ README.md # This file
Contributions are welcome! Please feel free to submit a Pull Request.
Made with โค๏ธ for job seekers everywhere

