AI that reads every CV the way you would, faster

Stop reading 1000 CVs.
Read the 30 you would have flagged anyway.

HireScout codifies your job description into a deterministic lens, reads every candidate through it, and shows you the resume passage behind every decision. Override anything you disagree with. Every shortlist defensible from the first screen call to the offer letter.

Source-quoted extraction
what a recruiter sees
years_experience
14
high confidence
Resume passage

“Finance leader with 14 years across SaaS and fintech, including 6 as VP Finance at a Series C company.”

Every extracted value carries the sentence it came from. Click any number, see the source.

The principles

Not an AI hiring tool.
A tool that makes your judgment faster.

Hiring is judgment under uncertainty. The system that wraps that judgment should be deterministic where it can be, transparent everywhere else, and never decide on your behalf.

The lens is yours

Paste a job description, HireScout drafts your scoring categories, extraction schema, and hard filters from it. Every choice carries a one-line rationale citing the JD passage that drove it. You edit anything before locking. The system never decides what matters.

Every value cites a passage

Each extracted field comes with the resume excerpt that produced it, plus a per-field confidence indicator. Click any number, see the sentence it came from. No hallucinations, no “the AI said so” — every recommendation is auditable in two clicks.

Override anything

Disagree with an extraction? Correct it inline with a reason logged. A great candidate failed a hard filter you don't agree with? Bypass the filter with a defensible note. Manual corrections are preserved across re-extraction — your judgment never gets wiped out.

Defensible by default

Every decision — pass, fail, score, override, bypass — has a who / when / why on it. When a partner asks “why this candidate over that one?” you have the answer in the interface. When legal asks for a non-discrimination paper trail, the trail already exists.

The reversal

Test your lens before you connect your ATS.

When a candidate writes a CV for a role, they read the JD, identify the criteria implicitly, and tailor their experience to the language. That is the same operation HireScout does in reverse: from the JD it derives the lens, then can generate synthetic candidate pools from that same lens with deliberate distribution.

Try it with three strong fits, four mixed, three weak — and every candidate's resume is real LLM-written prose with real source-quoted extractions. A controlled stress test of your hiring grammar.

Distribution generator
N = 10
strong3×
100%filters cleared
mid4×
~70%filters cleared
weak3×
~30%filters cleared
Each candidate gets:
  • • A satisfy / violate map per hard filter
  • • A diverse pre-selected name (60+ first / 40+ last pool)
  • • A polished prose resume from the LLM
  • • Real source quotes from re-extraction
How it works

Four steps. The first three are deterministic.

The expensive AI call happens once when you draft the lens. After that, every candidate flows through cheap structured extraction and deterministic filtering before any LLM scoring runs.

  1. 1

    Codify the JD

    HireScout drafts categories, extraction schema, and hard filters from your JD. You review and edit.

  2. 2

    Extract with quotes

    A cheap-tier LLM pulls structured fields from each CV. Every value carries the resume passage that supports it.

  3. 3

    Filter deterministically

    Numbers, booleans, closed taxonomies. Candidates fail or pass on math, not vibes. Bypass with a logged reason.

  4. 4

    Score the survivors

    Only the candidates who clear hard filters reach the expensive scoring pass. Source-quoted, weighted, ranked.

Why this order matters

Most agentic pipelines do everything with the LLM at every step. HireScout splits cleanly: semantic understanding happens once at extraction, deterministic gates run on the structured output, and the expensive scoring only touches survivors. A pipeline of 200 CVs costs roughly a dollar. Decisions stay defensible because the gates are math.

Built for the people who own the decision

What a recruiter sees, in two clicks.

extraction.ts
Source quote per field
years_experience: 14
"Finance leader with 14 years across SaaS and fintech…"
filter.ts
Filter outcomes are explicit
✓ years_experience >= 12
✗ has_active_ca_license
  → JD requires CA license; candidate is licensed in MA only
override.ts
Override anything
Override years_experience: 11 → 14
Reason: Includes IB and audit years from 2007.
Candidate moved to PASSED pile.
live demo · 10 baked scenarios · no signup

The shortlist you walk into the room with
should be one you can defend.

Open any scenario, click a candidate, see how the system read their materials, and decide for yourself.

Start with a scenario