AI Job Application Bots: Open-Source and Self-Hosted
An AI job application bot is software that reads your resume, finds postings, fills each application form and submits it. A hosted bot runs on a company's servers. An open-source bot runs on your computer: you can read its code, you bring your own AI key, and you do the setup and carry the risk.
Disclosure: We make AIHawk. It appears on this page and we have a financial interest in it.
This page covers what these bots are and what running one yourself takes. It does not compare paid services; for those, see best AI job application tools. For how auto-apply works in general, and the platform rules, see the guide to auto applying to jobs.
Step 1: Hosted service or a bot you run yourself
A hosted service keeps your resume and answers on its servers and runs the browser for you. You pay the company and rely on its account and its rules. A bot you run yourself, also called self-hosted, installs on your own machine and opens a browser there. Nobody else operates it, so nobody else fixes it when a form changes.
Some tools sold as job application bots are browser extensions. An extension fills forms inside the browser you already use. A self-hosted bot is a separate program that drives its own browser.
Step 2: What open source changes
Open source means the code is public and carries a license that says what you may do with it. Three things change for you:
- You can read the code. You can see what it sends out and where. Most people will not read it all, but anyone can, and a project that hides nothing is easier to judge.
- You supply the AI. The bot sends your resume text and form questions to a language model. You get the key and pay the provider, or you run a model on your own machine.
- You do the work. Installing, updating, fixing a broken form and checking what was sent are your jobs. Fixes come from the maintainers, not from a support desk.
Step 3: What you need to run one
Requirements differ by project (see the table below), but they fall into four groups.
An operating system and a runtime. Some projects ship a launcher for Windows, macOS or Linux. Others need Python, and some also need Node.js. AIHawk's README gives one install command for Windows and one for Linux, and says its first start downloads about 250 MB.
A browser. The bot opens a real browser to fill forms. GodsScion's LinkedIn bot lists Google Chrome. AIHawk's README says its first application opens the browser in a window, so on Linux it needs a desktop.
A model key, or a local model. Provider pricing changes, so read the provider's own page. Google's Gemini API pricing page lists a free tier with free input and output tokens and limited access to certain models. On the paid tier it lists, for one example model (Gemini 3.5 Flash-Lite, Standard), $0.30 per 1M input tokens and $2.50 per 1M output tokens (Google AI Studio pricing; the page shows no date).
AIHawk asks for a key from OrcaRouter, a gateway whose homepage says "Top-ups and subscriptions bill at provider price. We add $0." (OrcaRouter). The AIHawk README says a new account starts with no credit, so you add money before the first start, and that an application costs "a few cents". What OrcaRouter stores about your requests is Unknown to us. We have not read its terms.
A local model avoids a per-use bill but uses your own hardware. One project below uses Ollama and says it needs "No expensive third-party API keys" (auto-job-apply README). We have not tested how well a small local model answers screening questions, so we make no claim about it.
Your time. Setup time is Unknown for every project here. Plan for debugging.
Step 4: What a bot does on a form, and where it stops
A typical run has four stages: build a search from your resume, collect postings, score them against your resume, then open each form, fill the fields, attach the resume and send. Where the stages differ is who chooses the jobs and which sites the bot can handle.
Captchas and accounts are the usual stopping points. AIHawk's sites page says that a captcha shown as a box "is clicked, as a person would", while on an image puzzle "the form stops as blocked, for the person to do by hand". For Workday it says the site "Needs an account on each company's site" (AIHawk sites page). The same page warns that "'Sent and confirmed' rests on one send per site" and should be read as "it can send", not "it sends reliably". Another project, ApplyPilot, lists an optional CapSolver key for captchas (ApplyPilot). Whether using a captcha-solving service is allowed on a given employer's site is Unknown; read that site's terms.
Step 5: How to judge a GitHub project before you run it
Spend ten minutes on the repository page first. Check these in order.
- License. Look for a license file or badge. No license stated means you have no clear permission to use or change the code. Licenses also differ: the table below shows MIT and AGPL-3.0 projects, and one project that changed license (GodsScion repository).
- Last commit. The repository page shows the date of the latest commit next to the file list. Our page reads did not return it, so we list it as Unknown below; look at it yourself. An old last commit is a warning because job sites change their forms often.
- Open issues. Open the Issues tab. Look for reports of broken forms, account bans or data problems. The count alone says little, since a popular project collects more issues.
- What data leaves your computer. Search the README for "telemetry", "analytics" and the name of the AI provider. AIHawk's README says it sends usage events to PostHog with a random ID made on your computer, and that "Nothing about you or the jobs goes with them: no name, email, resume, answer, company or link" (AIHawk README). Your resume still goes to whatever model provider you configure.
- Where passwords go. One LinkedIn bot's README says its config file holds your LinkedIn email and password (LinkedIn-Easy-Apply-Bot). Know where a credential is stored before you type it in.
- How it installs. A normal install is a package manager or a clone you can read. A one-line command that downloads a script and runs it in one go is a different risk. AIHawk's README gives such commands for both systems: on Windows
irm ... | iex, on Linuxcurl -LsSf ... | sh(AIHawk README). Piping a remote script into a shell runs whatever the server returns at that moment, with your user's permissions.
To read a script first, download it to a file instead of piping it, open it in a text editor, and run it only after you understand it. Our recommendation, which no source states: for any project, save the script, read it, check that the address it downloads from is the repository you meant, and then run the saved copy. This applies to AIHawk too.
Open-source job application bots on GitHub
We found these by searching GitHub for job application bots on 2026-11-12. We read each repository page that day and report only what it showed. The list is alphabetical by project name, is not a ranking, and does not cover every project. We have not tested any of them. Stars and forks measure attention, not quality. Last commit dates were not shown in what we read.
| Project | What its page says it automates | License | Stars, forks, issues (about, on 2026-11-12) | What you need | Tested by us |
|---|---|---|---|---|---|
| AIHawk (ours) | "AI job application bot", auto-applies to jobs that match your resume on company forms | MIT | 32.5k, 4.8k, 2 | OrcaRouter key; install scripts for Windows and Linux; last commit Unknown | Not tested |
| ApplyPilot | Six-stage pipeline: discover, enrich, score, tailor resume, cover letter, auto-apply | AGPL-3.0 | 1.8k, 644, 45 | Python 3.11+; Gemini key (page says free) or other models; Node.js 18+, Claude Code CLI and Chrome for auto-apply; last commit Unknown | Not tested |
| auto-job-apply (talha-004) | LinkedIn Easy Apply, Naukri Quick Apply, Indeed Apply and form auto-fill, with a local model. LinkedIn and Indeed rules apply (see note below) | MIT | 0, 0, issue count not shown | Python 3.10+, Node.js 18+, Ollama; last commit Unknown | Not tested |
| Auto_job_applier_linkedIn (GodsScion) | Automates job applications on LinkedIn; fills application questions "optionally with AI help". LinkedIn rules apply (see note below) | MIT | 3.0k, 834, 52 issues (not labelled open) | Python 3.10+, Google Chrome; last commit Unknown | Not tested |
| LinkedIn-Easy-Apply-Bot (NathanDuma) | LinkedIn Easy Apply, answers application questions. LinkedIn rules apply (see note below) | Not stated on the page | 256, 86, 37 issues (not labelled open) | Python, Selenium, a config file with your LinkedIn login; last commit Unknown | Not tested |
LinkedIn and Indeed rules. GodsScion's bot, auto-job-apply and LinkedIn-Easy-Apply-Bot act inside a logged-in LinkedIn session, and auto-job-apply also acts on Indeed. LinkedIn's and Indeed's own rules prohibit automating their apply flows, and either can restrict your account. We do not encourage using these bots on those sites; the rules, with sources, are in the guide to auto applying to jobs and the LinkedIn Easy Apply page.
All figures were shown on each project's own repository page on 2026-11-12 and change daily; star and fork counts are approximate. The GodsScion README says releases before August 2026 were AGPL-3.0. It also says you are responsible for how you use it, including making sure your use complies with the terms of any website or service you use it with. The NathanDuma README says "I am not responsible if your LinkedIn account gets suspended or for anything else."
AIHawk's own sites page lists sixteen company application systems, including Greenhouse, Lever and Workday, and says support varies by site (AIHawk sites page). For AIHawk, its README is the publisher's description and we repeat it as such.
Pitfalls and common mistakes
- Running an installer you did not read. See item 6 of step 5 above.
- Trusting a star count. A repository can have many stars and still break on today's forms. Check the last commit and the recent issues.
- Handing over a password. Prefer a bot that works through a browser session you sign in to yourself over one that stores a password in a plain config file.
- Leaving it unattended on a job board. LinkedIn and Indeed publish rules against automation in their own apply flows, and either may restrict an account. The details, with sources, are in the guide to auto applying to jobs. Choose each job yourself and read what was sent, because it goes out under your name.
- Assuming it works. None of the projects above publishes an interview rate on the pages we read, so that figure is Unknown.
FAQ
Is there a free job application bot?
Some are free to download. The model behind them may not be. Gemini's free tier is limited (Google AI Studio pricing), and a local model uses your own hardware. "Free" also does not cover your time or the account risk.
Is an open-source bot safer than a hosted one?
Not by itself. You can read the code, but you also run it with your own accounts and files. Safety depends on what you check first, using the list in step 5.
What is a job application bot GitHub project?
A repository that holds a bot's source code, with a README, a license, an issues list and a commit history. Those four things are what you inspect before running it.
Sources
All pages were read on 2026-11-12.
- AIHawk README: https://github.com/feder-cr/Jobs_Applier_AI_Agent#readme
- AIHawk sites page: https://github.com/feder-cr/Jobs_Applier_AI_Agent/blob/main/docs/sites.md
- AIHawk repository page: https://github.com/feder-cr/Jobs_Applier_AI_Agent
- GodsScion, Auto_job_applier_linkedIn: https://github.com/GodsScion/Auto_job_applier_linkedIn
- Pickle-Pixel, ApplyPilot: https://github.com/Pickle-Pixel/ApplyPilot
- talha-004, auto-job-apply (repository and README): https://github.com/talha-004/auto-job-apply and https://github.com/talha-004/auto-job-apply/blob/main/README.md
- NathanDuma, LinkedIn-Easy-Apply-Bot: https://github.com/NathanDuma/LinkedIn-Easy-Apply-Bot
- Google AI Studio, Gemini API pricing (page undated): https://aistudio.google.com/docs/pricing
- OrcaRouter: https://orcarouter.ai
Last verified: