Monorepo with three related projects focused on job search, hiring workflows, and developer portfolio evaluation. Each subproject runs independently and has its own dependencies and runtime.
Subprojects
BOT_Detector: Bot detection project (see folder for details).crawler_agent: Crawls GitHub repos and technical articles, then uses an LLM to generate review feedback.Hiring_Assistant/cv-chat-ai: TalentScout hiring assistant chatbot (FastAPI backend + React/Vite frontend).HR_Project: JSO HR Intelligence Agent (CLI workflow over a local SQLite candidate database).
Top-Level Structure
BOT_Detector/crawler_agent/Hiring_Assistant/HR_Project/
Sentinel-JSO is an automated security agent that protects the JSO platform from fake accounts, bot activity, and fraudulent recruitment. It assigns every user a dynamic risk score using a 4-signal weighted model (behavior · account linkage · content · device/IP), auto-escalates high-risk accounts to the Super Admin dashboard, and powers a LangChain + Gemini AI investigation pipeline that lets admins query any flagged account in plain English and receive a full explainable report. Built with Flask, SQLite, and a Faker-generated dataset of 200 users, 1,800+ activity logs, and 15 bot clusters.
→ See /BOT_Detector/README.md for full setup and documentation.
What it does
- Fetches GitHub repo metadata, READMEs, and recent commits
- Optionally fetches and summarizes technical articles
- Produces review feedback using a configurable LLM provider
Entry point
crawler_agent/Github Crwaler Agent/main.py
Config
crawler_agent/Github Crwaler Agent/config.yaml
Run (PowerShell)
cd "crawler_agent/Github Crwaler Agent"
python main.pyNotes
- Required Python packages are inferred from imports in
crawler_agent/(examples:requests,PyYAML,newspaper3k,langchain-*). - Update
config.yamlwith your GitHub username, provider, model, and API keys.
What it does
- Screens candidates by collecting required info
- Generates 3 to 5 technical questions based on candidate tech stack
- Supports OpenAI, Anthropic, and Gemini providers
- See
/Hiring_Assistant/README.mdfor full setup and documentation.
Backend
cd "Hiring_Assistant/cv-chat-ai/backend"
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
uvicorn main:app --reload --port 8000Frontend
cd "Hiring_Assistant/cv-chat-ai"
npm install
# create .env in this folder with:
# VITE_API_URL=http://localhost:8000
npm run devWhat it does
- Conversational HR assistant to query a local SQLite candidate database
- Supports SQL, semantic search, hybrid search, comparisons, explanations, and stats
- Uses Anthropic Claude for intent classification and SQL generation
- See
/HR_Project/README.mdfor full setup and documentation.
Run
cd "HR_Project"
python setup_db.py
python main.pyConfiguration
- Set
ANTHROPIC_API_KEYin a.envfile or environment variables.
Known Issues (as of this repo state)
HR_Project/main.pyandHR_Project/orchestrator.pyimport modules fromdatabase/,agents/, andutils/packages that are not present in this repo. The code is currently in a flat file layout. You may need to update imports (for example,from setup_db import setup_database,from orchestrator import HRAgent,from config import ...) or recreate those package directories.HR_Project/config.pypointsDB_PATHto../database/jso_hr.db, but the database file is located atHR_Project/jso_hr.dbby default.
- This repo contains multiple independent runtimes. Create separate virtual environments for Python projects and avoid sharing dependencies across them unless pinned.
- The
Hiring_Assistant/cv-chat-aifrontend and backend are designed to run in two terminals. - The
crawler_agentuses direct API calls and LLM providers. Avoid committing real API keys into the repository.
No top-level license file found. Individual subprojects may define their own licenses.