job-scoutlisted
Install: claude install-skill HimadriTrying/ai-job-search-agent
# job-scout — discovery + scoring
## Precedent
Sweeps public ATS APIs (Greenhouse, Lever, Ashby, SmartRecruiters), hard-drops out-of-band
roles before any LLM call, then scores survivors with a cheap model. Cost scales with matches, not listings.
## Data sources (public ATS APIs — no scraping)
Greenhouse, Lever, Ashby, SmartRecruiters each expose public job-listing endpoints. Maintain
a watchlist of target companies (see `data/` — create `watchlist.txt`). A full sweep of ~100
companies takes about a minute.
## Pipeline
1. Sweep the watchlist via ATS APIs → raw listings.
2. **Keyword pre-filter BEFORE any LLM call** — cheap. Drop obviously off-target roles.
3. **Hard drops** from `profile/04-job-evaluation.md`: `min_seniority` (drop below Senior),
hard-cued experience minimums, location, work-auth, excluded industries.
4. Score survivors against the rubric (mostly penalties). Use a cheap model for scoring,
a stronger one only for anything you tailor later — deliberate cost tiering.
5. Sort into **apply first / worth a look / skipped**, one-line reason each.
6. Write a dated digest to `data/digests/YYYY-MM-DD.md` and (if scheduled) commit it.
## Reliability
Malformed scoring output retries once, then marks the role `unscored` rather than crashing
the whole run.
## Mode
Scheduled (daily, cheap, benefits from overnight) via `.github/workflows/daily-scout.yml`,
or on demand when the user asks "what's out there".
## Implementation (built and tested)
Real code lives in `