Back to all posts
Guide
12 min read

Best AI Job Search Agents on GitHub (2026)

DevToolLab Team

DevToolLab Team

November 4, 2026

Best AI Job Search Agents on GitHub (2026)

A US opening draws more applications than any recruiter can read. LinkedIn was clocking about 11,000 applications per minute in mid-2025, up 45% in a year, Semafor reported, and each one passes through an applicant tracking system (ATS) first. Candidates answered with AI, and two open-source projects that turn an AI coding CLI into a job-search agent collected almost 150,000 GitHub stars in about seven months.

As of November 4, 2026, career-ops has 80,011 stars and ai-job-search has 69,475, both MIT licensed. Neither presses Submit: both score a posting against your CV, write tailored documents and stop. We read their source, counted their tests, measured what each loads into the model and checked site terms. Use them as a filter, not a firehose, because the evidence says tailoring alone no longer wins interviews.

Why Tailoring Stopped Working as a Signal

An economics working paper has the sharpest evidence. Galdin and Silbert studied a freelance platform before and after LLMs arrived and found that "employers have a high willingness to pay for workers with more customized applications in the period before LLMs are introduced, but not after" (arXiv 2511.08785, November 11, 2025, not yet peer reviewed). In their simulation the top quintile of workers is hired 19% less often and the bottom quintile 14% more often. A freelance market is not US corporate hiring, so read it as a mechanism: when everyone tailors for free, tailoring separates no one.

Employers noticed. Greenhouse's survey of 4,136 people (November 19, 2025) found that 74% of US job seekers use AI, 91% of recruiters have spotted candidate deception, and 41% of the 1,200 US job seekers admit to prompt injections, hidden text meant to fool a screener. It is a vendor survey, but it explains why a good agent spends its effort on fit and honesty, not volume.

What an AI Job Search Agent Does, Step by Step

Both repos run one pipeline. A profile step turns your CV or a chat interview into files the agent rereads each run. An intake step scans boards or takes a pasted URL, and a scoring step decides if the job deserves an evening. A tailoring step rewrites the CV and drafts a letter, a review step checks the drafts against what you did, and a render step produces an ATS-parseable PDF. You click Submit.

The difference is how much is code and how much is prompt. career-ops scans with plain Node.js that spends no tokens, while ai-job-search hands most steps to Claude Code and its subagents.

How Each Agent Scores a Job

career-opsai-job-search
ScaleOne 1 to 5 score0 to 100 per dimension, banded
DimensionsCV match, target-role alignment, pay, cultural signals, red flagsTechnical skills 30%, experience 25%, behavioral fit 15%, career alignment 30%, location pass/fail
FormulaNone: "Holistic judgment integrating the five dimensions above (no arithmetic formula)"Fixed weights
Action thresholds4.5+ apply now; 4.0 to 4.4 worth applying; 3.5 to 3.9 recommend against; below 3.5 recommend against75+ "Definitely apply"; 60 to 74 good; 45 to 59 moderate; 30 to 44 "Probably skip"; below 30 skip
Hard stops before scoringDead posting, blacklist, your dealbreakers, agency check, LinkedIn JD guardA citizenship or residency requirement you cannot meet; a language you do not declare
Posting legitimacyBlock G, a three-tier check that does not change the scoreIntegrity gate that strips hidden text

Sources: modes/_shared.md and modes/oferta.md in career-ops, and .claude/skills/job-application-assistant/04-job-evaluation.md (framework 1.2.7) in ai-job-search, read November 4, 2026.

ai-job-search's eligibility gate quotes the exact wording and stops, which suits a work-authorization question. career-ops leaves the arithmetic to the model.

Where They Look for Jobs

career-opsai-job-search
Scanner131 provider modules in providers/, no LLM calls, no login6 search skills, no login or API key
ATS familiesGreenhouse, Lever, Ashby, Workable, SmartRecruiters, Workday, iCIMS, Taleo, SuccessFactors and about 30 moreVia the freehire.me aggregator, which says it covers about 50 ATS platforms
BoardsRemoteOK, Remotive, We Work Remotely, Himalayas, Built In, HN and othersLinkedIn guest search; four Danish boards that ship disabled
LinkedInNot scanned; the guard bars guest endpoints and workaroundsEnabled, with a warning that automated access breaks LinkedIn's terms
Robots.txtContributor convention; runtime handling unverifiedtools/robots_check.py enforces RFC 9309 on the fetch retry

