This guide covers every prerequisite for AI Job Search in full detail. The Quickstart gets you running in 15 minutes on the happy path; come here when you need exact install commands for your platform, want to understand why each dependency is required, or are troubleshooting a specific tool.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/MadsLorentzen/ai-job-search/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Claude Code
Claude Code is Anthropic’s CLI that powers the entire framework. Install it globally with npm:Python 3.10+
Python is required for the salary lookup tool. Check whether you have a compatible version:py --version is often the most reliable check if python is not on your PATH.
Bun
The job portal CLIs are written in TypeScript and run with Bun. Install it for your platform:winget install Oven-sh.Bun.
LaTeX
The/apply command compiles CVs with lualatex and cover letters with xelatex. Install a full LaTeX distribution for your platform:
- Windows
- macOS
- Linux
Install MiKTeX. MiKTeX supports on-the-fly package installation, so missing packages (such as
moderncv) are downloaded automatically on first compile.lualatex because pdflatex often fails on modern MiKTeX installs with fontawesome5 font-expansion errors. The cover letter uses xelatex because cover.cls requires fontspec for its custom Lato/Raleway fonts.
pdftotext (optional)
/apply runs an ATS parseability check on the compiled CV: it extracts the PDF’s text layer and verifies contact details, reading order, and keyword coverage the way an applicant-tracking system sees them. This requires pdftotext from poppler, which is separate from any LaTeX distribution:
pdftotext is missing, /apply skips the mechanical check with a warning and falls back to a visual keyword review — everything else in the workflow runs normally.
Fork and Clone
Fork the repository to your GitHub account and clone it locally:git clone.
Install Job Search CLI Tools
Run the following from the repository root to install dependencies for all five job portal CLI tools:linkedin-search install is optional: it has zero runtime dependencies and runs with plain bun; bun install only pulls TypeScript dev types. linkedin-search is country-agnostic and works for any location via the -l flag (e.g. -l "Berlin, Germany").
The four Danish portals (Jobbank, Jobdanmark, Jobindex, Jobnet) are built for the Danish market. If you are outside Denmark, use
/add-portal to generate an equivalent search skill for your local job board — the command investigates the portal, scaffolds the CLI, and test-runs a live query before registering anything.Run /setup
Start Claude Code from the repository root, then run the onboarding command:documents/ folder and offer three onboarding paths:
- Path A (documents folder): Drop your CV PDF, LinkedIn export, diplomas, reference letters, or past applications into
documents/. Claude reads and cross-references everything before proposing profile updates. This path is idempotent — re-running it as you add more files will not duplicate or overwrite existing content; conflicts are surfaced for explicit resolution. - Path B (single CV import): Mention a file with
@or paste your CV text directly in chat. Claude extracts the data and asks follow-up questions for anything missing. - Path C (interview mode): Walk through structured questions section by section. Good for starting from scratch without existing documents.
What Gets Populated
| File | Content |
|---|---|
CLAUDE.md | Your full candidate profile |
01-candidate-profile.md | Structured education, experience, and skills |
02-behavioral-profile.md | Behavioral assessment |
04-job-evaluation.md | Personalized skill match areas and career goals |
05-cv-templates.md | Profile statement templates for your background |
07-interview-prep.md | STAR examples from your experience |
cv/main_example.tex | Your LaTeX CV with actual details |
search-queries.md | Job search queries for /scrape |
Re-running Setup for a Single Section
You can update specific sections without re-running the full profile interview:--section search option is especially useful as your job search priorities evolve. It re-runs the search configuration interview and suggests role types you may not have considered based on your full profile.
Optional — Salary Benchmarking
The framework includes a salary benchmarking tool that works with any salary data you provide (union statistics, Glassdoor exports, survey data, or personal research). If you have data to add:- Option A: Create
salary_data.jsonmanually in the repository root. Seetools/README_SALARY_TOOL.mdfor the expected format. - Option B: Convert from an Excel file:
salary_data.json, which the /apply workflow uses for salary benchmarking. If you skip this step, the salary lookup is simply omitted. See Salary Benchmarking for more details.