Auto_Jobs_Applier_AI_Agent aims to easy job hunt process by automating the job application process. Utilizing artificial intelligence, it enables users to apply for multiple jobs in an automated and personalized way.
đ¤đ Your AI-powered job search assistant. Automate applications, get personalized recommendations and land your dream job faster.
Join our community: Telegram (for Normal users)
Creator feder-cr, Co-Founder of AIHawk
As AIHawk is focusing on their proprietary product - solving problems in hiring for companies, currently this project is led, managed, and maintained by a group of open-source contributors, with a focus on building tools to help job seekers land the jobs they deserve.
Project Maintainers / Leads: surapuramakhil, sarob, cjbbb
We are looking to expand our FOSS maintainers team! If you are from a non-technical background, you can be part of the project management team, triaging issues, and shaping the project. If you are a technical person, you can join in doing code reviews, participating in releases, and building a better version of this product.
reach out to surapuramakhil on Discord. Special thanks
Auto_Jobs_Applier_AIHawk is continuously evolving, and your feedback, suggestions, and contributions are highly valued. Feel free to open issues, suggest enhancements, or submit pull requests to help improve the project. Letâs work together to make Auto_Jobs_Applier_AIHawk a powerful tool for job seekers worldwide.
Auto_Jobs_Applier_AIHawk is a cutting-edge, automated tool designed to revolutionize the job search and application process. In todayâs fiercely competitive job market, where opportunities can vanish in the blink of an eye, this program offers job seekers a significant advantage by leveraging the power of automation and artificial intelligence.
In the digital age, the job search landscape has undergone a dramatic transformation. While online platforms have opened up a world of opportunities, they have also intensified competition. Job seekers often find themselves spending countless hours scrolling through listings, tailoring applications, and repetitively filling out forms. This process can be not only time-consuming but also emotionally draining, leading to job search fatigue and missed opportunities.
Confirmed successful runs on the following:
Download and Install Python:
Ensure you have the last Python version installed. If not, download and install it from Pythonâs official website. For detailed instructions, refer to the tutorials:
Download and Install Google Chrome:
Clone the repository:
git clone https://github.com/code-infected/Auto_Jobs_Applier_AI_Agent.git
cd Auto_Jobs_Applier_AI_Agent
Activate virtual environment:
For Unix-based machines -
python3 -m venv virtual
source virtual/bin/activate
or for Windows-based machines -
.\virtual\Scripts\activate
Install the required packages:
Before installing the required packages, make sure to install https://visualstudio.microsoft.com/visual-cpp-build-tools/ and select âDesktop development with C++â.
pip install -r requirements.txt
This file contains sensitive information. Never share or commit this file to version control.
llm_api_key: [Your OpenAI or Ollama API key or Gemini API key]
Free
account type. This prevents them from having unlimited access to OpenAI models and allows only 200 requests per day. This might cause runtime errors such as:Error code: 429 - {'error': {'message': 'You exceeded your current quota, please check your plan and billing details. ...}}
{'error': {'message': 'Rate limit reached for gpt-4o-mini in organization <org> on requests per day (RPD): Limit 200, Used 200, Requested 1.}}
LLM_MODEL_TYPE
:
LLM_MODEL
:
LLM_API_URL
:
LLM_API_URL
field is only required for Ollama.This file contains your resume information in a structured format. Fill it out with your personal details, education, work experience, and skills. This information is used to auto-fill application forms and generate customized resumes.
Each section has specific fields to fill out:
personal_information:
personal_information:
name: "Jane"
surname: "Doe"
date_of_birth: "01/01/1990"
country: "USA"
city: "New York"
address: "123 Main St"
zip_code: "520123"
phone_prefix: "+1"
phone: "5551234567"
email: "[email protected]"
github: "https://github.com/janedoe"
linkedin: "https://www.linkedin.com/in/janedoe/"
education_details:
This section outlines your academic background, including degrees earned and relevant coursework.
Example:
education_details:
- education_level: "Bachelor's Degree"
institution: "University of Example"
field_of_study: "Software Engineering"
final_evaluation_grade: "4/4"
start_date: "2021"
year_of_completion: "2023"
exam:
Algorithms: "A"
Data Structures: "B+"
Database Systems: "A"
Operating Systems: "A-"
Web Development: "B"
experience_details:
This section details your work experience, including job roles, companies, and key responsibilities.
Example:
experience_details:
- position: "Software Developer"
company: "Tech Innovations Inc."
employment_period: "06/2021 - Present"
location: "San Francisco, CA"
industry: "Technology"
key_responsibilities:
- responsibility: "Developed web applications using React and Node.js"
- responsibility: "Collaborated with cross-functional teams to design and implement new features"
- responsibility: "Troubleshot and resolved complex software issues"
skills_acquired:
- "React"
- "Node.js"
- "Software Troubleshooting"
projects:
Include notable projects you have worked on, including personal or professional projects.
Example:
projects:
- name: "Weather App"
description: "A web application that provides real-time weather information using a third-party API."
link: "https://github.com/janedoe/weather-app"
- name: "Task Manager"
description: "A task management tool with features for tracking and prioritizing tasks."
link: "https://github.com/janedoe/task-manager"
achievements:
Highlight notable accomplishments or awards you have received.
Example:
achievements:
- name: "Employee of the Month"
description: "Recognized for exceptional performance and contributions to the team."
- name: "Hackathon Winner"
description: "Won first place in a national hackathon competition."
certifications:
Include any professional certifications you have earned.
Example:
certifications:
- "Certified Scrum Master"
- "AWS Certified Solutions Architect"
languages:
Detail the languages you speak and your proficiency level in each.
Example:
languages:
- language: "English"
proficiency: "Fluent"
- language: "Spanish"
proficiency: "Intermediate"
interests:
Mention your professional or personal interests that may be relevant to your career.
Example:
interests:
- "Machine Learning"
- "Cybersecurity"
- "Open Source Projects"
- "Digital Marketing"
- "Entrepreneurship"
availability:
State your current availability or notice period.
Example:
availability:
notice_period: "2 weeks"
salary_expectations:
Provide your expected salary range.
Example:
salary_expectations:
salary_range_usd: "80000 - 100000"
self_identification:
Provide information related to personal identity, including gender and pronouns.
Example:
self_identification:
gender: "Female"
pronouns: "She/Her"
veteran: "No"
disability: "No"
ethnicity: "Asian"
legal_authorization:
Indicate your legal ability to work in various locations.
Example:
legal_authorization:
eu_work_authorization: "Yes"
us_work_authorization: "Yes"
requires_us_visa: "No"
requires_us_sponsorship: "Yes"
requires_eu_visa: "No"
legally_allowed_to_work_in_eu: "Yes"
legally_allowed_to_work_in_us: "Yes"
requires_eu_sponsorship: "No"
canada_work_authorization: "Yes"
requires_canada_visa: "No"
legally_allowed_to_work_in_canada: "Yes"
requires_canada_sponsorship: "No"
uk_work_authorization: "Yes"
requires_uk_visa: "No"
legally_allowed_to_work_in_uk: "Yes"
requires_uk_sponsorship: "No"
work_preferences:
Specify your preferences for work arrangements and conditions.
Example:
work_preferences:
remote_work: "Yes"
in_person_work: "No"
open_to_relocation: "Yes"
willing_to_complete_assessments: "Yes"
willing_to_undergo_drug_tests: "No"
willing_to_undergo_background_checks: "Yes"
The data_folder_example
folder contains a working example of how the files necessary for the botâs operation should be structured and filled out. This folder serves as a practical reference to help you correctly set up your work environment for the job search bot.
Inside this folder, youâll find example versions of the key files:
secrets.yaml
plain_text_resume.yaml
These files are already populated with fictitious but realistic data. They show you the correct format and type of information to enter in each file.
Using this folder as a guide can be particularly helpful for:
Data Folder:
Ensure that your data_folder contains the following files:
secrets.yaml
plain_text_resume.yaml
Output Folder:
Contains the output of the bot.
TODO
Run the Bot:
Auto_Jobs_Applier_AIHawk offers flexibility in how it handles your PDF resume:
Resume and Cover Letter Generation:
python main.py
Error Message:
openai.RateLimitError: Error code: 429 - {âerrorâ: {âmessageâ: âYou exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors.â, âtypeâ: âinsufficient_quotaâ, âparamâ: None, âcodeâ: âinsufficient_quotaâ}}
Solution:
Issue: Bot provides inaccurate data for experience, CTC, and notice period
Solution:
config.py
for current CTC, expected CTC, and notice periodError Message:
yaml.scanner.ScannerError: while scanning a simple key
Solution:
config.yaml
and modify graduallyFor further assistance, please create an issue on the GitHub repository with detailed information about your problem, including error messages and your configuration (with sensitive information removed).
Ollama Setup
Gemini Setup
Editing YAML Files
Auto-start AIHawk
Video Tutorial
If you encounter any issues, you can open an issue on GitHub.
Please add valuable details to the subject and to the description. If you need a new feature then please reflect this.
Iâll be more than happy to assist you!
Note for Contributors: If you would like to submit a Pull Request (PR), please target the release
branch instead of main
. The release
branch is used for testing new code changes and will be periodically merged into main
after validation. This approach ensures that only tested features are included in the main branch.
Auto_Jobs_Applier_AIHawk provides a significant advantage in the modern job market by automating and enhancing the job application process. With features like dynamic resume generation and AI-powered personalization, it offers unparalleled flexibility and efficiency. Whether youâre a job seeker aiming to maximize your chances of landing a job, a recruiter looking to streamline application submissions, or a career advisor seeking to offer better services, Auto_Jobs_Applier_AIHawk is an invaluable resource. By leveraging cutting-edge automation and artificial intelligence, this tool not only saves time but also significantly increases the effectiveness and quality of job applications in todayâs competitive landscape.
If you like the project please star â the repository!
Made with contrib.rocks.
This project is licensed under the AGPL License. Documentation is licensed under CC BY - see the AGPL LICENSE and CC BY LICENSE files for details.
The AGPL License requires that any derivative work must also be open source and distributed under the same license.
The CC BY License permits others to distribute, remix, adapt, and build upon your work, even for commercial purposes, as long as they credit you for the original creation.
This tool, Auto_Jobs_Applier_AIHawk, is intended for use at your own risk. The creators / maintainers / contributors assume no responsibility for any consequences arising from its use. Users are advised to comply with the terms of service of relevant platforms and adhere to all applicable laws, regulations, and ethical guidelines. The use of automated tools for job applications may carry risks, including potential impacts on user accounts. Proceed with caution and at your own discretion.