A multi agent AI system that turns a resume and a job description into a tailored application package - resume builder, tailored resume and cover letter for each job. Backed by a curated job pool of 14,000+ live ATS roles refreshed every four hours.
Architecture
Problem
Applying for roles is a slow, repetitive grind. Tailoring a resume and cover letter for every JD takes hours, and most applicants do it without any structured signal about whether the role is actually a fit.
Solution
A pipeline of LLM and deterministic stages, end-to-end. Resume and JD are first parsed into structured profiles by LLM intake services. A deterministic Matchmaker scores skill overlap on those structured inputs. Four downstream LLM agents - Tailoring, Review, Resume Generation, and Cover Letter, each consuming the previous outputs to produce tailored DOCX and PDF artifacts. A grounded workspace assistant answers follow-up questions with citations back to the source resume and JD.
Landing & Workspace Preview
How it works
1. Job pool & cache layer
2. LLM-parsed intake
Both the uploaded resume and the pasted job description are parsed by dedicated LLM services into structured records - title, location, salary, hard skills, soft skills, must-haves, nice-to-haves on the JD side; experience, skills, and project history on the resume side. Everything downstream operates on these structured profiles.
4. Tailoring & Review Agents
Tailoring rewrites resume content to mirror the JD's vocabulary. Review checks the result - flags weak claims, third-person slips, and unsupported bullets to ensure the next stage gets clean inputs.
5. Resume & Cover Letter Generators
Two sibling LLM agents that produce the final artifacts. Resume Generation emits the tailored resume; Cover Letter Generator drafts a personalized letter from the candidate's actual project history. Both render as DOCX (python-docx) and PDF (WeasyPrint, with a ReportLab fallback).
5. Workspace Assistant
Tech Stack
- Next.js 16, React 19, Tailwind on Vercel
- FastAPI on OVH VPS, Caddy, Docker Compose
- Supabase Postgres with pg_cron + pg_net
- OpenAI API, 3-layer retry, per-agent fallback isolation
- WeasyPrint + python-docx for PDF and DOCX rendering





