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]
- Replace with your OpenAI API key for GPT integration
- To obtain an API key, follow the tutorial at: https://medium.com/@lorenzozar/how-to-get-your-own-openai-api-key-f4d44e60c327
- Note: You need to add credit to your OpenAI account to use the API. You can add credit by visiting the OpenAI billing dashboard.
- According to the OpenAI community and our users' reports, right after setting up the OpenAI account and purchasing the required credits, users still have a
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.}}
OpenAI will update your account automatically, but it might take some time, ranging from a couple of hours to a few days.
You can find more about your organization limits on the official page. - For obtaining Gemini API key visit Google AI for Devs
This file defines your job search parameters and bot behavior. Each section contains options that you can customize:
-
remote: [true/false]
- Set to
true
to include remote jobs,false
to exclude them
- Set to
-
hybrid: [true/false]
- Set to
true
to include hybrid jobs,false
to exclude them
- Set to
-
onsite: [true/false]
- Set to
true
to include onsite jobs,false
to exclude them
- Set to
-
experience_level:
- Set desired experience levels to
true
, others tofalse
- Set desired experience levels to
-
job_types:
- Set desired job types to
true
, others tofalse
- Set desired job types to
-
date:
- Choose one time range for job postings by setting it to
true
, others tofalse
- Choose one time range for job postings by setting it to
-
positions:
-
List job titles you're interested in, one per line
-
Example:
positions: - Software Developer - Data Scientist
-
-
keywords_whitelist:
-
List keywords to look for in the job description, for example, "chromium browser". This field is optional.
-
Only use this field to find jobs that require specific technologies, products, or skills that is not mentioned in the job title.
-
Warning: Any jobs without matching keywords in the job description will be skipped.
-
Example:
keywords_whitelist: - chromium browser
-
-
locations:
-
List locations you want to search in, one per line
-
Example:
locations: - Italy - London
-
-
apply_once_at_company: [True/False]
- Set to
True
to apply only once per company,False
to allow multiple applications per company
- Set to
-
distance: [number]
- Set the radius for your job search in miles
- Example:
distance: 50
-
companyBlacklist:
-
List companies you want to exclude from your search, one per line
-
Example:
companyBlacklist: - Company X - Company Y
-
-
titleBlacklist:
-
List keywords in job titles you want to avoid, one per line
-
Example:
titleBlacklist: - Sales - Marketing
-
LLM_MODEL_TYPE
:- Choose the model type, supported: openai / ollama / claude / gemini
LLM_MODEL
:- Choose the LLM model, currently supported:
- openai: gpt-4o
- ollama: llama2, mistral:v0.3
- claude: any model
- gemini: any model
- Choose the LLM model, currently supported:
LLM_API_URL
:- Link of the API endpoint for the LLM model
- openai: https://api.pawan.krd/cosmosrp/v1
- ollama: http://127.0.0.1:11434/
- claude: https://api.anthropic.com/v1
- gemini: https://aistudio.google.com/app/apikey
- Link of the API endpoint for the LLM model
- Note: To run local Ollama, follow the guidelines here: Guide to Ollama deployment
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:
- This section contains basic personal details to identify yourself and provide contact information.
- name: Your first name.
- surname: Your last name or family name.
- date_of_birth: Your birth date in the format DD/MM/YYYY.
- country: The country where you currently reside.
- city: The city where you currently live.
- address: Your full address, including street and number.
- zip_code: Your postal/ZIP code.
- phone_prefix: The international dialing code for your phone number (e.g., +1 for the USA, +44 for the UK).
- phone: Your phone number without the international prefix.
- email: Your primary email address.
- github: URL to your GitHub profile, if applicable.
- linkedin: URL to your LinkedIn profile, if applicable.
- Example
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/"
- This section contains basic personal details to identify yourself and provide contact information.
-
education_details:
-
This section outlines your academic background, including degrees earned and relevant coursework.
- degree: The type of degree obtained (e.g., Bachelor's Degree, Master's Degree).
- university: The name of the university or institution where you studied.
- final_evaluation_grade: Your Grade Point Average or equivalent measure of academic performance.
- start_date: The start year of your studies.
- graduation_year: The year you graduated.
- field_of_study: The major or focus area of your studies.
- exam: A list of courses or subjects taken along with their respective grades.
-
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.
- position: Your job title or role.
- company: The name of the company or organization where you worked.
- employment_period: The timeframe during which you were employed in the role, using the format MM/YYYY - MM/YYYY.
- location: The city and country where the company is located.
- industry: The industry or field in which the company operates.
- key_responsibilities: A list of major responsibilities or duties you had in the role, e.g. responsibility: "Developed web applications using React and Node.js".
- skills_acquired: Skills or expertise gained through this role, e.g. "React".
-
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.
- name: The name or title of the project.
- description: A brief summary of what the project involves or its purpose.
- link: URL to the project, if available (e.g., GitHub repository, website).
-
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.
- name: The title or name of the achievement.
- description: A brief explanation of the achievement and its significance.
-
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.
- name: "PMP"
description: "Certification for project management professionals, issued by the Project Management Institute (PMI)"
- name: "PMP"
-
Example:
certifications: - "Certified Scrum Master" - "AWS Certified Solutions Architect"
-
-
languages:
-
Detail the languages you speak and your proficiency level in each.
- language: The name of the language.
- proficiency: Your level of proficiency (e.g., Native, Fluent, Intermediate).
-
Example:
languages: - language: "English" proficiency: "Fluent" - language: "Spanish" proficiency: "Intermediate"
-
-
interests:
-
Mention your professional or personal interests that may be relevant to your career.
- interest: A list of interests or hobbies.
-
Example:
interests: - "Machine Learning" - "Cybersecurity" - "Open Source Projects" - "Digital Marketing" - "Entrepreneurship"
-
-
availability:
-
State your current availability or notice period.
- notice_period: The amount of time required before you can start a new role (e.g., "2 weeks", "1 month").
-
Example:
availability: notice_period: "2 weeks"
-
-
salary_expectations:
-
Provide your expected salary range.
- salary_range_usd: The salary range you are expecting, expressed in USD.
-
Example:
salary_expectations: salary_range_usd: "80000 - 100000"
-
-
self_identification:
-
Provide information related to personal identity, including gender and pronouns.
- gender: Your gender identity.
- pronouns: The pronouns you use (e.g., He/Him, She/Her, They/Them).
- veteran: Your status as a veteran (e.g., Yes, No).
- disability: Whether you have a disability (e.g., Yes, No).
- ethnicity: Your ethnicity.
-
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.
- eu_work_authorization: Whether you are authorized to work in the European Union (Yes/No).
- us_work_authorization: Whether you are authorized to work in the United States (Yes/No).
- requires_us_visa: Whether you require a visa to work in the United States (Yes/No).
- requires_us_sponsorship: Whether you require sponsorship to work in the United States (Yes/No).
- requires_eu_visa: Whether you require a visa to work in the European Union (Yes/No).
- legally_allowed_to_work_in_eu: Whether you are legally allowed to work in the European Union (Yes/No).
- legally_allowed_to_work_in_us: Whether you are legally allowed to work in the United States (Yes/No).
- requires_eu_sponsorship: Whether you require sponsorship to work in the European Union (Yes/No).
- canada_work_authorization: Whether you are authorized to work in Canada (Yes/No).
- requires_canada_visa: Whether you require a visa to work in Canada (Yes/No).
- legally_allowed_to_work_in_canada: Whether you are legally allowed to work in Canada (Yes/No).
- requires_canada_sponsorship: Whether you require sponsorship to work in Canada (Yes/No).
- uk_work_authorization: Whether you are authorized to work in the United Kingdom (Yes/No).
- requires_uk_visa: Whether you require a visa to work in the United Kingdom (Yes/No).
- legally_allowed_to_work_in_uk: Whether you are legally allowed to work in the United Kingdom (Yes/No).
- requires_uk_sponsorship: Whether you require sponsorship to work in the United Kingdom (Yes/No).
-
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.
- remote_work: Whether you are open to remote work (Yes/No).
- in_person_work: Whether you are open to in-person work (Yes/No).
- open_to_relocation: Whether you are willing to relocate for a job (Yes/No).
- willing_to_complete_assessments: Whether you are willing to complete job assessments (Yes/No).
- willing_to_undergo_drug_tests: Whether you are willing to undergo drug testing (Yes/No).
- willing_to_undergo_background_checks: Whether you are willing to undergo background checks (Yes/No).
-
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
config.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:
- Understanding the correct structure of each configuration file
- Seeing examples of valid data for each field
- Having a reference point while filling out your personal files