Greenhouse, Lever and Ashby host most US tech postings, so the career-ops scanner fits a US search better. ai-job-search reaches the US through freehire.me and LinkedIn; anything else means pasting a posting.

How Many Tokens Each Agent Loads Before Your CV

Both agents are mostly Markdown instructions the CLI loads before your CV. That floor eats a plan's usage limit, so we measured it on November 4, 2026 against fresh clones, using career-ops' own estimate: collapse whitespace, then one token per four characters.

Bash
git clone --depth 1 https://github.com/career-ops-hq/career-ops.git
git clone --depth 1 https://github.com/ai-job-search-dev/ai-job-search.git
node prompt-floor.mjs
js
// prompt-floor.mjs: instruction tokens each agent loads before your CV and the job post
import { readFileSync } from "node:fs"
const est = (f) => Math.ceil(readFileSync(f, "utf8").replace(/\s+/g, " ").length / 4)
const sets = {
  "career-ops (paste a job URL)": ["career-ops/AGENTS.md", "career-ops/modes/_shared.md", "career-ops/modes/oferta.md"],
  "ai-job-search (/apply)": ["ai-job-search/CLAUDE.md", "ai-job-search/.claude/commands/apply.md"],
}
for (const [name, files] of Object.entries(sets)) {
  let total = 0
  for (const f of files) { const t = est(f); total += t; console.log(`  ${f.padEnd(44)} ${String(t).padStart(6)}`) }
  console.log(`${name}: ~${total.toLocaleString("en-US")} tokens\n`)
}
text
career-ops/AGENTS.md                          23430
  career-ops/modes/_shared.md                    7307
  career-ops/modes/oferta.md                    22034
career-ops (paste a job URL): ~52,771 tokens

  ai-job-search/CLAUDE.md                        2226
  ai-job-search/.claude/commands/apply.md       10711
ai-job-search (/apply): ~12,937 tokens

career-ops' docs/RUNNING_ON_A_BUDGET.md still says about 26,000 tokens per evaluation, but the same files now measure about 52,800 because AGENTS.md has grown to roughly 94 KB. ai-job-search starts near 12,900, then /apply reads its templates and spawns a reviewer, so a full run goes well past that.

Neither number is a bill. On Claude Pro, $20 a month or $17 billed annually as of November 4, 2026, you hit usage limits instead. The career-ops FAQ warns that an ANTHROPIC_API_KEY in your shell makes the CLI bill per token even when you are logged in to a subscription.

How career-ops Works

career-ops is Markdown modes behind one router, .agents/skills/career-ops/SKILL.md, plus Node.js scripts for everything that needs no model. Paste a job URL and it checks the posting is live, scores it, writes a report, renders a tailored PDF through Playwright and adds a row to data/applications.md. About 70 modes also cover an ats parseability score, interview prep and offer-prep. Setup is npx @santifer/career-ops init per the README (we did not run it), on Node 22.13 or later.

career-ops GitHub page with about 80k stars, 14.7k forks and the .agents/skills/career-ops folder
career-ops GitHub page with about 80k stars, 14.7k forks and the .agents/skills/career-ops folder

It runs in most agent CLIs, or on free OpenRouter models or a local Ollama model. Your CV and reports are gitignored and the README promises no telemetry.

It refuses to spray. prepare-application.mjs prints autofill values for Greenhouse, Ashby and Lever forms and "Never POSTs anything", and generate-pdf.mjs blocks a CV whose numbers appear nowhere in your sources unless you pass --skip-fact-check. Its PDF rules match what Greenhouse's support page names as parse failures: single column, nothing critical in headers or footers, no hidden text.

It is also large. 258 issues and 198 pull requests are open, and issue #1411 proposes the "fail-closed CV faithfulness gate" that the fact check is not yet. Version 1.38.0 shipped October 23, 2026.

How ai-job-search Works

ai-job-search is a Claude Code project: slash commands in .claude/commands, three subagents and job-board skills in .agents/skills. The flow is /setup, /scrape, /rank, /apply, /interview and /outcome. /apply is a drafter-reviewer loop: the main agent drafts a LaTeX CV and letter, an application-reviewer subagent with no Edit or Write tool researches the company and critiques them, and the drafter revises until the CV is exactly two pages and the letter one. It then extracts the PDF text layer to check what an ATS will read.

