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.

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 script
  • pypdf — 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:

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
  • pypdf or Poppler enable ATS PDF analysis (optional but recommended)
  • salary_data.json powers 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:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →