PlacePilot
PlacePilot: a placement agent that finds, tailors, tracks and coaches students, and sends nothing without their approval.
Built at AgentX Hackathon 2026
Team ZYRO: Gandharv Shinde, Swapnil Sandip Gangate, Siddesh Shirote, Atif Panhalkar
Built with Python 3.13, FastAPI, SQLite, Next.js 15, React 19, TypeScript, Adzuna API (optional), OpenRouter (optional), pytest
About the project
Final-year students blast one generic resume at hundreds of openings, miss deadlines in a graveyard of browser tabs, and walk into interviews unprepared. "AI applies for you" tools make it worse: they trust a prompt to behave.
PlacePilot is a placement agent that does the searching, tailoring and coaching, and refuses to send anything until the student says yes.
How it works: it parses a resume into verified facts the student can uncheck one by one. It searches openings and ranks them with a fit score and named gaps. It writes a tailored resume and cover note using only those verified facts, shown as a line diff against the base resume. Skills a job wants that the student doesn't have appear under "Deliberately not claimed" and never get written into a document. It tracks every deadline, then runs scored mock interviews that remember weak topics and reopen them next session.
The key idea is that the refusal is structural, not a prompt. The send endpoint returns HTTP 422 without approval, the agent's own tool executor refuses, and a SQLite trigger rejects the insert even if both layers are bypassed. Three independent locks, each with a test. An approval is bound to one exact document bundle, so editing a fact afterwards expires the old yes (409 approval_stale).
Impact: students apply to fewer, better-fit roles with honest, tailored documents and real interview practice, while keeping full control. It runs with no API keys; real job search (Adzuna) and LLM planning (OpenRouter) are optional and off by default. 39 automated tests pass.