ai-job-search GitHub page with 69.4k stars, 22.3k forks and v1.7.4 marked Latest
ai-job-search GitHub page with 69.4k stars, 22.3k forks and v1.7.4 marked Latest

You need Claude Code, which has no free tier, plus Python 3.10 or later, Bun and a LaTeX distribution. A fork of a public repo is public while /setup writes your contact details and salary expectations into tracked files, so use a private repository.

Its strength is defense. tools/posting_guard.py strips hidden HTML, zero-width characters and invisible Unicode tag characters from a posting before the model reads it, and SECURITY.md is candid that the defenses are "instruction-level, not a sandbox". Open issues #798, #785 and #766 report gaps in the guard, and Windows is fragile (#705, #743). Version 1.7.4 shipped November 2, 2026.

How Healthy Each Project Is

career-opsai-job-search
Stars, forks80,011; 14,73069,475; 22,307
Contributors46994
CreatedApril 4, 2026March 18, 2026
Releasesv1.34.0 (Sep 24) to v1.38.0 (Oct 23): about weeklyv1.7.0 (Aug 29) to v1.7.4 (Nov 2): every 2 to 4 weeks
TestsAbout 880 test files, roughly 3,000 cases68 Python test files with 888 test functions, plus about 420 JS cases
CI27 workflows on Ubuntu, macOS and Windows, CodeQL, SBOMLint, security guards, Python 3.10 to 3.14, LaTeX smoke compiles; actions pinned to SHAs
Open issues, PRs258; 1987; 73

Counts are live GitHub API values and file counts from November 4, 2026 and will drift. career-ops ships faster with more surface to break, while ai-job-search keeps live portal tests out of CI because of LinkedIn's terms.

What Goes Wrong With Auto-Apply

AIHawk is the cautionary tale. feder-cr/Jobs_Applier_AI_Agent_AIHawk, once an auto-apply bot, has 32,385 stars, but its README now describes an "alternative to OpenAI Dots, Grok Bot. Built to be undetectable by anti-bot systems" and has no job-application text. Both agents here stop at the Submit button for that reason.

Tailored CVs also drift. A model matching a posting will turn "used Kafka" into "led a Kafka migration", and fact gates catch only part of that, so read every line becuase an interviewer will ask about the bullet you did not write. A posting is untrusted input too: hidden text in a job ad can carry instructions for an agent that also holds your CV.

The Funded Hosted Agents

ToolSubmits for you?US candidate priceFunding
JobrightYes, per its June 2025 launch postNot published: /pricing returned a 404 on November 4, 2026$3.2M led by Translink Capital, June 24, 2025
Jack & JillNo, it introduces youFree for candidates$40M Series A led by Air Street Capital, September 16, 2026
DexNo, it introduces youNo public price page$5.3M seed led by Notion Capital, April 28, 2026
SimplifyAutofill extension; Autopilot "applies for you"Core free; Simplify+ price not published$3M seed led by Craft Ventures, February 2024

Jobright, in Santa Clara, California, launched an agent that "finds, customizes, and submits applications on behalf of job seekers".

Jobright homepage headline No More Solo Job Hunting, Do it with AI
Jobright homepage headline No More Solo Job Hunting, Do it with AI

Jack & Jill raised a $40 million Series A ten months after a $20 million seed. Its privacy policy, effective August 10, 2026, says it will "never sell your personal data" and shares your profile with employers only when your visibility is open to matches.

Jack and Jill homepage with panels for Jack, the careers agent, and Jill, the hiring agent
Jack and Jill homepage with panels for Jack, the careers agent, and Jill, the hiring agent

Dex, aimed at senior software engineers, raised a $5.3 million seed, and its October 2026 privacy policy says it also collects data "from third parties such as LinkedIn, data providers we work with, contacts who referred you to us, or employers".

Dex homepage headline The talent agent for senior software engineers beside a chat panel
Dex homepage headline The talent agent for senior software engineers beside a chat panel

LazyApply and AIApply sell volume outright. We could not confirm a US price for AIApply, or anything for Teal, whose site returned a 403.

What the Terms Say

