Flagship project
AI Job Agent
Job searching is fragmented across boards, ATS platforms, email alerts, referrals, resumes, and follow-ups. AI Job Agent is a desktop application that keeps those workflows together — discovering roles, scoring fit, and preparing grounded application material — without handing account control to an uncontrolled bot.
How it works
Human review is a durable pause, not a formality — the run checkpoints to disk and won't move to assisted-apply without an explicit approval.
Interactive demo
Pick a fictional job, watch the fit score break down, review a tailored resume, and step through the human-approval gate yourself.
Runs entirely in your browser on synthetic data — no real account, board, or application is ever touched.
Try the demoPlatform support
AI architecture
Model calls go through an application-owned provider abstraction rather than a single hardcoded SDK, so the same scoring and tailoring logic runs against Anthropic, OpenAI, NVIDIA NIM, or a local Ollama model. Fit scoring mixes model-judged categories (required skills, tech stack, experience level, preferred skills) with deterministic ones (seniority, location, remote preference, employment type, salary) — the model never sees the category weights, and application code, not the model, owns the safety rules and state transitions.
Safety architecture
- ▸Applicant data stays on the local machine — no hosted database, no server, no multi-tenant store.
- ▸The renderer process has no Node.js, filesystem, or credential access; a narrow typed bridge is the only path to the main process.
- ▸Background workers (discovery, run execution, assisted-apply sessions, Naukri handoff) run isolated, so a crash in one doesn't take the app down.
- ▸CAPTCHA and MFA are never automated or bypassed — those steps stay in the applicant's hands.
- ▸Nothing clicks Submit. ATS adapters have no submit method; a separate human confirmation records that a submission happened after the applicant does it themselves.
- ▸Standard ATS applications get a fresh browser context per application, discarded afterward, including on failure paths. Naukri assisted handoff is the deliberate exception — a durable, leased profile survives across applications, guarded by a single-holder lease rather than per-application isolation.
Engineering evidence
290+ test files across backend, desktop, and Electron E2E as of August 2026. Cross-platform packaging targets Windows, macOS, and Linux.
Lessons learned
- Stale DOM selectors on real ATS forms break silently — verification has to re-read filled values after the form settles, not just trust the write.
- The Naukri handoff needed the opposite of per-application isolation — a durable, leased browser profile, since a login session has to survive across applications; a single-holder lease prevents two applications from fighting over it.
- Dependable agent behavior comes from explicit boundaries (typed state transitions, deterministic policy, process isolation) more than from a better prompt.
- Conservative capability labeling matters: a platform with implemented form-filling but no live validation is marked experimental, not fully supported.