Skip to main content

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.

In this guide you will fork the AI Job Search repository, install the required CLI tools and LaTeX distribution, build your candidate profile with /setup, search for matching jobs with /scrape, and run your first full application workflow with /apply. The whole process takes about 15 minutes for setup; individual applications take only as long as it takes Claude to draft, review, and compile the documents.
1

Fork and clone

Fork the repository to your GitHub account and clone it locally with the GitHub CLI:
gh repo fork MadsLorentzen/ai-job-search --clone
cd ai-job-search
If you prefer the manual route, fork on GitHub first, then clone your fork.
2

Install job search tools

The job portal CLIs are written in TypeScript and run with Bun. Install dependencies for all five tools from the repository root:
for tool in jobbank-search jobdanmark-search jobindex-search jobnet-search linkedin-search; do
  cd .agents/skills/$tool/cli && bun install && cd ../../../..
done
The linkedin-search install is optional: it has zero runtime dependencies and runs with plain bun; bun install only pulls TypeScript dev types.
3

Install LaTeX

The /apply command compiles your CV with lualatex and your cover letter with xelatex. You need a LaTeX distribution that includes both engines:
  • Windows: MiKTeX
  • macOS: MacTeX
  • Linux: sudo apt install texlive-full or sudo dnf install texlive-scheme-full
See Prerequisites for full details on why lualatex is required for the CV and xelatex for the cover letter.
4

Build your profile

Start Claude Code in the repository root, then run the onboarding command:
claude
/setup
Claude will detect what you have and offer three paths:
  • Path A (documents folder): Drop your CV PDF, LinkedIn export, diplomas, reference letters, or past applications into the documents/ folder. Claude reads and cross-references everything before proposing profile updates. Best when you have several source files. Safe to re-run as you add more material.
  • Path B (single CV import): Mention a file with @ or paste your CV text directly. 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.
All three paths produce the same result: a fully populated set of profile files ready for /scrape and /apply.
5

Search for jobs

Once your profile is set up, search for matching positions across all configured portals:
/scrape
Claude searches multiple job portals, deduplicates results, and presents them sorted by fit against your profile. Pick a match to hand off directly to /apply, or run /rank first to batch-score a larger result set into a prioritized shortlist.
6

Apply to a job

Run /apply with a job posting URL or paste the full job description text:
/apply https://jobindex.dk/job/1234567
/apply <paste the full job description here>
Claude will evaluate fit against your profile, draft a tailored CV and cover letter in LaTeX, spawn a reviewer agent to critique the drafts, revise based on that feedback, compile both PDFs, and present the final output with a verification checklist.
The /apply command includes an optional ATS parseability check that extracts the compiled CV’s text layer using pdftotext from poppler. If pdftotext is not installed, the check degrades gracefully to a visual keyword review and everything else works normally. Install it with brew install poppler (macOS), sudo apt install poppler-utils (Debian/Ubuntu), or choco install poppler (Windows).

Ready to go deeper? These pages cover each core command in full detail:

The /apply Command

How the drafter-reviewer pipeline works, what each verification step checks, and how to customize the LaTeX templates.

The /setup Command

A full breakdown of all three onboarding paths, which files get populated, and how to re-run setup for individual sections.

Build docs developers (and LLMs) love