Skip to content
Nick VidalLet's talk

All work

Personal project · Open source · 2026

The ZeroHour Times: a job search that doesn't flatter you

The first version of my AI job matcher was a flatterer. It rated nearly every role 85 to 92, including one whose own analysis admitted the core work wasn't in my background. So I rebuilt it to be honest, and to print a daily front page I can read with coffee.

The ZeroHour Times front page: a newspaper-style layout listing five job postings with apply or explore verdicts, and a featured posting with its rating and reasoning.
The front page, built from the project's demo data. Every company and posting shown is fictional.

What I built

It runs on your own machine, polls the job boards of employers you choose, and rebuilds one readable page after every run. It works alongside JobSync, an open-source job tracker by Gsync, instead of replacing it.

  • Finds openings on public Greenhouse, Lever, and Ashby job boards for a watchlist of employers. No scraping, and filters for remote work and job titles.
  • Sends new postings to JobSync through the MCP interface JobSync publishes. JobSync runs unmodified and stays the record of your applications.
  • Makes one AI call per new posting. The model has to fill in a table for the two to four skills that define the role, marking each as demonstrated, transferable, not documented, or a confirmed gap, with a quote as evidence.
  • If the skill the job exists for isn't documented, code caps the rating. The model doesn't get to argue its way past it, and the downgrade is printed so you can see it.
  • "Not documented" is never treated as "you can't do this." Missing evidence is reported as missing evidence.
  • The top few matches get a short company report from web research. Web pages are treated as untrusted: that step has one tool, no credentials, and its output is only ever displayed.
  • A hard daily spending cap is enforced in code. It's plain Python with no dependencies, runs in Docker, and has a demo mode with fictional data so anyone can try it without an API key.

Worth knowing

The README is upfront about what isn't settled yet. How it ranks good matches moved by a band or more between prompt versions, and run-to-run variance hasn't been measured. I'd rather you read that from me than find it yourself.

The repo includes an architecture doc, a testing doc, and an AI governance doc. Credit where it's due: JobSync is Gsync's project, MIT licensed.

An assessment page showing eligibility requirements marked as met, and a table of core competencies, each with a status and quoted evidence from the posting and profile.
Each assessment shows its evidence, so you can check the reasoning instead of trusting a number. Demo data.
The gaps section of an assessment, listing what the posting asks for that the profile doesn't show, along with compensation and workload notes.
Gaps and unknowns are stated plainly. If a posting doesn't list a base salary, it says so instead of guessing. Demo data.