Open source · Local-first · You stay in control

Your AI job search, on your machine.

Paste a job. AIJobNinja checks it is still open, scores it against your real CV, tailors your CV and drafts your answers. You press Submit.

No account. Bring your own key for Qwen, OpenAI, Gemini, Claude, DeepSeek or Meta Muse; it goes straight from your browser to that provider. Or run it in Claude Code, Codex and other AI CLIs.

claude · ~/AIJOBNINJA
> /aijobninja https://jobs.example.com/senior-data-engineer

✓ Posting is live (ATS API, 0 tokens)
✓ Evaluated against cv.md · report 042

  Senior Data Engineer · Example Corp · Copenhagen
  Score   4.4 / 5   Apply
  Match   Python, Spark, Airflow, dbt (4 of 5 must-haves)
  Gap     Kafka in production (say so, don't invent it)
  Legit   active employer confirmed

→ output/cv-042-example-corp.pdf   ATS check 96/100
→ cover letter drafted · tracker row #42 added

> 
Never auto-submitsIt drafts every field. You review and click.
Never fabricatesFacts not in your CV are blocked from the PDF.
Never phones homeYour data goes only to the AI provider you chose.
Talks you out of weak fitsBelow 4.0/5 it recommends you skip.

How it works

From job link to a tailored application, in one conversation

  1. 1

    Find

    A zero-token scanner reads 100+ company boards and 55+ job-board feeds and filters them by your target titles and locations.

  2. 2

    Evaluate

    Every listing gets an A–H report: CV match, level, comp research, red flags and a posting-legitimacy check, with a 1–5 score.

  3. 3

    Tailor

    An ATS-readable CV and a cover letter built only from your own experience, fact-checked before the PDF is written.

  4. 4

    Track

    Status, follow-ups, interview prep and outcomes live in plain files you own, with a terminal dashboard on top.

Features

Everything a serious search needs

Portal scanner

Greenhouse, Lever, Ashby, Workday and more, straight from public APIs. Dead postings are dropped before they cost you a minute.

Structured scoring

One rubric for every role, weighted by what the posting actually requires, so you compare offers on the same scale.

CVs and cover letters

Tailored per job in HTML-to-PDF or LaTeX, with an ATS parse check and keyword coverage that never stuffs.

Reach the right person

Finds the hiring manager, recruiter or a peer on the team and drafts a short note. It never sends it.

Interview suite

Prep plans, practice questions with feedback, debriefs and a STAR story bank that grows with every application.

Offer stage

A clause-by-clause contract companion, a lawyer question list and a salary-gap analysis grounded in real numbers.

Job Finder module

One search box across the Nordic job boards

Jobindex, Jobnet, Jobdanmark and Akademikernes Jobbank, plus LinkedIn public listings and freehire. Results are merged and de-duplicated, full postings open side by side, and your shortlist stays on your machine.

  • Zero dependencies beyond Bun, no CDN, no hosted search
  • Saved jobs with notes, CSV export, applications pipeline
  • LaTeX workflow with a second agent reviewing every draft
Read the Job Finder guide →

Get started

In your browser, or on your machine

Search, track, evaluate and tailor right here. Your CV and tracker stay in your browser. Prefer the full agent? Run it locally:

# 1. Get the code
git clone https://github.com/mannysinghx/AIJOBNINJA.git
cd AIJOBNINJA && npm install

# 2. Open your AI CLI in the folder and say hi
claude   # or codex · opencode · qwen · agy · grok

On first launch it asks for your CV, target roles and deal-breakers in chat. Nothing to configure by hand.