{"name":"Hiring Agent: An AI Agent for Resume Evaluation and Scoring","description":"Hiring Agent is an open-source AI agent designed to evaluate and score resumes objectively. It extracts structured data from PDF resumes, enriches it with GitHub profile signals, and provides a fair, explainable evaluation with detailed scores and evidence. This tool supports both local LLMs via Ollama and cloud-based options like Google Gemini.","github":"https://github.com/interviewstreet/hiring-agent","url":"https://osrepos.com/repo/interviewstreet-hiring-agent","source":"osrepos.com","sourceDescription":"This repository profile is provided by osrepos.com, an open source repository discovery platform.","repositoryProfile":"https://osrepos.com/repo/interviewstreet-hiring-agent","generatedFor":"open source discovery and AI-assisted research","markdown":"https://osrepos.com/repo/interviewstreet-hiring-agent.md","json":"https://osrepos.com/repo/interviewstreet-hiring-agent.json","topics":["Python","AI","Machine Learning","Resume Parsing","HR Tech","LLM","Open Source"],"keywords":["Python","AI","Machine Learning","Resume Parsing","HR Tech","LLM","Open Source"],"stars":null,"summary":"Hiring Agent is an open-source AI agent designed to evaluate and score resumes objectively. It extracts structured data from PDF resumes, enriches it with GitHub profile signals, and provides a fair, explainable evaluation with detailed scores and evidence. This tool supports both local LLMs via Ollama and cloud-based options like Google Gemini.","content":"## Introduction\n\nHiring Agent is a powerful open-source AI tool developed by InterviewStreet, designed to streamline and enhance the resume evaluation process. It automates the extraction of structured data from PDF resumes, enriches this data with valuable GitHub profile and repository signals, and then generates an objective, explainable evaluation. This system aims to provide a consistent and fair scoring mechanism for candidate resumes.\n\nThe agent's core functionality involves parsing resume PDFs into a markdown-like format, extracting key information using large language models (LLMs), and augmenting this data with insights from a candidate's GitHub activity. The final output includes category scores, supporting evidence, bonus points, and deductions, offering a comprehensive overview of a candidate's profile. It offers flexibility by supporting both local LLM setups with Ollama and cloud-based solutions like Google Gemini.\n\n## Installation\n\nGetting started with Hiring Agent is straightforward. Follow these steps to set up the project on your local machine:\n\n### Prerequisites\n\n*   **Python 3.11+**: The repository is configured for Python 3.11.13.\n*   **One LLM backend**: Choose either Ollama for local models or Google Gemini if you have an API key.\n    *   **Ollama**: Install from the [official site](https://ollama.com/ \"Ollama Official Site\" target=\"_blank\"), then run `ollama serve`.\n    *   **Google Gemini**: Obtain an API key from [AI Studio](https://aistudio.google.com/api-keys \"Google AI Studio\" target=\"_blank\").\n\n### Quick setup with pip\n\nbash\n$ git clone https://github.com/interviewstreet/hiring-agent.git\n$ cd hiring-agent\n\n$ python -m venv .venv\n# Linux or macOS\n$ source .venv/bin/activate\n# Windows\n# .venv\\Scripts\\activate\n\n$ pip install -r requirements.txt\n\n\n### Ollama Models\n\nIf you're using Ollama, pull the desired model. For example:\n\nbash\n$ ollama pull gemma3:4b\n\n\n### Configuration\n\nCopy the example environment file and configure your LLM provider and model:\n\nbash\n$ cp .env.example .env\n\n\nEdit the `.env` file to set `LLM_PROVIDER` (e.g., `ollama` or `gemini`), `DEFAULT_MODEL` (e.g., `gemma3:4b` or `gemini-2.5-pro`), and `GEMINI_API_KEY` if using Gemini. Optionally, set `GITHUB_TOKEN` for improved GitHub API rate limits.\n\n## Examples\n\nTo score a resume end-to-end, simply provide the path to a PDF file using the command-line interface:\n\nbash\n$ python score.py /path/to/resume.pdf\n\n\nWhen you run this command, the following actions occur:\n\n1.  If `DEVELOPMENT_MODE` is enabled in `config.py`, the PDF extraction result is cached.\n2.  If a GitHub profile is identified in the resume, repositories are fetched and cached.\n3.  The evaluator generates a detailed report, which is printed to standard output. In development mode, a CSV row is also appended to `resume_evaluations.csv`.\n\n## Why Use It\n\nHiring Agent offers several compelling advantages for anyone involved in the hiring process:\n\n*   **Objective and Explainable Evaluations**: It provides a structured scoring system with clear evidence, reducing bias and increasing transparency in resume assessments.\n*   **GitHub Enrichment**: By integrating GitHub profile and repository data, it offers a deeper, more holistic view of a candidate's technical contributions and project experience.\n*   **Flexible LLM Support**: The ability to use both local LLMs (Ollama) and cloud-based LLMs (Google Gemini) provides flexibility in deployment and cost management.\n*   **Modular Architecture**: Its well-defined modules for PDF parsing, data extraction, GitHub integration, and evaluation make it extensible and easy to maintain.\n*   **Open-Source**: Being open-source, it allows for community contributions, customization, and continuous improvement, adapting to evolving hiring needs.\n\n## Links\n\n*   **GitHub Repository**: [https://github.com/interviewstreet/hiring-agent](https://github.com/interviewstreet/hiring-agent \"Hiring Agent GitHub Repository\" target=\"_blank\")","metrics":{"detailViews":3,"githubClicks":1},"dates":{"published":null,"modified":"2026-06-26T07:23:46.000Z"}}