SiteClauseDate checked
LinkedIn User Agreement, section 8.2Bans "software, devices, scripts, robots or any other means" to "scrape or copy the Services", and "bots or other unauthorized automated methods" to access themEffective November 3, 2025
LinkedIn Help, Easy Apply limits"Rapidly submitting applications in a short time triggers a temporary pause on Easy Apply"; limits may drop for activity that "seems inauthentic"Page updated about a year ago
Indeed Terms of ServiceBars any "automated system (bots, scrapers, spiders, AI or Agentic AI) to access, data-mine, or submit content to the Site, in bulk or otherwise, without Indeed's express written permission"Last updated September 29, 2026

Indeed's clause is the most direct for a tool that submits applications. We found no reputable report of permanent bans for job-application auto-apply tools, and LinkedIn's help pages describe temporary pauses and re-enabling once the automation is off. Neither open-source agent submits, but ai-job-search's linkedin-search skill uses LinkedIn's guest endpoints, so keep the volume low.

Ghost Jobs and the Law

A score is only as good as the posting. A Congressional Research Service brief says "there are no official statistics on the magnitude of ghost jobs", and on July 14, 2026 the Texas attorney general opened an investigation into LinkedIn over allegedly advertising "fake or misleading job opportunities". career-ops' Block G legitimacy check is the one feature aimed at this, and it rightly never changes the score.

The AI hiring laws regulate employers and their vendors, not candidates. New York City's Local Law 144 has required a bias audit for automated employment decision tools since July 5, 2023, and in Mobley v. Workday a preliminary age-discrimination collective against an AI screening vendor was certified on May 16, 2025, with no merits ruling as of the docket summary updated November 1, 2026. For a candidate the point is narrow: the screener may be audited, and your PDF is still read by software.

Side by Side

AgentRuns inAutomatesSubmits?What leaves your machineCost to youLicense or funding
career-opsClaude Code, Codex, OpenCode, Cursor and moreScan, score, tailor, PDF, trackerNoCV and posting, to your model providerCLI plan or tokens; $0 on a local modelMIT
ai-job-searchClaude CodeSearch, rank, tailor, review, PDF, trackerNoCV and posting, to AnthropicClaude Pro from $17/month, or API creditsMIT
JobrightHostedMatching, tailoring, autofillYesYour whole profilePrice not published$3.2M, June 2025
Jack & JillHostedMatching, introductionsNoYour whole profileFree$40M Series A, September 2026
DexHostedMatching, introductionsNoYour whole profileNo public price$5.3M seed, April 2026

How to Choose

  1. Decide between a filter and a sender: open-source agents and introduction services cut volume, auto-apply services add it.
  2. Check where your target jobs live, since the two scanners cover different boards.
  3. Price the CLI, not the agent: both repos are free, but the model is not unless you run career-ops on Ollama.
  4. Keep cv.md and the tracker in a private repository.
  5. Run one real job end to end and read every generated file before a second run.

Conclusion

Already using Claude Code or Codex and applying to US tech companies: start with career-ops. Want polished LaTeX documents and a stricter permission model: use ai-job-search. Want fewer, better conversations: try Dex or Jack & Jill after reading their privacy policies.

Skip the bulk auto-apply bots, because tailoring no longer separates candidates and Indeed's terms bar automated submission. Whichever you pick, read the CV before you press Submit, or you will recieve replies for roles you never read.

  • Resume Builder - write your master CV once in Markdown, the format career-ops reads from cv.md.
  • Cover Letter Generator - draft a baseline letter to compare with what the agent writes.
  • PII Redactor - strip your email, phone number and address from a CV before pasting it into an issue or a hosted tool.
  • Keyword Density Checker - see which job-description terms your tailored CV actually repeats.

Related Posts

Best Open-Source Agent Harnesses in 2026

TrueForge, OpenHands, opencode, SWE-agent and Aider compared as open-source agent harnesses: model neutrality, sandboxing, licenses and where each runs.

By DevToolLab Team•

Mistral Large 4 VRAM Requirements

Mistral Large 4 needs 1.06 TB in FP8, 610 GB in NVFP4 and 233 GB at 1-bit. Which GPU nodes and Macs fit it, and what 128K of KV cache adds.

By DevToolLab Team•

Cloud vs Local vs Encrypted AI for Coding

Cloud AI can read your prompts, local AI keeps them on your machine, and encrypted hosted AI sits between. Match each setup to the code and data you paste.

By DevToolLab Team•