Installing and Running the AI Job Search Framework: Complete Requirements Guide
To install and run the AI Job Search framework, you need Claude Code CLI, Python 3.10+, Bun, a LaTeX distribution with lualatex/xelatex, and optional tools for PDF text extraction and salary benchmarking.
The AI Job Search framework is a self-contained job application assistant built on top of Claude Code. This guide covers the complete set of AI Job Search requirements derived from the MadsLorentzen/ai-job-search source code, including mandatory dependencies, optional enhancements, and the exact installation commands.
Core Requirements for AI Job Search
Claude Code CLI
Claude Code CLI serves as the agent runtime that executes commands like /setup, /scrape, /apply, and others. Without this, the framework cannot function.
Install globally via npm:
npm install -g @anthropic-ai/claude-code
After installation, launch with claude to enter the interactive REPL where you run framework commands.
Python 3.10 or Higher
Python powers two key components:
salary_lookup.py— runtime salary benchmarking scriptpypdf— optional PDF text extraction for ATS compatibility checks
Verify your version:
python3 --version # Must show 3.10 or higher
Bun Runtime
Bun executes the TypeScript-based job portal CLIs located under .agents/skills/*/cli. These tools handle scraping from Jobindex, Jobnet, LinkedIn, and other portals.
Install Bun:
# macOS/Linux
curl -fsSL https://bun.sh/install | bash
# Windows PowerShell
powershell -ExecutionPolicy Bypass -c "irm https://bun.sh/install.ps1 | iex"
Once installed, install dependencies for each portal CLI:
for tool in jobbank-search jobdanmark-search jobindex-search jobnet-search linkedin-search freehire-search; do
(cd .agents/skills/$tool/cli && bun install)
done
LaTeX Distribution with lualatex and xelatex
The framework generates professional PDF documents from templates. You need:
lualatex— compiles the CV template (cv/main_example.tex)xelatex— compiles cover letters (cover_letters/cover.cls)
Install by platform:
# Ubuntu/Debian
sudo apt install texlive-full
# macOS (Homebrew)
brew install --cask mactex
# Windows (Chocolatey)
choco install miktex
Optional AI Job Search Requirements
ATS Text Extraction Stack
The /apply command checks PDF ATS compatibility by extracting and analyzing text. Two options exist:
Option 1: pypdf (pure Python, no system dependencies)
pip install pypdf
Option 2: poppler-utils (native, often faster)
# macOS
brew install poppler
# Ubuntu/Debian
sudo apt install poppler-utils
# Windows (Chocolatey)
choco install poppler
Configuration details are documented in SETUP.md#optional-ats-text-extraction-pypdf-then-pdftotext.
Salary Benchmarking Data
To enable market-rate recommendations during /apply, generate salary_data.json from your Excel data:
pip install openpyxl
python3 tools/convert_salary_excel.py path/to/salary.xlsx --source "My Salary Data"
The conversion script is at [tools/convert_salary_excel.py](https://github.com/MadsLorentzen/ai-job-search/blob/master/tools/convert_salary_excel.py), and runtime lookup uses [salary_lookup.py](https://github.com/MadsLorentzen/ai-job-search/blob/master/salary_lookup.py).
GitHub Fork
The framework expects you to maintain a personal fork (public or private) containing:
- Your candidate profile (
CLAUDE.md,01-candidate-profile.md) - Custom commands and settings
- Upstream sync capability for framework updates
Fork instructions: README.md#1-fork-and-clone.
Claude Code Permissions
Claude Code requires explicit whitelisting of tools in .claude/settings.json. This security model ensures Bun tools and Python scripts run only with user consent. Reference the permissions structure in [AGENTS.md](https://github.com/MadsLorentzen/ai-job-search/blob/master/AGENTS.md).
Architecture Overview
The AI Job Search framework follows a thin-pointer design. All "single source of truth" data lives in two locations:
| Directory | Contents |
|---|---|
.claude/ |
Personal profile, commands, settings |
.agents/skills/ |
Portal-specific TypeScript CLIs |
The runtime environment satisfies only the dependencies above. No databases, containers, or cloud services are required—Claude Code agents orchestrate the entire workflow.
Complete Installation Checklist
Run these commands in sequence on a fresh system:
# 1. Claude Code CLI
npm install -g @anthropic-ai/claude-code
# 2. Verify Python version
python3 --version
# 3. Install Bun
curl -fsSL https://bun.sh/install | bash
# 4. Install LaTeX (platform-specific commands above)
# 5. Optional: ATS text extraction
pip install pypdf
# 6. Optional: salary benchmarking setup
pip install openpyxl
# 7. Install portal CLI dependencies
for tool in jobbank-search jobdanmark-search jobindex-search jobnet-search linkedin-search freehire-search; do
(cd .agents/skills/$tool/cli && bun install)
done
# 8. Launch and configure
claude
/setup
Summary
- Claude Code CLI is mandatory—the framework cannot run without it
- Python 3.10+, Bun, and LaTeX form the core runtime stack
pypdfor Poppler enable ATS PDF analysis (optional but recommended)salary_data.jsonpowers salary recommendations (optional)- All configuration resides in
.claude/and.agents/skills/with no external services needed
Frequently Asked Questions
Can I run the AI Job Search framework without Claude Code?
No. The framework is architected specifically around Claude Code's agent runtime. The /setup, /scrape, /apply, and other commands are Claude Code primitives, not standalone scripts. Alternative LLM interfaces are not supported in the current implementation.
What if my LaTeX installation is missing lualatex or xelatex?
PDF generation will fail. The CV template at cv/main_example.tex requires lualatex, and the cover letter class at cover_letters/cover.cls requires xelatex. Install a full TeX Live distribution rather than minimal packages to ensure both engines are present.
Is Windows fully supported for all AI Job Search requirements?
Yes, with equivalent commands. The repository documentation includes PowerShell equivalents for Bun installation and Chocolatey commands for LaTeX (MiKTeX) and Poppler. The TypeScript CLIs in .agents/skills/*/cli run identically under Bun on Windows, Linux, and macOS.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →