Skip to content

Guide · Open source

How to use ai-job-search: setup, commands and tips

Updated · written with AI from the project's own documentation and checked against our catalogue data

ai-job-search is an open-source framework that runs inside Claude Code, Anthropic's command-line AI tool, to support a job search. It is meant for people comfortable with a terminal who want a structured, repeatable way to evaluate postings, tailor CVs and cover letters, and prepare for interviews. By the end of this guide you will know the prerequisites, the install steps from the README, and the core commands in the workflow.

AI Job Searchai-job-search-dev/ai-job-search · ★ 68.9k · MIT

Quick start

  1. 1Check prerequisites. Confirm you have Claude Code with a paid plan or API credits, Python 3.10+, Bun and a LaTeX distribution with lualatex and xelatex.
  2. 2Fork and clone. Run gh repo fork ai-job-search-dev/ai-job-search --clone, then cd into the folder. Consider a private copy if this is for your own search.
  3. 3Install the tools. Run python3 tools/install_portal_clis.py from the repository root.
  4. 4Build your profile. Start Claude Code and run /setup to load your documents or walk through an interview.
  5. 5Find and rank jobs. Run /scrape to search portals, or /rank to score a batch and get a shortlist.
  6. 6Apply. Run /apply with a job posting URL to generate a tailored CV and cover letter, then review them yourself.

What you need before you start

The project requires Claude Code, which the README describes as having no free tier: you need a Claude Pro, Max or Team subscription, or Anthropic API credits. You also need Python 3.10 or newer, Bun, and a LaTeX distribution that includes lualatex and xelatex.

  • Claude Code (CLI), with a paid Claude plan or API credits
  • Python 3.10+ for the tools in tools/
  • Bun, which runs the job search CLI tools
  • A LaTeX distribution with lualatex and xelatex (TeX Live, MacTeX, TinyTeX or MiKTeX)
  • pypdf (optional), installed with pip install pypdf, for the ATS parseability check in /apply

Fork and clone the repository

Run the fork-and-clone command from the README, then move into the new folder. Be aware that a fork of a public repository is always public on GitHub, and /setup writes personal data such as name, contact details, employment history and salary expectations into tracked files. If the copy is for your own search rather than for contributing back, the README recommends a private repository with this repo as upstream instead; the recipe is in SETUP.md section 8.

gh repo fork ai-job-search-dev/ai-job-search --clone cd ai-job-search

Install the job search tools

Run the installer script from the repository root. On Windows the README gives the variant that uses python instead of python3. The installer runs bun install in each portal CLI under .agents/skills/*/cli/, skips any CLI with install-time scripts and reports it, and supports a --dry-run flag that shows what would be installed.

  • linkedin-search and freehire-search have zero runtime dependencies and run with plain bun
python3 tools/install_portal_clis.py

Set up your profile with /setup

Open Claude Code in the project folder and run /setup. It offers three paths: read your documents/ folder (CV PDF, LinkedIn export, diplomas, reference letters, past applications), import a single CV pasted in chat, or walk through an interview. It detects what you have and asks. The documents-folder mode can be re-run safely as you add material; documents/README.md describes the layout.

claude # Then inside Claude Code: /setup

Search and rank job postings

/scrape searches multiple job portals for positions matching your profile, deduplicates results and presents them sorted by fit. If a scrape returns more jobs than you want to review by hand, /rank batch-scores them against the fit framework and gives you a ranked shortlist first. The portal search skills are built for Danish boards such as Jobindex, Jobnet and Akademikernes Jobbank, and the README says the pattern can be swapped for your local job boards.

/scrape

Apply to a job

Pass a job posting URL to /apply. The command drafts a tailored CV and cover letter. The README notes that if a URL cannot be fetched, because some portals block automated access, you will need another route into the posting. Output CVs are compiled with LaTeX, and the cover letter uses xelatex. Compiling the CV with pdflatex often fails on modern MiKTeX installs, so use lualatex as the README specifies.

  • CV compiles with lualatex
  • Cover letter compiles with xelatex because cover.cls requires fontspec
  • Optional pypdf check for ATS parseability
/apply https://jobindex.dk/job/1234567

What people use it for

  • Searching Danish job boards such as Jobindex and Jobnet with the included portal skills
  • Scoring a large batch of scraped postings with /rank before deciding where to apply
  • Generating a tailored CV and cover letter for a specific posting with /apply
  • Preparing for interviews with the interview workflow
  • Adapting the portal search pattern to your own local job boards

Frequently asked questions

Is ai-job-search free to use?

The project itself is MIT licensed. However, the README says Claude Code has no free tier, so you need a Claude Pro, Max or Team subscription or Anthropic API credits to run the workflow.

What do I need to install ai-job-search?

You need Claude Code, Python 3.10 or newer, Bun, and a LaTeX distribution with lualatex and xelatex. pypdf is optional and is used for an ATS check in /apply.

Does ai-job-search work outside Denmark?

The core workflow for self-profiling, fit evaluation and the application pipeline is language and country agnostic. The included portal search skills target Danish boards like Jobindex and Jobnet, and the pattern can be swapped for your local job boards.

Why does my CV fail to compile?

The README says the CV compiles with lualatex, and that pdflatex often fails on modern MiKTeX installs with fontawesome5 font-expansion errors. Use lualatex for the CV and xelatex for the cover letter.

Is it safe to put my personal data in it?

The README warns that /setup writes personal data into tracked files, and a fork of a public repo is always public. If you do not want that, use a private repository with this repo as upstream, as described in SETUP.md section 8.

Can I use it with a tool other than Claude Code?

The README says you can start at AGENTS.md with other agent tools such as Codex, Antigravity or Gemini CLI, and the portal search skills work there. Community forks adapt the full workflow.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

ai-job-search suits people who are comfortable in a terminal, already pay for Claude Code or are willing to, and want a repeatable job application process they can customize. It is a poor fit for anyone wanting a point-and-click app, anyone unwilling to store personal employment and salary data in files, or anyone without a paid Claude plan or API budget.

Install options & downloads