ai-job-search-dev/ai-job-search

The job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.

AI Job Search – an AI‑powered job‑application assistant

What it is – A self‑hosted workflow that turns Claude Code (Anthropic’s code‑assistant CLI) into a full‑stack job‑search companion. It lets you store a personal career profile, scrape job boards, automatically evaluate fit, draft a LaTeX CV and cover letter, have a reviewer agent critique them, and finally produce ready‑to‑send PDFs. The core commands are /setup, /scrape and /apply; a dozen auxiliary commands handle interview prep, outcome tracking, Notion/Gmail sync, skill‑gap analysis, and custom templates.


Key concepts & how it works

  1. Profile creation (/setup) – Import existing documents (CV PDF, LinkedIn export, diplomas, etc.) or answer an interview‑style questionnaire. The data is stored in documents/ and used by the Claude skill files under .claude/skills/job-application-assistant/.
  2. Job search (/scrape) – Runs a set of portal‑specific CLI tools (Jobindex, Jobnet, Jobbank, LinkedIn, freehire.me, etc.) written in TypeScript/Bun. Results are deduplicated and scored against a five‑dimension fit framework defined in 04‑job‑evaluation.md.
  3. Application (/apply <url>) –
    • Parses the posting (or a pasted description).
    • Scores fit and decides whether to proceed.
    • Drafts a CV and cover letter in LaTeX using the built‑in templates (cv/main_example.tex, cover_letters/cover.cls).
    • Spawns a reviewer Claude agent that researches the company and gives feedback.
    • Iterates until the reviewer is satisfied, then compiles the PDFs (lualatex for the CV, xelatex for the cover letter).
    • Runs an optional ATS check (pypdf or pdftotext) to ensure the PDFs are machine‑readable.
  4. Post‑application tools –
    • /interview builds a prep pack with STAR examples and a mock interview.
    • /outcome records interview results, archives the materials, and can draft polite follow‑ups.
    • /rank batch‑scores newly scraped jobs and returns a shortlist.
    • /expand enriches the profile from public sources (GitHub, Kaggle, etc.).
    • /upskill produces a skill‑gap heatmap and a learning plan.
    • /html-report creates an offline dashboard from job_search_tracker.csv.
    • /notion-sync and /gmail-sync provide optional read‑only views in Notion and automatic status detection from Gmail.

Prerequisites (as listed in the README)

  • Claude Code CLI (requires a paid Anthropic subscription or API credits).
  • Python 3.10+.
  • Bun (for the portal‑search CLIs).
  • LaTeX distribution with lualatex and xelatex (TeX Live, MacTeX, TinyTeX, or MiKTeX). Extra packages are listed in SETUP.md.
  • Optional: pypdf (for ATS checks) and a PDF‑text extractor (poppler-utils or pdftotext).

Quick‑start flow (from the README)

# 1. Fork & clone (keep a private fork if you store personal data)
gh repo fork MadsLorentzen/ai-job-search --clone
cd ai-job-search

# 2. Install portal CLIs (runs bun install in each .agents/skills/*/cli/)
python3 tools/install_portal_clis.py

# 3. Initialise your profile via Claude Code
claude   # opens Claude Code REPL
/setup   # follow the wizard – import docs or answer questions

# 4. Search for matching jobs
/scrape

# 5. Apply to a chosen posting (URL or pasted description)
/apply https://jobindex.dk/job/1234567

The README also points to a YouTube walkthrough for visual guidance.


File layout (high‑level)

  • CLAUDE.md – top‑level candidate profile and workflow rules.
  • .claude/commands/ – markdown definitions for each slash command.
  • .claude/skills/ – the core “job‑application‑assistant” skill and supporting skills (job-scraper, upskill).
  • .agents/skills/ – individual job‑portal CLI tools.
  • cv/, cover_letters/ – LaTeX templates.
  • documents/ – place for your personal CV, LinkedIn export, diplomas, reference letters, and past applications.
  • tools/ – helper scripts for CI, skill linting, PDF verification, salary lookup, etc.
  • job_search_tracker.csv – the spreadsheet that powers the HTML dashboard.
  • SETUP.md – detailed installation and configuration guide.

Who might use this?

  • Professionals who want an automated, reproducible way to tailor applications using a large‑language‑model assistant.
  • Job‑seekers comfortable running a local Python/Bun/LaTeX stack and who already have a Claude Code subscription.
  • Developers looking to extend the framework to other markets by adding new portal skills (/add-portal).

Caveats & security notes (as per README)

  • The workflow does not sandbox the job posting; it strips hidden text and instruction‑shaped lines but you should still review fetched content before sending.
  • Personal data written by /setup is stored in tracked files; keep the repository private if you don’t want that data public.
  • Claude Code is a paid service; there is no free tier.
  • The project is not affiliated with Anthropic; any claims of sponsorship are scams.

Bottom line: AI Job Search is a concrete, open‑source automation pipeline that leverages Claude Code to turn raw job listings into polished, model‑reviewed application PDFs, with a rich set of auxiliary tools for tracking, interview preparation, and skill development.

Related

  • Project
  • Project
  • Project
  • Project