Open source · AI-powered job matching

Find the right jobs. Apply with a CV that fits each one.

Paste your LinkedIn link. An AI agent reads your profile, and JobHuntAI matches it against real openings from public job boards and company career sites.

Free · no sign-up · open source

Paste your LinkedIn link

We read your public profile, summarise your strengths and find matching openings.

Link can’t be read? Paste your profile text instead

Searches across

RemotiveArbeitnowThe Muse JobicyMicrosoft CareersGoogle Careers Greenhouse-hosted companies
Features

Everything between “I need a job” and “application sent”

One local tool replaces a dozen open tabs and a folder of near-identical CV versions.

Multi-source job search

Queries job boards and company career sites at once. Enter a country or city, pick in-person, remote or hybrid, and results are filtered to match.

CV match score

Every role is scored against the skills in your CV, so the best fits rise to the top instead of being buried in a feed.

Tailored CV & cover letter

Your documents are rewritten for each posting, matching the tone of your original cover letter. The AI is instructed to never invent employers, degrees, dates or skills.

Bring your own AI

Auto-detects local Ollama, LM Studio and llama.cpp servers. Or add a key for OpenAI, Claude, Gemini, Grok or GitHub Models.

PDF in, PDF out, CSV log

Load your CV from a text-based PDF and download results as PDF. Every new job is logged to a CSV with date, country and work mode.

Private by default

Everything runs on your computer. API keys live in a mode-600 file and are never sent back to the browser. You decide what leaves your machine.

How it works

From CV to tailored application in three steps

Paste your LinkedIn link

Add your profile link, a location and your preferred work type. Nothing to upload.

An AI agent reads your profile

It summarises your strengths, lists your skills and writes a CV-style profile used to find matches.

Get real openings

Listings come from public job boards and company career pages, ranked by match. Open any of them in one click.

n8n & webhooks

Plug it into your own automations

Point JobHuntAI at an n8n Webhook node — including one on your own VPS — and turn every search or generated application into a workflow: Telegram alerts, Google Sheets rows, Notion cards, email drafts.

  • Profile analysis: the LinkedIn form calls your n8n workflow and shows the agent’s answer on this page.
  • AI-agent friendly: every event carries a plain-text text field you can pass straight to an AI Agent node.
  • Two events: search.completed (new jobs only) and application.generated.
  • Header authentication that works with n8n’s Header Auth credential. The token is never shown again in the browser.
  • Retries on network errors and 5xx, a Send test button, and last-delivery status in the settings.
  • You choose what leaves your machine: CV and cover-letter text is only sent if you enable application.generated.
Example payload · search.completed
{
  "id": "3f0c8b6e-…",
  "event": "search.completed",
  "source": "jobhuntai",
  "timestamp": "2026-10-03T12:00:00+00:00",
  "text": "JobHuntAI found 7 new job(s) …",
  "data": {
    "mode": "hybrid",
    "location": "Dublin",
    "total_found": 42,
    "new_count": 7,
    "jobs": [
      { "title": "…", "company": "…",
        "location": "…", "work_mode": "…",
        "url": "…", "score": 92 }
    ]
  }
}
Quick start

Running in under a minute

No packages to install. Python 3.9 or newer is all you need.

# get the code
git clone https://github.com/coolasc/JobHuntAI.git
cd JobHuntAI

# start the app
python -m jobhunt

# then open
http://127.0.0.1:8765/app

Then add an AI provider in Settings and, optionally, your n8n webhook URL.

FAQ

Good to know

How is my LinkedIn profile read?

Your link (and any text you paste) goes to an automation workflow where an AI agent analyses it. LinkedIn restricts automated access, so some profiles cannot be read — if that happens, paste your profile text instead. JobHuntAI itself does not store what you submit.

Does it submit applications for me?

No. Auto-apply generates your CV and cover letter, saves them as text and PDF files, and opens the job page. Submitting third-party application forms is not automated, so you stay in control of what is sent.

Where does my data go?

Your CV and letters stay on your computer. Text is sent only to the AI provider you choose (nothing leaves your machine if you use a local model) and, if you configure one, to your own webhook.

Do I need a paid AI account?

No. Local servers such as Ollama, LM Studio and llama.cpp are detected automatically. Online providers need your own API key.

Which n8n URL should I use?

Use the Production URL of your Webhook node (/webhook/…) with the workflow activated. The Test URL (/webhook-test/…) only works while n8n is listening for a test event. Use https for any server on the internet.

Spend less time searching, more time interviewing

Free and open source under the Apache-2.0 license.