How JobAppAgent compares to other open‑source job agents
JobAppAgent is an open-source job application agent, and it isn't the only one. Several open-source projects now find roles, fill in forms and track applications. They differ in how much they do without asking, which job systems they handle, and where your data ends up. The table below compares them on those points, using only what each project says in its own README or docs. Where a project doesn't say, the cell says "not stated".
Last checked 22 Oct 2026. Projects change quickly, so check the linked source before you rely on a cell.
Comparison table
Key: "Approval before submit" means a person approves each application before it's sent.
| Project | Automation level | ATS / site coverage (as documented) | Approval before submit | Licence | Install | Where data lives |
|---|---|---|---|---|---|---|
JobAppAgent (vaibhavarora14/job-application-agent) [1] | Searches, matches, fills and submits. review-each is the default. Optional routine-auto submits routine applications in batches you've authorised, and pauses for sensitive steps. | Uses the browser your coding agent provides. Submits to Greenhouse, Ashby and Lever, which test fixtures cover. Other documented channels: LinkedIn, Workable, Comeet, Rippling, SmartRecruiters, Google Forms, company career sites and email. Workday is listed but not yet submitted to or tested. It won't automate LinkedIn or X sign-in or messaging. | Yes by default (review-each). Optional routine-auto. | MIT | npx job-application-agent@latest install or npx skills add | Profile in the OS credential store. Résumé and ledgers in a local owner-only folder (an optional private remote store can be configured). Analytics, contact record and community sharing are on by default, with opt-outs. |
| torontodeveloper/job-application-agent [2] | Discovers roles, tailors the résumé, fills the form, then stops for you to submit. | Greenhouse, Ashby, Lever ("..."). Workday after you log in once. README says not to use it on LinkedIn Easy Apply. | Never submits: you click Submit. "It never submits on its own." | Not stated (no licence file in the repo) | Python venv, pip install -r requirements.txt, Playwright | Local files (profile.yaml, a persistent browser profile), kept out of git |
agent-apply (Yaima/agent-apply) [3] | Reads a tracker spreadsheet, checks postings are live, fills applications. Dry run by default. Live mode pauses before each submit. | Greenhouse and Lever: filled, you submit. Ashby: filled, then you apply by hand. Workday, Google and Apple careers: assisted. LinkedIn: by hand only. | Yes. "There is no fully-automated submit path, by design." | MIT | pip install -r requirements.txt plus Playwright | Local: profile.yaml, .xlsx tracker, logs, all kept out of git |
ApplyPilot (Pickle-Pixel/ApplyPilot) [4] | Fully autonomous six-stage pipeline that discovers, scores, tailors, writes cover letters and submits. | Indeed, LinkedIn, Glassdoor, ZipRecruiter, Google Jobs, 48 Workday employer portals and 30 direct career sites (README figures vary: 46/48 and 28/30). Greenhouse, Lever and Ashby: not stated. | No by default. --dry-run fills forms without submitting. | AGPL-3.0 | pip install applypilot; auto-apply also needs the Claude Code CLI and Chrome | Local config files (profile.json, searches.yaml, .env). Otherwise not stated. |
career-ops (career-ops-hq/career-ops) [5][6] | Evaluates and scores roles, tailors the CV, drafts answers and fills forms. Never submits. | Autofill field-tested on Ashby, Greenhouse, Lever and Workable. Portal scanner covers Ashby, Greenhouse, Lever and Wellfound. Workday and LinkedIn Easy Apply: not stated. | Never submits: you click Submit. "The system never submits an application." | MIT | npx @santifer/career-ops init, run in an AI coding CLI | Local project folder (or a data directory you choose) |
LangHire (jaimaann/LangHire) [7] | Desktop app whose browser agent collects jobs, fills forms, answers screening questions and submits. Parallel workers. | LinkedIn Easy Apply and external ATS. Lists 30+ ATS including Workday, Greenhouse, Lever, iCIMS, SmartRecruiters and Taleo. Ashby: not stated. | Not stated. The README describes the agent filling and submitting. | MIT | Desktop installers (macOS, Windows, Linux) | "100% local", in the OS app data folder |
JobPilot by Zeyad Elganainy (zeyadelganainy/job-agent-autopilot) [8][9] | Self-hosted daily run that scans feeds, scores roles and writes a tailored résumé and cover letter. It never fills or submits applications. | Reads Greenhouse, Lever and Ashby public feeds. Workday, Taleo and iCIMS postings go to a manual triage queue. | Never submits: you apply yourself. "A human always submits." | MIT | pip install -r requirements.txt on your own machine or server | Your own machine or server. Keys and profile kept out of git. |
JobPilot by suxrobGM (suxrobGM/jobpilot) [10][11] | Searches boards, scores jobs and applies. Search-only mode waits for your approval. Auto-apply works up to a limit. "Pilot" can run the whole search. | Boards: LinkedIn, Indeed, Hiring Cafe and others. ATS (Greenhouse, Lever, Ashby, Workday): not stated. LinkedIn Easy Apply: not stated. | Optional. It depends on the mode (Search only vs Auto-apply / Pilot). | MIT | Claude Code or Codex plugin from the author's own marketplace, plus a terminal host | Profile, résumés and applications in your JobPilot account. Browser sessions stay on your computer. |
JobAppAgent
vaibhavarora14/job-application-agent [1]Approval before submit: yes, by default- Does
- Searches, matches, fills and submits.
review-eachis the default. Optionalroutine-autosubmits routine applications in batches you've authorised, and pauses for sensitive steps. - Job sites
- Uses the browser your coding agent provides. Submits to Greenhouse, Ashby and Lever, which test fixtures cover. Other documented channels: LinkedIn, Workable, Comeet, Rippling, SmartRecruiters, Google Forms, company career sites and email. Workday is listed but not yet submitted to or tested. It won't automate LinkedIn or X sign-in or messaging.
- Licence
- MIT
- Install
npx job-application-agent@latest installornpx skills add- Data
- Profile in the OS credential store. Résumé and ledgers in a local owner-only folder (an optional private remote store can be configured). Analytics, contact record and community sharing are on by default, with opt-outs.
torontodeveloper/job-application-agent
Never submits: you click Submit- Does
- Discovers roles, tailors the résumé, fills the form, then stops for you to submit.
- Job sites
- Greenhouse, Ashby, Lever ("..."). Workday after you log in once. README says not to use it on LinkedIn Easy Apply.
- Licence
- Not stated (no licence file in the repo)
- Install
- Python venv,
pip install -r requirements.txt, Playwright - Data
- Local files (
profile.yaml, a persistent browser profile), kept out of git
agent-apply
Yaima/agent-apply [3]Approval before submit: yes- Does
- Reads a tracker spreadsheet, checks postings are live, fills applications. Dry run by default. Live mode pauses before each submit.
- Job sites
- Greenhouse and Lever: filled, you submit. Ashby: filled, then you apply by hand. Workday, Google and Apple careers: assisted. LinkedIn: by hand only.
- Licence
- MIT
- Install
pip install -r requirements.txtplus Playwright- Data
- Local:
profile.yaml,.xlsxtracker, logs, all kept out of git
ApplyPilot
Pickle-Pixel/ApplyPilot [4]Approval before submit: no, by default- Does
- Fully autonomous six-stage pipeline that discovers, scores, tailors, writes cover letters and submits.
- Job sites
- Indeed, LinkedIn, Glassdoor, ZipRecruiter, Google Jobs, 48 Workday employer portals and 30 direct career sites (README figures vary: 46/48 and 28/30). Greenhouse, Lever and Ashby: not stated.
- Licence
- AGPL-3.0
- Install
pip install applypilot; auto-apply also needs the Claude Code CLI and Chrome- Data
- Local config files (
profile.json,searches.yaml,.env). Otherwise not stated.
career-ops
Never submits: you click Submit- Does
- Evaluates and scores roles, tailors the CV, drafts answers and fills forms. Never submits.
- Job sites
- Autofill field-tested on Ashby, Greenhouse, Lever and Workable. Portal scanner covers Ashby, Greenhouse, Lever and Wellfound. Workday and LinkedIn Easy Apply: not stated.
- Licence
- MIT
- Install
npx @santifer/career-ops init, run in an AI coding CLI- Data
- Local project folder (or a data directory you choose)
LangHire
jaimaann/LangHire [7]Approval before submit: not stated- Does
- Desktop app whose browser agent collects jobs, fills forms, answers screening questions and submits. Parallel workers.
- Job sites
- LinkedIn Easy Apply and external ATS. Lists 30+ ATS including Workday, Greenhouse, Lever, iCIMS, SmartRecruiters and Taleo. Ashby: not stated.
- Licence
- MIT
- Install
- Desktop installers (macOS, Windows, Linux)
- Data
- "100% local", in the OS app data folder
JobPilot by Zeyad Elganainy
Never submits: you apply yourself- Does
- Self-hosted daily run that scans feeds, scores roles and writes a tailored résumé and cover letter. It never fills or submits applications.
- Job sites
- Reads Greenhouse, Lever and Ashby public feeds. Workday, Taleo and iCIMS postings go to a manual triage queue.
- Licence
- MIT
- Install
pip install -r requirements.txton your own machine or server- Data
- Your own machine or server. Keys and profile kept out of git.
JobPilot by suxrobGM
Approval before submit: optional, depends on mode- Does
- Searches boards, scores jobs and applies. Search-only mode waits for your approval. Auto-apply works up to a limit. "Pilot" can run the whole search.
- Job sites
- Boards: LinkedIn, Indeed, Hiring Cafe and others. ATS (Greenhouse, Lever, Ashby, Workday): not stated. LinkedIn Easy Apply: not stated.
- Licence
- MIT
- Install
- Claude Code or Codex plugin from the author's own marketplace, plus a terminal host
- Data
- Profile, résumés and applications in your JobPilot account. Browser sessions stay on your computer.
How to choose
- You want a person to approve every submit and you're comfortable in a coding agent. JobAppAgent, career-ops and agent-apply all keep you on the submit button. JobAppAgent also checks eligibility and duplicates, and only counts confirmed submissions. career-ops has the larger scanner and the CV and cover-letter tooling. agent-apply suits a spreadsheet tracker.
- You want the most hands-off pipeline. ApplyPilot is built to submit on its own across many boards and Workday portals. LangHire does the same from a desktop app. Both fit that need better than JobAppAgent, which defaults to review.
- You want documents prepared, and you apply yourself. Zeyad Elganainy's JobPilot never submits. It sends a daily digest with tailored documents.
- You want a desktop app rather than a coding agent. LangHire ships installers for macOS, Windows and Linux.
- You want a hosted dashboard and outreach in one place. suxrobGM's JobPilot keeps your data in a JobPilot account and includes recruiter outreach.
- You want everything on your machine with nothing sent anywhere. Check each project's analytics settings. JobAppAgent keeps your profile and résumé local, but its usage analytics, contact record and community sharing are on until you turn them off.
Not in the table
AI answers also mention "AIJobAgent" and "AutoApply". We couldn't match either name to one specific project, so they're left out rather than guessed. The repository feder-cr/Jobs_Applier_AI_Agent_AIHawk now redirects to a different project.
Sources
- github.com/vaibhavarora14/job-application-agent
- github.com/torontodeveloper/job-application-agent
- github.com/Yaima/agent-apply
- github.com/Pickle-Pixel/ApplyPilot
- github.com/career-ops-hq/career-ops
- github.com/career-ops-hq/career-ops/blob/main/docs/APPLY_AUTOFILL.md
- github.com/jaimaann/LangHire
- github.com/zeyadelganainy/job-agent-autopilot
- zeyad.ca/projects/job-agent
- github.com/suxrobGM/jobpilot
- github.com/suxrobGM/jobpilot/blob/main/docs/architecture.md