Skip to content

Automate finding your YC cofounder. Uses AI to evaluate candidates and generate personalized messages, with a human-in-the-loop review system so you stay in control.

License

Notifications You must be signed in to change notification settings

CodeWithTheDoctor/YC-Auto-Cofounder-Matcher

Repository files navigation

YC Cofounder Matcher

Automate finding your YC cofounder. Uses AI to evaluate candidates and generate personalized messages, with a human-in-the-loop review system so you stay in control.

Interactive Mode Screenshot

⚠️ Use Responsibly: This automates YC Startup School, which may violate their TOS. Educational purposes only. You assume all risk.

Quick Start

1. Install:

python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
playwright install firefox  # More stable on macOS
# Or: playwright install chromium

2. Configure:

cp .env.example .env
# Add your Gemini API key: https://aistudio.google.com/app/apikey

3. Customize prompts (⚠️ IMPORTANT - do this first!):

cp prompts/evaluation.example.txt prompts/evaluation.txt
cp prompts/invitation.example.txt prompts/invitation.txt

Then edit these files to match YOUR preferences:

  • prompts/evaluation.txt - Define what makes a good cofounder match for YOU (your location, what you bring, what you're looking for)
  • prompts/invitation.txt - Your message template (uses {first_name} and {bio} placeholders)

4. Authenticate once:

python main.py --auth
# Browser window opens → Log into YC account → Press Enter in terminal → Done

5. Start matching:

python main.py --interactive --max-invites 5

How It Works

Interactive mode (recommended):

  • For each candidate: See their score, reasoning, and generated message
  • Press Y to send, N to skip, E to edit, Q to quit
  • Take your time - no timeout on decisions
  • Color-coded scores: Green ≥7, Yellow 5-6, Red <5

Other modes:

python main.py --dry-run        # Test without sending
python main.py --auto           # Fully automated (risky!)

Options

Flag What it does
--max-invites N Limit per run (default: 10)
--headless true Hide browser window (default: visible)
--evaluation-threshold N Min score to send (default: 5)

What You Get

Everything logged to logs/invitations.csv:

timestamp,candidate_id,name,score,reasoning,action,message_preview,mode
2024-01-15 12:35:08,alice-smith,Alice Smith,8,"Strong match",sent,"Hi Alice...",interactive

Cost: ~$0.01-0.02 per 100 candidates (Gemini Flash is cheap)

Common Issues

"Session expired"python main.py --auth

"No candidates found" → YC changed their page structure. Update selectors in:

  • browser.pyFeedNavigator.get_candidate_cards()
  • content_parser.pyProfileParser methods
  • main.pyCofounderMatcher._send_invitation()

Use Chrome DevTools to inspect elements and find new selectors.

Rate limited → Reduce MAX_INVITES_PER_RUN in .env, increase delays

Tips

  • Start with --max-invites 5 to test
  • Run max once per day
  • Use edit mode (E) for high-value candidates
  • If scores seem off, refine prompts/evaluation.txt
  • Stop immediately if YC flags your account

Under the Hood

  • Opens profiles in new tabs (mimics real browsing)
  • Random delays (3-8s) between actions
  • Gemini evaluates each candidate (1-10 score)
  • Generates personalized messages using their profile
  • Retries API calls 3x with exponential backoff
  • Stops after 5 consecutive errors

License

MIT - Educational purposes only. Not responsible for account bans. Use at your own risk.

About

Automate finding your YC cofounder. Uses AI to evaluate candidates and generate personalized messages, with a human-in-the-loop review system so you stay in control.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published