LEPA Support Agent
A LangGraph support workflow for LEPA: typed state, conditional routing, tools, memory, and a multi-agent split behind FastAPI.
- Python
- LangGraph
- FastAPI
- SQLite
- OpenRouter
Learning project in the AI Learning Tracker series. The AI never auto-submits applications.
Parse a job and a CV, explain the match, draft materials, then stop for a human. The AI never applies.
The AI Job Application Assistant is Project 3-B. It parses a job posting and a CV, runs an explainable hybrid match, drafts application materials, and waits for human review before anything is finalized. FastAPI is the HTTP surface; LangGraph owns the workflow. Evaluation packs score skill recall, score range, stability, and grounding.
Most “AI apply” demos skip the dangerous part: sending something in your name. I wanted a workflow that can help with matching and drafts, then stop.
A LangGraph workflow parses inputs, scores overlap with an explainable hybrid matcher, drafts materials grounded in the CV, and inserts a human-in-the-loop review before finalize. Golden packs under app/eval exercise strong match, weak match, domain shift, and alias overlap without requiring a paid LLM.
A LangGraph support workflow for LEPA: typed state, conditional routing, tools, memory, and a multi-agent split behind FastAPI.
An async document pipeline: upload or webhook, Temporal extract/analyze/summarize, then Trigger.dev email — without blocking the request.
A public repo of small AI engineering projects — terminal agents, MCP, LangGraph, and async document workflows — built while learning in public.
Parse a job and a CV, explain the match, draft materials, then stop for a human. The AI never applies.
What HITL actually means — and why asking “which LEPA area?” is not the same thing.